在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

CPK-RA6M4評(píng)估板入門(mén)指南(六)

我快閉嘴 ? 來(lái)源:瑞薩MCU小百科 ? 作者:瑞薩MCU小百科 ? 2022-09-20 14:15 ? 次閱讀

CPK-RA6M4評(píng)估板入門(mén)指南

要點(diǎn)

CPK-RA6M4是用于RA6M4單片機(jī)的評(píng)估板套件。該套件可通過(guò)靈活配置軟件包(FSP)和e2 studio IDE,對(duì)RA6M4 MCU群組的特性進(jìn)行無(wú)縫評(píng)估,并對(duì)嵌入系統(tǒng)應(yīng)用程序進(jìn)行開(kāi)發(fā)。本文檔是《瑞薩RA MCU基礎(chǔ)知識(shí)》的配套文檔,旨在將該指南中有關(guān)硬件操作的部分在CPK-RA6M4評(píng)估板上進(jìn)行實(shí)現(xiàn)。

在使用本文檔之前,推薦您先學(xué)習(xí)《瑞薩RA MCU基礎(chǔ)知識(shí)》,以了解更多關(guān)于RA MCU的基礎(chǔ)知識(shí)以及其他相關(guān)知識(shí),這樣有助于您在本文所述的硬件實(shí)操中更快上手。

開(kāi)發(fā)環(huán)境

e2 studio:2021-04版

FSP:v3.1.0

目錄

首次使用瑞薩CPK-RA6M4評(píng)估板

下載并測(cè)試示例

Hello World! – Hi Blinky!

使用實(shí)時(shí)操作系統(tǒng)

使用“靈活配置軟件包”通過(guò)USB端口發(fā)送數(shù)據(jù)

5. 使用“靈活配置軟件包”通過(guò)USB端口發(fā)送數(shù)據(jù)

本章內(nèi)容基于《瑞薩RA MCU 基礎(chǔ)知識(shí)》中的章節(jié)10使用“靈活配置軟件包”通過(guò)USB端口發(fā)送數(shù)據(jù)所作。

您將在本章中學(xué)到以下內(nèi)容:

如何使用RA產(chǎn)品家族微控制器的“靈活配置軟件包”的中間件來(lái)設(shè)置USB傳輸。

如何在主機(jī)工作站上接收MCU發(fā)送的數(shù)據(jù)。

5.2 創(chuàng)建代碼

現(xiàn)在,添加初始化USB端口和執(zhí)行端口寫(xiě)入所需的代碼。由于本練習(xí)需要輸入大量的內(nèi)容,建議您通過(guò)瑞薩網(wǎng)站從本手冊(cè)對(duì)應(yīng)的網(wǎng)頁(yè)下載該實(shí)驗(yàn)的解決方案,這樣只需按照說(shuō)明進(jìn)行操作,而無(wú)需手動(dòng)輸入代碼。

如果決定自行編寫(xiě)所有內(nèi)容,首先在“Project Explorer”(項(xiàng)目資源管理器)中通過(guò)雙擊打開(kāi)hal_entry.c文件。為了確保程序正常運(yùn)行,需要定義多個(gè)全局變量。首先,在hal_entry()函數(shù)的頭部之前聲明USB驅(qū)動(dòng)程序狀態(tài)的枚舉。其類(lèi)型應(yīng)該是usb_status_t,可以將其命名為usb_event。接下來(lái),添加一個(gè)usb_setup_t類(lèi)型的結(jié)構(gòu)(在r_usb_basic_api.h中進(jìn)行聲明),并將其命名為usb_setup。我們稍后將在解碼某些USB事件時(shí)使用該變量,該變量將在USB事件循環(huán)內(nèi)進(jìn)行初始化。

