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

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

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

N32L40XCL-STB開發(fā)板模塊評測任務(wù)大挑戰(zhàn)之UART

冬至子 ? 來源:yangqiuqiang ? 作者:yangqiuqiang ? 2023-08-09 15:25 ? 次閱讀

本文主要對通過RT-Thread Studio對國民技術(shù)開發(fā)板N32L40XCL-STB 進(jìn)行UART外設(shè)配置,實(shí)現(xiàn)開發(fā)板串口功能。

1.開發(fā)前準(zhǔn)備:
1.1開發(fā)環(huán)環(huán)境:RT-Thread Studio(官網(wǎng)下載
1.2開發(fā)板:N32L40XCL-STB 開發(fā)板(板載調(diào)試器,也可使用常用的ST-link下載)
1.3環(huán)境配置:下載SDK支持包(這里其它測評任務(wù)已有詳細(xì)的說明,不在贅述)

1.4國民技術(shù)產(chǎn)品資料下載FTP訪問地址 選擇對應(yīng)型號資料下載

2.具體步驟

2.1 點(diǎn)擊文件新建RT-Thread項(xiàng)目選擇基于開發(fā)板,配置界面如下

1.jpg

初始化界面代碼如下

#include
#include
#include
/* defined the LED3 pin: PB5 /
#define LED3_PIN GET_PIN(B, 5)
int main(void)
{
/
set LED3 pin mode to output */
rt_pin_mode(LED3_PIN, PIN_MODE_OUTPUT);
while (1)
{
rt_pin_write(LED3_PIN, PIN_HIGH);
rt_thread_mdelay(500);
rt_pin_write(LED3_PIN, PIN_LOW);
rt_thread_mdelay(500);
}
}

UART具體操作函數(shù):

1.jpg

2.2修改添加一下代碼后編譯下載:

#include
#define DBG_TAG "main"
#define DBG_LVL DBG_LOG
#include
#include
rt_device_t dev_usart1;
struct rt_semaphore sem;
rt_thread_t thread;
struct serial_configure u1_configs = RT_SERIAL_CONFIG_DEFAULT;
rt_err_t rx_callback(rt_device_t dev, rt_size_t size)
{
rt_sem_release(&sem);
return RT_EOK;
}
void serial_thread_entry(void *parameter)
{
char buffer;
while(1){
while(rt_device_read(dev_usart1, 0, &buffer, 1) != 1){
rt_sem_take(&sem, RT_WAITING_FOREVER);
}
rt_kprintf("%c",buffer);
}
}
int main(void)
{
rt_err_t ret = 0;
//查找設(shè)備
dev_usart1 = rt_device_find("uart1");
if(dev_usart1 == RT_NULL){
LOG_E("rt_device_find[uart1] failed...n");
// return -EINVAL;
}
//打開設(shè)備
ret = rt_device_open(dev_usart1, RT_DEVICE_OFLAG_RDWR|RT_DEVICE_FLAG_INT_RX);
if(ret < 0){
LOG_E("rt_device_open[uart1] failed...n");
return ret;
}
rt_device_control(dev_usart1, RT_DEVICE_CTRL_CONFIG, (void *)&u1_configs); //控制設(shè)備
rt_device_set_rx_indicate(dev_usart1, rx_callback); //設(shè)置回調(diào)函數(shù)
rt_sem_init(&sem,"rx_sem", 0, RT_IPC_FLAG_FIFO); //信號量初始化
thread = rt_thread_create("dev_usart1",serial_thread_entry , 0, 1024, 10, 5); //創(chuàng)建線程
rt_thread_startup(thread); //啟動(dòng)線程
rt_device_write(dev_usart1, 0, "rt-thread usart testrn", rt_strlen("rt-thread usart testrn")); //串口發(fā)送函數(shù)
return RT_EOK;
}

3.結(jié)果編譯(使用RT-Thread Studio 自帶串口終端工具查看結(jié)果)

1.jpg

心得體會(huì):RT-Thread studio 提供了很多SDK支持包環(huán)境友好,之后還會(huì)用它和其它開發(fā)板做更多的嘗試。

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

    關(guān)注

    1

    文章

    297

    瀏覽量

    23629
  • PIN管
    +關(guān)注

    關(guān)注

    0

    文章

    36

    瀏覽量

    6301
  • FIFO存儲(chǔ)
    +關(guān)注

    關(guān)注

    0

    文章

    103

    瀏覽量

    5953
  • UART接口
    +關(guān)注

    關(guān)注

    0

    文章

    124

    瀏覽量

    15234
  • RT-Thread
    +關(guān)注

    關(guān)注

    31

    文章

    1249

    瀏覽量

    39723
