色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

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

基于RA2L1實現(xiàn)串口DTC數(shù)據(jù)接收

瑞薩MCU小百科 ? 來源:瑞薩MCU小百科 ? 2023-05-04 10:50 ? 次閱讀

介紹

開發(fā)環(huán)境:IAR FOR ARM 9.30.1

RASC V4.3.0

芯片型號:R7FA2L1AB2DFL#AA0

功能描述

在串口+DTC功能時無法得知接收一幀數(shù)據(jù)是否接收結(jié)束。本例程配合ELC功能聯(lián)動定時器來判斷串口接收字節(jié)與字節(jié)之間超時來判斷一幀數(shù)據(jù)的接收完成。

主要內(nèi)容

1新建RASC工程

RASC v4.3.0下載鏈接:

https://github.com/renesas/fsp/releases

如下圖所示:

dfd44254-e71f-11ed-ab56-dac502259ad0.png

2安裝好RASC

默認安裝目錄:

C:RenesasRAsc_v2023-01_fsp_v4.3.0

雙擊dfe5afd0-e71f-11ed-ab56-dac502259ad0.png?運行RASC

dff0512e-e71f-11ed-ab56-dac502259ad0.png

3打開后如下圖所示:

dff98b90-e71f-11ed-ab56-dac502259ad0.png

4新建工程

e0048b8a-e71f-11ed-ab56-dac502259ad0.pnge012d24e-e71f-11ed-ab56-dac502259ad0.pnge0225e62-e71f-11ed-ab56-dac502259ad0.pnge02dd81e-e71f-11ed-ab56-dac502259ad0.pnge037ea34-e71f-11ed-ab56-dac502259ad0.png

5配置串口PIN腳功能

e044378a-e71f-11ed-ab56-dac502259ad0.png

6添加串口功能

e066db00-e71f-11ed-ab56-dac502259ad0.png

7添加串口dtc收發(fā)功能

e06ff82a-e71f-11ed-ab56-dac502259ad0.pnge07a4cee-e71f-11ed-ab56-dac502259ad0.png

8配置串口屬性

e08194a4-e71f-11ed-ab56-dac502259ad0.pnge08e2994-e71f-11ed-ab56-dac502259ad0.png

9添加定時器

e098d560-e71f-11ed-ab56-dac502259ad0.png

10配置定時器

這里以超時時間為2ms為例,用戶可以根據(jù)實際情況超時時間。

e0a90836-e71f-11ed-ab56-dac502259ad0.pnge0c04b0e-e71f-11ed-ab56-dac502259ad0.pnge0caf0fe-e71f-11ed-ab56-dac502259ad0.png

11添加ELC

e0d50f30-e71f-11ed-ab56-dac502259ad0.png

12所需外設(shè)都已經(jīng)配置好,生成IAR工程

e0ef3608-e71f-11ed-ab56-dac502259ad0.png

13打開IAR工程

e0fc28fe-e71f-11ed-ab56-dac502259ad0.png

14在hal_entry.c文件添加如下代碼:

#define TRANSFER_LENGTH     512
transfer_properties_t uart0_dtcinfo1;


typedef struct sf_uart_conf
{
  uint8_t uart_txflag;                //發(fā)送標(biāo)志
  uint8_t uart_rxflag;                //接收標(biāo)志
  uint16_t uart_txlen;                //發(fā)送長度
  uint16_t uart_rxlen;                //接收長度
  uint8_t uart_rxbuf[TRANSFER_LENGTH];        //接收buf
  uint8_t uart_txbuf[TRANSFER_LENGTH];        //發(fā)送buf
} sf_uart_conf_t;