接下來(lái),我們需要一個(gè)變量來(lái)保存USB模塊的編號(hào)。將其設(shè)置為uint8_t類(lèi)型,命名為g_usb_module_number,并為其賦值“0x00”。最后,聲明類(lèi)型為usb_class_t的USB類(lèi)類(lèi)型的結(jié)構(gòu),將其命名為g_usb_class_type,并為其賦值“0x00”。如果要了解我們使用的各種類(lèi)型的詳細(xì)信息,請(qǐng)參見(jiàn)《Renesas 靈活配置軟件包 (FSP) 用戶(hù)手冊(cè)》,該手冊(cè)可以從FSP的GitHub網(wǎng)站下載。

添加這些內(nèi)容后,此部分代碼現(xiàn)在應(yīng)如下所示:

b0c4e97a-389a-11ed-ba43-dac502259ad0.jpg

我們自己的代碼也依賴(lài)于一些靜態(tài)全局變量。請(qǐng)?zhí)砑拥経SB全局變量下方:

b0dce44e-389a-11ed-ba43-dac502259ad0.jpg

命名為send_str的字符數(shù)組用于保存我們要通過(guò)USB發(fā)送的文本。將其初始化為“LED on ”,因?yàn)閷ED3切換到“ON”后,將首次使用該變量。下一個(gè)變量為sw1_pressed,其類(lèi)型為uint8_t,并需要聲明為volatile,因?yàn)槠渲翟谟脩?hù)按鈕S1(SW1)的回調(diào)例程中將更改為true。默認(rèn)情況下,其值為false,將由IRQ00中斷的回調(diào)例程設(shè)置為true,表示已按下該按鈕,因此通知主程序該事件已發(fā)生。

如果沒(méi)有將該變量聲明為volatile,C編譯器的優(yōu)化程序可能不會(huì)在每次使用該變量時(shí)重新讀取其值,因此hal_entry()內(nèi)部的循環(huán)可能無(wú)法識(shí)別到更改。

第三個(gè)變量用于保存LED3的電平,在啟動(dòng)時(shí)應(yīng)該初始化為BSP_IO_LEVEL_HIGH。每次激活S1(SW1) 時(shí),切換該變量的值。

至此,我們已經(jīng)聲明了所有的全局變量,可以繼續(xù)編寫(xiě)hal_entry()函數(shù)內(nèi)的代碼。首先,我們需要一個(gè)靜態(tài)變量,用于保存虛擬UART 通信端口的設(shè)置,如比特率、停止位和數(shù)據(jù)位的數(shù)量以及奇偶校驗(yàn)類(lèi)型。該變量的類(lèi)型應(yīng)該是usb_pcdc_linecoding_t,建議將其命名為g_line_coding。將“在此添加您自己的代碼”占位符替換為聲明。稍后將在USB事件處理程序循環(huán)中初始化該變量。

b0f8bc50-389a-11ed-ba43-dac502259ad0.jpg

接下來(lái),編寫(xiě)代碼以打開(kāi)并啟用外部IRQ00,將其連接到評(píng)估板的S1。與第4章一樣,使用IRQ FSP驅(qū)動(dòng)程序的相應(yīng)函數(shù):

b113414c-389a-11ed-ba43-dac502259ad0.jpg

啟用中斷后,需要打開(kāi)USB并獲取類(lèi)類(lèi)型和模塊編號(hào)。為此,使用r_usb_basic上的g_basic0 USB驅(qū)動(dòng)程序模塊的相關(guān)函數(shù),并將控制結(jié)構(gòu)傳遞給這些函數(shù),將引用傳遞給配置結(jié)構(gòu)(適用于Open()函數(shù))和相關(guān)的變量。溫馨提示,e2 studio中的代碼補(bǔ)全功能和開(kāi)發(fā)人員幫助可幫助您編寫(xiě)這些代碼行。

b134f4fe-389a-11ed-ba43-dac502259ad0.jpg

中斷和USB端口的初始化現(xiàn)已完成。接下來(lái)編寫(xiě)的所有代碼都應(yīng)該放置在while(1)循環(huán)內(nèi),因?yàn)檫@部分程序?qū)⒀h(huán)執(zhí)行。首先,我們編寫(xiě)用于獲取和處理端口的USB相關(guān)事件的代碼。USB驅(qū)動(dòng)程序關(guān)聯(lián)多個(gè)事件,但為了簡(jiǎn)潔起見(jiàn),僅處理USB_STATUS_REQUEST事件。如果要全面了解事件處理程序,請(qǐng)參見(jiàn)《靈活配置軟件包 (FSP) 用戶(hù)手冊(cè)》中的USB外設(shè)通信設(shè)備類(lèi)(r_usb_pcdc)文檔。在此,可以找到此類(lèi)處理程序的代碼示例以及流程圖。

