久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1274|回復: 5
收起左側

MODBUS接收不定長數據只能接收第一個字符?

[復制鏈接]
ID:74687 發表于 2024-5-16 23:12 | 顯示全部樓層 |閱讀模式
原程序是這樣的void USART1_IRQHandler(void)
{
if(__HAL_UART_GET_FLAG(&Uart1Handle, UART_FLAG_RXNE))
{   
         uint8_t ch = READ_REG(Uart1Handle.Instance->DR);
         WRITE_REG(Uart1Handle.Instance->DR,ch);


這樣是可以將接收到的數據完整發送出去。我的想法,是將接收到的數據保存至數組緩沖區,但是我改成以下這樣就會出現問題,只能接收到一幀數據的第一個字符,問題還未定位到。

void USART1_IRQHandler(void)
{
if(__HAL_UART_GET_FLAG(&Uart1Handle, UART_FLAG_RXNE))
{   
         RS485_RX_Buffer[g_cntRxd]=(uint8_t)(Uart1Handle.Instance->DR&(uint8_t)0x00FF);
         g_cntRxd++;


回復

使用道具 舉報

ID:879809 發表于 2024-5-17 01:58 | 顯示全部樓層
接收中斷里面應該清除相關標志位才能繼續接收。
回復

使用道具 舉報

ID:384109 發表于 2024-5-17 09:50 | 顯示全部樓層
HAL庫要接收完再啟動接收才會繼續接收的
回復

使用道具 舉報

ID:74687 發表于 2024-5-17 12:53 | 顯示全部樓層
應該不是上面這個原因,應該是定時器和串口中斷的沖突導致收不到數據的。
回復

使用道具 舉報

ID:879809 發表于 2024-5-17 20:29 | 顯示全部樓層
zyftank 發表于 2024-5-17 12:53
應該不是上面這個原因,應該是定時器和串口中斷的沖突導致收不到數據的。

你原來是輪詢,繼續用這種方式好了。
回復

使用道具 舉報

ID:74687 發表于 2024-5-25 16:46 | 顯示全部樓層
rundstedt 發表于 2024-5-17 20:29
你原來是輪詢,繼續用這種方式好了。

已經調試好了,是定時器初始化卡死了。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩欧美专区 | 精品国产一区二区三区成人影院 | 久久久蜜桃| 久久久久成人精品 | 欧美另类视频在线 | 欧美久久一区二区三区 | 国产一区二区三区久久久久久久久 | 羞羞在线视频 | 欧美一区二区三区高清视频 | 日韩精品在线一区 | 人人看人人干 | 亚洲国产成人精品女人久久久 | 欧美精品一区二区三区一线天视频 | 日韩在线不卡视频 | 亚洲一二三在线 | 久久99精品久久久久久 | 国产女人第一次做爰毛片 | 韩日视频在线观看 | 欧美一级在线观看 | 精品国产一区二区三区成人影院 | 亚洲欧美在线一区 | 97天天干 | 日韩一区二区三区在线看 | 男女羞羞免费视频 | 欧美在线观看一区 | 欧美一级久久精品 | 久久欧美高清二区三区 | 成人午夜激情 | 日韩中文一区二区三区 | 亚洲精品视频免费观看 | 国产精品美女久久久久久免费 | 一片毛片 | 免费a v网站 | 99精品国产一区二区三区 | 97国产精品 | 毛片.com| 91国产视频在线观看 | 亚洲一区二区在线 | 国产情侣激情 | 欧美精品福利 | 黄色大片免费网站 |