sf_uart_conf_t uart0;
//2ms定時器0回調(diào)函數(shù)
void uart0_rxtimeout_cb( timer_callback_args_t* p_args )
{
  if ( TIMER_EVENT_CYCLE_END == p_args->event )
  {
    //關(guān)定時器0
    ( void ) R_GPT_Stop( &g_timer0_ctrl );
    //獲取串口0 接收DTC信息
    R_DTC_InfoGet( &g_transfer1_ctrl, &uart0_dtcinfo1 );
    //計算串口0接收長度
    uart0.uart_rxlen = TRANSFER_LENGTH - uart0_dtcinfo1.transfer_length_remaining;
    //置發(fā)送標(biāo)志
    uart0.uart_rxflag = 1;
  }
}
//串口中斷回調(diào)函數(shù)
void uart0isr_cb( uart_callback_args_t* p_args )
{
  /* Handle the UART event */
  switch ( p_args->event )
  {
    /* Received a character */
    case UART_EVENT_RX_CHAR:
      {
        break;
      }
    /* Receive complete */
    case UART_EVENT_RX_COMPLETE:
      {
        break;
      }
    /* Transmit complete */
    case UART_EVENT_TX_COMPLETE:
      {
       //置串口0發(fā)送完成標(biāo)志,清接收標(biāo)志
        uart0.uart_rxflag = 0;
        uart0.uart_txflag = 1;
        break;
      }
    default:
      {
      }
  }
}
void hal_entry(void)
{
 /* TODO: add your own code here */
 //初始化定時器0 2ms間隔中斷
  R_GPT_Open( &g_timer0_ctrl, &g_timer0_cfg );
  //初始化串口0
  R_SCI_UART_Open( &g_uart0_ctrl, &g_uart0_cfg );
  //初始化ELC聯(lián)動
  R_ELC_Open( &g_elc_ctrl, &g_elc_cfg );
  //使能ECL
  R_ELC_Enable( &g_elc_ctrl );
  //使能定時器0
  ( void ) R_GPT_Enable( &g_timer0_ctrl );
  //智串口0發(fā)送標(biāo)志
  uart0.uart_txflag = 1;
  while ( true )
  {
    if ( uart0.uart_rxflag )
    {
      uart0.uart_rxflag = 0;
      uart0.uart_txlen = uart0.uart_rxlen;
      R_SCI_UART_Write( &g_uart0_ctrl, uart0.uart_rxbuf, uart0.uart_txlen );
    }
    if ( uart0.uart_txflag )
    {
      uart0.uart_txflag = 0;
      R_SCI_UART_Read( &g_uart0_ctrl, uart0.uart_rxbuf, TRANSFER_LENGTH );
    }
  }
#if BSP_TZ_SECURE_BUILD
  /* Enter non-secure code */
  R_BSP_NonSecureEnter();
#endif
}

15

仿真測試如下圖所示:

e105774c-e71f-11ed-ab56-dac502259ad0.png

結(jié)論

該方式?jīng)]有問題,可以正常應(yīng)用到開發(fā)中。

審核編輯:湯梓紅

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

    關(guān)注

    134

    文章

    9217

    瀏覽量

    371168
  • 定時器
    +關(guān)注

    關(guān)注

    23

    文章

    3259

    瀏覽量

    115923
  • IAR
    IAR
    +關(guān)注

    關(guān)注

    5

    文章

    361

    瀏覽量

    36912
  • 串口
    +關(guān)注

    關(guān)注

    14

    文章

    1572

    瀏覽量

    77705
  • 數(shù)據(jù)接收
    +關(guān)注

    關(guān)注

    0

    文章

    12

    瀏覽量

    7851

原文標(biāo)題:基于RA2L1實現(xiàn)串口DTC數(shù)據(jù)接收

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