現(xiàn)在,您的第一個(gè)任務(wù)是通過(guò)調(diào)用R_USB_EventGet()函數(shù)來(lái)初始化usb_event變量,然后編寫(xiě)處理程序,只有發(fā)生USB_STATUS_REQUEST事件時(shí)才能執(zhí)行該處理程序。在if – then – else結(jié)構(gòu)中,首先設(shè)置USB端口,然后確定是否請(qǐng)求線路設(shè)置。如果是,通過(guò)傳遞g_line_coding變量來(lái)配置虛擬UART設(shè)置。

如果否,則查詢(xún)主機(jī)是否要接收UART設(shè)置。如果是,請(qǐng)將其發(fā)送給主機(jī)。最后,如果發(fā)生事件,在此不進(jìn)行處理,直接確認(rèn)。

下面是我們的處理程序版本的完整代碼:

b14d0918-389a-11ed-ba43-dac502259ad0.jpg

可以看到,在處理程序中LINE_CODING_LENGTH出現(xiàn)兩次。由于我們還沒(méi)有定義LINE_CODING_LENGTH的值,請(qǐng)返回到文件的頂部,并將其定義為無(wú)符號(hào)值0x07。

b16eee34-389a-11ed-ba43-dac502259ad0.jpg

返回到while(1)循環(huán)中,添加在激活S1后更改LED3電平的代碼,以sw1_pressed的true值表示。類(lèi)似于第4章中寫(xiě)入的內(nèi)容,但此時(shí)需要將要通過(guò)USB發(fā)送的字符串復(fù)制到send_str變量,并將s1_pressed變量設(shè)置為false:

b180e634-389a-11ed-ba43-dac502259ad0.jpg

最后要添加的代碼是用于外部IRQ00的回調(diào)函數(shù)的代碼。將其放置在hal_entry ()函數(shù)的括號(hào)后面。通過(guò)復(fù)習(xí)第4章,了解回調(diào)函數(shù)的一些詳細(xì)信息。首先,需要導(dǎo)入g_bsp_leds結(jié)構(gòu),并用其初始化我們的本地Leds變量。然后將sw1_pressed設(shè)置為true,表示事件已發(fā)生,接下來(lái)將新值寫(xiě)入引腳寄存器。最后,利用r_usb_basic模塊的R_USB_Write() API,通過(guò)USB端口發(fā)送該字符串。

b1a1d420-389a-11ed-ba43-dac502259ad0.jpg

還記得USB描述符g_usb_descriptor嗎?現(xiàn)在該描述符將發(fā)揮作用。USB需要有關(guān)器件、其配置和供應(yīng)商信息的準(zhǔn)確描述。該文件十分復(fù)雜,具有長(zhǎng)達(dá)484行代碼。有關(guān)該描述符的說(shuō)明,請(qǐng)參閱《FSP用戶(hù)手冊(cè)》的r_usb_basic部分,有關(guān)如何構(gòu)建該描述符的詳細(xì)說(shuō)明,請(qǐng)參見(jiàn)通用串行總線規(guī)范2.0版。

但這里有兩個(gè)捷徑:一個(gè)是在本手冊(cè)的網(wǎng)站上下載本手冊(cè)練習(xí)的源文件。另一個(gè)是使用FSP配置器放置在項(xiàng)目 ra 目錄下的模板。其名稱(chēng)為 r_usb_pcdc_descriptor.c.template,可以在“項(xiàng)目資源管理”中轉(zhuǎn)到ra → fsp → src → r_usb_pcdc文件夾進(jìn)行訪問(wèn)(參見(jiàn)圖5-6)。將該文件復(fù)制到hal_entry.c所在的src文件夾中,并將其重命名為r_usb_descriptor.c。修改供應(yīng)商ID和產(chǎn)品ID,以便與您自己的產(chǎn)品ID相匹配。如果尚未獲得這些數(shù)據(jù),暫時(shí)使用值0x045BU和0x5310U。到這一步已經(jīng)完成了要進(jìn)行的設(shè)置和要編寫(xiě)的代碼。

