本文來源電子發(fā)燒友社區(qū),作者:許鵬虎, 帖子地址:https://bbs.elecfans.com/jishu_2292909_1_1.html
前言
UCM200和UCM202都是一顆內(nèi)置了MCU和射頻前端的模組,他們都支持二次開發(fā)。但是ucchip將射頻部分都封裝起來以lib庫的形式提供給用戶開發(fā),在一定程度上會使得開發(fā)不那么方便,也不能完全釋放射頻的性能。但是基礎(chǔ)的外設(shè)都是開放的,對于一些常見的場合,客戶完全可以使用一個模組來完成全部的項目開發(fā)。
源碼地址如下:
開發(fā)環(huán)境準(zhǔn)備&編譯
之前的文章,已經(jīng)詳細(xì)介紹了IDE的安裝和使用,這里不再過多贅述。下載完源碼后,找到根目錄下的rtconfig.py文件,確定這里的路徑和你的IDE編譯工具鏈的位置是否一致,如果不一致則需要更改。
EXEC_PATH = r'D:/Program Files (x86)/UCCHIP_IDE/riscv-gnu-toolchain/bin/'
然后直接使用rt-thread env工具編譯項目,關(guān)于rt-thread env的使用,請參考這里。
編譯完成后會生成.elf可執(zhí)行文件:
LINK rtthread.elf
riscv32-unknown-elf-size rtthread.elf
text data bss dec hex filename
227068 3688 10532 241288 3ae88 rtthread.elf
同時會接著執(zhí)行一些flash相關(guān)的指令,我們繼續(xù)分析rtconfig.py接下來的代碼
POST_ACTION = SIZE + ' $TARGETn'
POST_ACTION += 'packages/current_version.exe PS/app/include/uc_wiota_version.h' + 'n'
#POST_ACTION += 'riscv32-unknown-elf-objdump -d rtthread.elf > rtthread.asm' + 'n'
POST_ACTION += 'bintools.exe -u $TARGET ' + TARGET_NAME + 'n'
POST_ACTION += 'cp -f flat.bin ' + TARGET_NAME + 'n'
POST_ACTION += 'rm -f flat.bin n'
這里是一些和芯片相關(guān)的操作,應(yīng)該是生成特定的bin文件。同時這里應(yīng)該也加了一個bootloader固件進(jìn)去,這個bootloader可以使用ymodem來更新固件。
接著就在根目錄生成了rtthread.bin固件。
燒錄
將根目錄生成的rtthread.bin固件通過下載工具燒錄到開發(fā)板即可,具體的燒錄工具請聯(lián)系ucchip提供。
運(yùn)行&&調(diào)試
燒錄完成后,按下復(fù)位按鍵即可運(yùn)行。和燒錄器在一起的那個串口是UART0,這里用作AT口
AT口是UART0 115200 8N1
debug口是UART1 406800 8N1
從GitHub下載下來的代碼,模式運(yùn)行的就是AT固件,所以調(diào)試方法和之前的AT固件調(diào)試一樣,這里不再過多贅述。
二次開發(fā)
- 首先將main.c里面的代碼全都刪除干凈,只跑一個led燈閃爍的代碼
#include
#include
#include
#include "uc_wiota_api.h"
/* defined the LED0 pin */
#define LED0_PIN 2
int main(void)
{
/* set LED0 pin mode to output */
rt_pin_mode(LED0_PIN, PIN_MODE_OUTPUT);
app_task_init();
while (1) {
rt_pin_write(LED0_PIN, PIN_HIGH);
rt_thread_mdelay(1000);
rt_pin_write(LED0_PIN, PIN_LOW);
rt_thread_mdelay(1000);
}
}
-
編譯下載燒錄運(yùn)行,如果led燈正常閃爍,則說明最小系統(tǒng)是正常的,接著進(jìn)行第三步
-
分析AT指令的執(zhí)行順序,每個AT指令都有對應(yīng)的函數(shù)調(diào)用,我們只需要將對應(yīng)的函數(shù)放在main.c里面調(diào)用即可完成一個基本的wiota的測試
-
按照上面的步驟完成wiota函數(shù)調(diào)用后,一個基本的測試demo即開發(fā)完成,燒錄運(yùn)行后可以配合AP的AT固件來做一個調(diào)試
-
AP的二次開發(fā)流程同設(shè)備端
-
御芯微
+關(guān)注
關(guān)注
4文章
57瀏覽量
3339
發(fā)布評論請先 登錄
相關(guān)推薦
TSW14J56EVM板卡提供二次開發(fā)的接口怎么使用的?
SOLIDWORKS二次開發(fā)參數(shù)化設(shè)計工具? 慧德敏學(xué)
SOLIDWORKS二次開發(fā)應(yīng)用范圍與實例
【正點原子STM32H7R3開發(fā)套件試用體驗】開發(fā)套件開箱報告
可以改TSW1405內(nèi)部程序或者是修改HSDC PRO的程序做二次開發(fā)嗎?
什么~FPGA可以自行二次開發(fā)了?
![什么~FPGA可以自行<b class='flag-5'>二次開發(fā)</b>了?](https://file1.elecfans.com/web1/M00/F2/D9/wKgaoWcMy8aAIvSZAAXSQhU_BoM587.png)
Gokit二次開發(fā):云端快速APP生成
![Gokit<b class='flag-5'>二次開發(fā)</b>:云端快速APP生成](https://file.elecfans.com/web2/M00/40/03/pYYBAGJrSWqAb-nSAAAXmKtCFeo833.jpg)
ARMxy ARM工業(yè)邊緣計算網(wǎng)關(guān)帶Ubuntu OS支持二次開發(fā)
![ARMxy ARM工業(yè)邊緣計算網(wǎng)關(guān)帶Ubuntu OS支持<b class='flag-5'>二次開發(fā)</b>](https://file1.elecfans.com/web2/M00/03/58/wKgZombC9BaAMcd5AABD4L5M8wo809.png)
【xG24 Matter開發(fā)套件試用體驗】+開機(jī)啟動
如何使用wifi進(jìn)行自組網(wǎng)開發(fā)?
5G千兆雙核物聯(lián)網(wǎng)模塊 OpenWrt二次開發(fā)
![5G千兆雙核物聯(lián)網(wǎng)模塊 OpenWrt<b class='flag-5'>二次開發(fā)</b>](https://file1.elecfans.com/web2/M00/EC/13/wKgaomZdX2CAAV7fAAKGNC2I66Y186.png)
發(fā)力萬物智聯(lián),御芯微官宣7款WIoTa方案產(chǎn)品助力產(chǎn)業(yè)升級
![發(fā)力萬物智聯(lián),<b class='flag-5'>御</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>官宣7款<b class='flag-5'>WIoTa</b>方案產(chǎn)品助力產(chǎn)業(yè)升級](https://file1.elecfans.com/web2/M00/E3/7B/wKgZomY8onWAP9WHAACSHm67eh8767.jpg)
御芯微攜合作伙伴發(fā)布新款RFID模組和7款WIoTa方案產(chǎn)品
![<b class='flag-5'>御</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>攜合作伙伴發(fā)布新款RFID模組和7款<b class='flag-5'>WIoTa</b>方案產(chǎn)品](https://file1.elecfans.com/web2/M00/C8/9D/wKgZomYdH0uACivHAAsIATr4VEY692.png)
評論