收藏 人收藏

    評論

    相關(guān)推薦

    【瑞薩**RA2L1入門學(xué)習(xí)】+**UART測試實驗

    【瑞薩RA2L1入門學(xué)習(xí)】+UART測試實驗 本篇文章主要介紹如何使用e2studio對瑞薩單片機進行USART通過定時器中斷方式接收不定長數(shù)據(jù)實驗。 硬件準(zhǔn)備:這里我準(zhǔn)備的是芯片型
    發(fā)表于 03-09 15:45

    瑞薩電子RA2L1英文數(shù)據(jù)手冊

    本資料包含瑞薩電子RA2L1英文數(shù)據(jù)手冊
    發(fā)表于 10-21 16:21 ?0次下載

    RA2L1硬件用戶手冊(中英)

    RA2L1硬件用戶手冊(中英)
    發(fā)表于 11-07 19:49 ?7次下載
    <b class='flag-5'>RA2L1</b>硬件用戶手冊(中英)

    RA2L1開發(fā)板資料

    RA2L1開發(fā)板資料
    發(fā)表于 11-07 19:50 ?19次下載
    <b class='flag-5'>RA2L1</b>開發(fā)板資料

    基于RA2L1串口及J-Link的燒寫說明

    使用串口和J-Link對RA2L1燒寫程序 本節(jié)介紹使用串口工具對RA2L1進行程序的燒寫。采用CPK-RA2L1開發(fā)板,硬件如下圖所示。
    的頭像 發(fā)表于 11-25 12:40 ?1737次閱讀

    基于RA2L1串口及J-Link的燒寫說明

    本節(jié)介紹使用串口工具對RA2L1進行程序的燒寫。采用CPK-RA2L1開發(fā)板,硬件如下圖所示。
    的頭像 發(fā)表于 11-25 13:55 ?1917次閱讀

    RA2L1 組用戶手冊:硬件

    RA2L1 組用戶手冊:硬件
    發(fā)表于 01-09 19:06 ?5次下載
    <b class='flag-5'>RA2L1</b> 組用戶手冊:硬件

    RA2L1數(shù)據(jù)

    RA2L1數(shù)據(jù)
    發(fā)表于 01-09 19:06 ?0次下載
    <b class='flag-5'>RA2L1</b> 組<b class='flag-5'>數(shù)據(jù)</b>表

    RA2L1 組電容式觸控評估系統(tǒng)快速入門指南

    RA2L1 組電容式觸控評估系統(tǒng)快速入門指南
    發(fā)表于 02-03 19:24 ?0次下載
    <b class='flag-5'>RA2L1</b> 組電容式觸控評估系統(tǒng)快速入門指南

    RA2L1 組用戶手冊:硬件

    RA2L1 組用戶手冊:硬件
    發(fā)表于 06-30 18:50 ?1次下載
    <b class='flag-5'>RA2L1</b> 組用戶手冊:硬件

    RA2L1數(shù)據(jù)

    RA2L1數(shù)據(jù)
    發(fā)表于 06-30 18:50 ?2次下載
    <b class='flag-5'>RA2L1</b> 組<b class='flag-5'>數(shù)據(jù)</b>表

    RA2L1 組 Capacitive Touch Evaluation System 用戶手冊

    RA2L1 組 Capacitive Touch Evaluation System 用戶手冊
    發(fā)表于 07-04 20:38 ?2次下載
    <b class='flag-5'>RA2L1</b> 組 Capacitive Touch Evaluation System 用戶手冊

    基于RA2L1串口及J-Link的燒寫說明

    基于RA2L1串口及J-Link的燒寫說明
    的頭像 發(fā)表于 08-19 08:08 ?739次閱讀
    基于<b class='flag-5'>RA2L1</b>的<b class='flag-5'>串口</b>及J-Link的燒寫說明

    基于RA2L1實現(xiàn)串口DTC數(shù)據(jù)接收

    基于RA2L1實現(xiàn)串口DTC數(shù)據(jù)接收
    的頭像 發(fā)表于 10-10 09:34 ?694次閱讀
    基于<b class='flag-5'>RA2L1</b><b class='flag-5'>實現(xiàn)</b><b class='flag-5'>串口</b><b class='flag-5'>DTC</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>接收</b>

    瑞薩RA2L1系列CAN通信應(yīng)用

    瑞薩RA2L1系列CAN通信應(yīng)用
    的頭像 發(fā)表于 06-26 08:06 ?792次閱讀
    瑞薩<b class='flag-5'>RA2L1</b>系列CAN通信應(yīng)用
    主站蜘蛛池模板: 处88XXX | 亚洲三级在线中文字幕 | 久久AAAA片一区二区 | 囯产精品久久久久久久久免费蜜桃 | 怡春院欧美一区二区三区免费 | 2021自产拍在线观看视频 | 九九热在线观看视频 | 处初女处夜情视频在线播放 | 国产精品A久久777777 | 国产成人欧美日韩在线电影 | 亚洲 自拍 欧洲 视频二区 | 日韩欧美一区二区三区在线 | 欧美gay老头互吃 | 色欲午夜无码久久久久久 | 视频一区国产在线第一页 | 黑丝袜论坛 | 国产乱码精品一区二区三区四川 | 久久精品视在线观看2 | BT7086福利二区最新 | 97国产精品久久精品国产 | 秋霞影音先锋一区二区 | 99在线观看免费视频 | 99久久国产露脸精品国产吴梦梦 | 欧美高清69hd | 狠狠色狠狠色狠狠五月ady | 被黑人群jian又粗又大H | 欧洲精品不卡1卡2卡三卡四卡 | ai换脸女明星被躁在线观看免费 | 男人天堂黄色 | 18动漫在线观看 | 狠狠躁天天躁小说 | 国产午夜精品不卡观看 | 国产女合集第六部 | 国产欧美日韩综合精品一区二区 | 四虎永久精品视频在线 | 亚洲av欧美在我 | 日产精品久久久久久久蜜殿 | 亚洲黄色高清视频 | 亚洲精品久久久无码一区二区 | 国产精品无码人妻在线 | 天天噜日日噜夜夜噜 |