b1e47cb2-389a-11ed-ba43-dac502259ad0.jpg

圖5-6:FSP配置器自動(dòng)創(chuàng)建USB描述符的模板

最后還需要編譯項(xiàng)目。第一次執(zhí)行此操作需要較長(zhǎng)時(shí)間,因?yàn)樾枰獙?duì)項(xiàng)目中包含的所有FSP模塊的代碼進(jìn)行編譯。在項(xiàng)目編譯完成后,如果沒(méi)有任何錯(cuò)誤和警告,即可連接CPK-RA6M4評(píng)估板并啟動(dòng)調(diào)試會(huì)話。打開(kāi)“Debug”(調(diào)試)透視圖,雙擊“Resume”(恢復(fù))以啟動(dòng)程序。作為快速測(cè)試手段,按一次S1,以查看 用戶(hù)LED(紅色) 是否切換。

5.3 在主機(jī)端設(shè)置接收器

在程序運(yùn)行的情況下,將第二根USB type A Micro-B電纜連接到評(píng)估板的系統(tǒng)控制和生態(tài)系統(tǒng)訪問(wèn)區(qū)域左下方標(biāo)有J9的USB端口。將另一端插入Windows工作站,稍等片刻,直到Windows識(shí)別該電路板,對(duì)其進(jìn)行枚舉并安裝驅(qū)動(dòng)程序。