收藏 人收藏

    評論

    相關(guān)推薦

    N32L40XCL-STB開發(fā)板模塊UART評測

    本章通過RT-Thread Studio配置片上外設(shè)UART的功能,實(shí)現(xiàn)開發(fā)板和PC進(jìn)行通信。
    的頭像 發(fā)表于 08-10 16:52 ?1119次閱讀
    <b class='flag-5'>N32L40XCL-STB</b><b class='flag-5'>開發(fā)板</b><b class='flag-5'>模塊</b><b class='flag-5'>之</b><b class='flag-5'>UART</b><b class='flag-5'>評測</b>

    N32L43XCL-STB開發(fā)板硬件使用手冊

    N32L43XCL-STB開發(fā)板用于國民技術(shù)股份有限公司高性能32位N32L43XCL系列芯片的樣片開發(fā)。本文檔詳細(xì)描述了N32L43XCL-STB
    發(fā)表于 11-02 08:10

    N32L40XCL-STB開發(fā)板硬件使用手冊

    N32L40XCL-STB開發(fā)板用于國民技術(shù)股份有限公司高性能32位N32L40XCL系列芯片的樣片開發(fā)。本文檔詳細(xì)描述了N32L40XCL-STB
    發(fā)表于 11-02 06:35

    國民技術(shù)N32G45XCL-STB開發(fā)板資料

    國民技術(shù)N32G45XCL-STB開發(fā)板原理圖資料
    發(fā)表于 11-07 15:12 ?7次下載

    國民技術(shù)N32G43XCL-STB開發(fā)板資料

    國民技術(shù)N32G43XCL-STB開發(fā)板資料
    發(fā)表于 11-07 15:30 ?13次下載

    N32G45XCL-STB (LQFP48)開發(fā)板

    N32G45XCL-STB (LQFP48)開發(fā)板
    發(fā)表于 11-10 19:51 ?0次下載
    <b class='flag-5'>N32G45XCL-STB</b> (LQFP48)<b class='flag-5'>開發(fā)板</b>

    N32G45XCL-STB (LQFP48) 開發(fā)板

    N32G45XCL-STB (LQFP48) 開發(fā)板
    發(fā)表于 11-10 19:51 ?0次下載
    <b class='flag-5'>N32G45XCL-STB</b> (LQFP48) <b class='flag-5'>開發(fā)板</b>

    N32G43XCL-STB (LQFP48) 開發(fā)板

    N32G43XCL-STB (LQFP48) 開發(fā)板
    發(fā)表于 11-10 19:51 ?0次下載
    <b class='flag-5'>N32G43XCL-STB</b> (LQFP48) <b class='flag-5'>開發(fā)板</b>

    N32L43XCL-STB (LQFP48) 開發(fā)板

    N32L43XCL-STB (LQFP48) 開發(fā)板
    發(fā)表于 11-10 19:51 ?4次下載
    <b class='flag-5'>N32L43XCL-STB</b> (LQFP48) <b class='flag-5'>開發(fā)板</b>

    N32L40XCL-STB (LQFP48) 開發(fā)板

    N32L40XCL-STB (LQFP48) 開發(fā)板
    發(fā)表于 11-10 19:51 ?3次下載
    <b class='flag-5'>N32L40XCL-STB</b> (LQFP48) <b class='flag-5'>開發(fā)板</b>

    N32G43XCL-STB (LQFP48) 開發(fā)板

    N32G43XCL-STB (LQFP48) 開發(fā)板
    發(fā)表于 11-10 19:51 ?1次下載
    <b class='flag-5'>N32G43XCL-STB</b> (LQFP48) <b class='flag-5'>開發(fā)板</b>

    N32L40XCL-STB 開發(fā)板模塊評測任務(wù)挑戰(zhàn)

    評測任務(wù)挑戰(zhàn)活動(dòng),讓開發(fā)者小伙伴們互相協(xié)作,對開發(fā)板的每個(gè)模塊功能進(jìn)行
    的頭像 發(fā)表于 03-28 03:25 ?802次閱讀

    N32L40XCL-STB開發(fā)板模塊評測任務(wù)挑戰(zhàn)-測試CAN

    選擇下載了N32L40XXX_V2.1.0.zip資料包后,解壓得到官方Demo,數(shù)據(jù)手冊,評估,軟件開發(fā)套件,應(yīng)用筆記,測試資料等等。
    的頭像 發(fā)表于 08-16 16:15 ?1082次閱讀
    <b class='flag-5'>N32L40XCL-STB</b><b class='flag-5'>開發(fā)板</b><b class='flag-5'>模塊</b><b class='flag-5'>評測</b><b class='flag-5'>任務(wù)</b>大<b class='flag-5'>挑戰(zhàn)</b>-測試CAN

    國民技術(shù)N32G45XCL-STB_(LQFP48)_開發(fā)板

    國民技術(shù)N32G45XCL-STB_(LQFP48)_開發(fā)板
    發(fā)表于 10-18 16:13 ?0次下載

    國民技術(shù)N32G45XCL-STB_(LQFP48)開發(fā)板

    國民技術(shù)N32G45XCL-STB_(LQFP48)開發(fā)板
    發(fā)表于 10-18 16:13 ?2次下載