啟動(dòng)終端仿真器程序。在本練習(xí)的開(kāi)發(fā)過(guò)程中,用到了Tera Term(復(fù)制以下鏈接到瀏覽器中打開(kāi)網(wǎng)頁(yè)訪問(wèn)下載https://ttssh2.osdn.jp/),它是一款非常實(shí)用的工具。在Tera Term中,可以看到列出的CDC串行端口。在圖5-7中顯示為COM3,但在其他PC上可能有所不同。如果不確定,使用 Windows的“Device Manager”(設(shè)備管理器)來(lái)查找電路板所連接的端口。

b204bbd0-389a-11ed-ba43-dac502259ad0.jpg

圖5-7:如果 Windows正確識(shí)別該電路板,它將在Tera Term中列為串行連接

如果沒(méi)有列出該電路板,或者“Device Manager”(設(shè)備管理器)指示錯(cuò)誤,則驅(qū)動(dòng)程序可能有問(wèn)題。請(qǐng)復(fù)制以下鏈接到瀏覽器中打開(kāi),進(jìn)入瑞薩知識(shí)庫(kù)網(wǎng)頁(yè)中了解有關(guān)此主題的最新支持條目以解決此問(wèn)題:

https://en-support.renesas.com/knowledgeBase/18959077

在已建立連接并運(yùn)行Tera Term的情況下,多次按下S1,應(yīng)該可以看到用戶(hù)LED(紅色)切換狀態(tài),其輸出到終端的狀態(tài)如圖5-8所示。

b2296160-389a-11ed-ba43-dac502259ad0.jpg

圖5-8:在傳輸運(yùn)行的情況下,每次按下S1時(shí),終端程序都會(huì)顯示用戶(hù)LED(紅色)的狀態(tài)

b243dd2e-389a-11ed-ba43-dac502259ad0.jpg

b264b1b6-389a-11ed-ba43-dac502259ad0.jpg

b2908c0a-389a-11ed-ba43-dac502259ad0.jpg

您已成功完成本練習(xí)!也完成了CPK-RA6M4評(píng)估板的入門(mén)操作!

本章要點(diǎn)

使用FSP配置器和USB中間件便于增加對(duì)USB端口的支持。

要進(jìn)行USB傳輸,必須具有USB描述符文件。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17869

    瀏覽量

    361112
  • 瑞薩
    +關(guān)注

    關(guān)注

    36

    文章

    22372

    瀏覽量

    87796
  • 評(píng)估板
    +關(guān)注

    關(guān)注

    1

    文章

    708

    瀏覽量

    29985
  • RA6M4
    +關(guān)注

    關(guān)注

    0

    文章

    51

    瀏覽量

    651

原文標(biāo)題:CPK-RA6M4評(píng)估板入門(mén)指南-第5章(2)【完結(jié)篇】

文章出處:【微信號(hào):瑞薩MCU小百科,微信公眾號(hào):瑞薩MCU小百科】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    如何在CPK-RA6M4 MCU評(píng)估上讓RT-Thread運(yùn)行起來(lái)

    1、CPK-RA6M4 開(kāi)發(fā)特點(diǎn)基于瑞薩RA6M4 MCU開(kāi)發(fā)的CPK-RA6M4 MCU評(píng)估
    發(fā)表于 07-13 11:28

    基于RT-Thread Studio的CPK-RA6M4開(kāi)發(fā)環(huán)境搭建方案推薦

    1、基于RT-Thread Studio的CPK-RA6M4開(kāi)發(fā)環(huán)境搭建CPK-RA6M4 開(kāi)發(fā)特點(diǎn)基于瑞薩RA6M4 MCU開(kāi)發(fā)的
    發(fā)表于 07-14 17:45

    Renesas CPK-RA6M4開(kāi)發(fā)之SDIO模塊評(píng)測(cè)

    群組設(shè)計(jì)的一款中國(guó)本地評(píng)估。如下圖所示:圖1 CPK-RA6M4開(kāi)發(fā)板載資源相對(duì)來(lái)說(shuō)也比較豐富了:板載MCU為:R7FA
    發(fā)表于 07-21 11:14

    CPK-RA6M4開(kāi)發(fā)通過(guò)串口和ESP8266使用AT命令的聯(lián)網(wǎng)測(cè)試

    串口也是比較常用的外設(shè),應(yīng)用也比較簡(jiǎn)單,具體的外設(shè)功能描述也不多講什么了。下面只講如何使用CPK-RA6M4開(kāi)發(fā)通過(guò)串口連接esp8266(esp-01s)使用AT命令聯(lián)網(wǎng)。評(píng)測(cè)步驟:1.打開(kāi)
    發(fā)表于 07-21 16:29

    CPK-RA6M4開(kāi)發(fā)的RTC和WatchDog模塊評(píng)測(cè)

    本次評(píng)測(cè)的開(kāi)發(fā)為Renesas的CPK-RA6M4開(kāi)發(fā),它是一款Renesas官方基于RA6M4 MCU群組設(shè)計(jì)的一款中國(guó)本地評(píng)估
    發(fā)表于 08-22 16:46

    基于 RT-Thread Studio的CPK-RA6M4 開(kāi)發(fā)環(huán)境搭建

    1. CPK-RA6M4 開(kāi)發(fā)特點(diǎn)基于瑞薩RA6M4 MCU開(kāi)發(fā)的CPK-RA6M4 MCU評(píng)估
    發(fā)表于 01-10 14:41

    CPK-RA6M4評(píng)估入門(mén)指南(一)

    檔是《瑞薩RA MCU基礎(chǔ)知識(shí)》的配套文檔,旨在將該指南中有關(guān)硬件操作的部分在CPK-RA6M4評(píng)估上進(jìn)行實(shí)現(xiàn)。
    的頭像 發(fā)表于 09-16 12:48 ?1859次閱讀

    CPK-RA6M4評(píng)估入門(mén)指南(四)

    檔是《瑞薩RA MCU基礎(chǔ)知識(shí)》的配套文檔,旨在將該指南中有關(guān)硬件操作的部分在CPK-RA6M4評(píng)估上進(jìn)行實(shí)現(xiàn)。
    的頭像 發(fā)表于 09-20 14:10 ?1817次閱讀

    CPK-RA6M4評(píng)估入門(mén)指南(五)

    檔是《瑞薩RA MCU基礎(chǔ)知識(shí)》的配套文檔,旨在將該指南中有關(guān)硬件操作的部分在CPK-RA6M4評(píng)估上進(jìn)行實(shí)現(xiàn)。
    的頭像 發(fā)表于 09-20 14:13 ?2847次閱讀

    【開(kāi)發(fā)評(píng)測(cè)】Renesas RA6M4開(kāi)發(fā)之SDIO(SDHI)

    本次評(píng)測(cè)的開(kāi)發(fā)為Renesas的CPK-RA6M4開(kāi)發(fā),它是一款Renesas官方基于RA6M4 MCU群組設(shè)計(jì)的一款中國(guó)本地評(píng)估
    的頭像 發(fā)表于 12-27 13:15 ?3204次閱讀

    基于RT-Thread Studio的CPK-RA6M4開(kāi)發(fā)環(huán)境搭建

    基于瑞薩RA6M4 MCU開(kāi)發(fā)的CPK-RA6M4 MCU評(píng)估 ,通過(guò) 靈活配置軟件包和IDE,可幫助用戶(hù)對(duì)RA6M4 MCU 群組的特性
    的頭像 發(fā)表于 01-10 14:56 ?1662次閱讀
    基于RT-Thread Studio的<b class='flag-5'>CPK-RA6M4</b>開(kāi)發(fā)<b class='flag-5'>板</b>環(huán)境搭建

    CPK-RA6M4 快速入門(mén)指南

    CPK-RA6M4 快速入門(mén)指南
    發(fā)表于 01-30 19:01 ?0次下載
    <b class='flag-5'>CPK-RA6M4</b> 快速<b class='flag-5'>入門(mén)</b><b class='flag-5'>指南</b>

    CPK-RA6M4 用戶(hù)手冊(cè)

    CPK-RA6M4 用戶(hù)手冊(cè)
    發(fā)表于 02-02 19:06 ?0次下載
    <b class='flag-5'>CPK-RA6M4</b> 用戶(hù)手冊(cè)

    CPK-RA6M4 快速入門(mén)指南

    CPK-RA6M4 快速入門(mén)指南
    發(fā)表于 07-03 20:39 ?0次下載
    <b class='flag-5'>CPK-RA6M4</b> 快速<b class='flag-5'>入門(mén)</b><b class='flag-5'>指南</b>

    CPK-RA6M4 用戶(hù)手冊(cè)

    CPK-RA6M4 用戶(hù)手冊(cè)
    發(fā)表于 07-04 18:52 ?0次下載
    <b class='flag-5'>CPK-RA6M4</b> 用戶(hù)手冊(cè)
    主站蜘蛛池模板: 国产在线欧美精品卡通动漫 | 欧美一级日韩一级亚洲一级 | 夜夜爽夜夜爽 | 一级特一级特色生活片 | 毛片在线网 | 亚洲 [12p]| 久久精品视频观看 | 天堂最新版资源www在线 | 婷婷在线综合 | 精品欧美小视频在线观看 | 黄色视屏免费在线观看 | 美女免费黄 | 国产色系视频在线观看免费 | 日木69xxxhd | 伊人网大香 | 狠狠干天天射 | 午夜快播| 高h办公室| 高清国产美女在线观看 | av网址在线看 | 天天插日日插 | 免费免费啪视频视频观看 | 综合爱| 操的好爽 | 日本黄色片段 | 天天射天天射天天干 | 绝色村妇的泛滥春情 | 在线 | 一区二区三区 | 久久国产美女免费观看精品 | 天天射天天搞 | 伊人不卡久久大香线蕉综合影院 | 亚洲性人人天天夜夜摸 | 丁香八月婷婷 | 四虎影视国产精品 | 午夜黄色小视频 | 日韩免费一级 | 天天摸天天碰中文字幕 | 日本v片免费一区二区三区 日本www.色 日本wwwwww | 色在线国产 | 人人干视频 | 69自拍视频 |