硬汉嵌入式论坛

 找回密码
 立即注册
查看: 4101|回复: 3
收起左侧

[FreeRTOS] V4-341-FreeRTOS实验_FreeRTOS+RS232(串口中断,FIFO机制与PC通信)串口接收回调函

[复制链接]

65

主题

432

回帖

632

积分

金牌会员

积分
632
发表于 2017-1-2 20:45:13 | 显示全部楼层 |阅读模式
在学习安富莱推出的RTOS教程和例程,在这个例程里处理串口中断的函数里
static void UartIRQ(UART_T *_pUart)
{
    ......................
    /* 回调函数,通知应用程序收到新数据,一般是发送1个消息或者设置一个标记 */
        //if (_pUart->usRxWrite == _pUart->usRxRead)
        //if (_pUart->usRxCount == 1)
        {
            if (_pUart->ReciveNew)
            {
                _pUart->ReciveNew(ch);
            }
        }
    .......................
}
然后找到 g_tUart3.ReciveNew = RS485_ReciveNew;        /* 接收到新数据后的回调函数 */
这个初始化语句,意思是给指定了接收数据的回调函数

再往下找到这个函数的原型

/*
*********************************************************************************************************
*    函 数 名: RS485_ReciveNew
*    功能说明: 接收到新的数据
*    形    参: _byte 接收到的新数据
*    返 回 值: 无
*********************************************************************************************************
*/
//extern void MODBUS_ReciveNew(uint8_t _byte);
void RS485_ReciveNew(uint8_t _byte)
{
//    MODBUS_ReciveNew(_byte);
}
发现这个函数里面空空如也,这是什么意思?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107049
QQ
发表于 2017-1-3 08:47:24 | 显示全部楼层
这个是485总线做接收和发送切换要用到,232用不到,由于考虑到要附加几个其它的文件,我将其注释掉了。
回复

使用道具 举报

65

主题

432

回帖

632

积分

金牌会员

积分
632
 楼主| 发表于 2017-1-3 09:19:59 | 显示全部楼层
可是232接口的接收回调函数怎么没找到是在哪指定的呢?
除了UART3找到g_tUart3.ReciveNew = RS485_ReciveNew;        /* 接收到新数据后的回调函数 */
其它几个接口全部都是g_tUart4.ReciveNew = 0;                        /* 接收到新数据后的回调函数 */
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107049
QQ
发表于 2017-1-3 09:21:49 | 显示全部楼层

回 taobaofarmer 的帖子

taobaofarmer:可是232接口的接收回调函数怎么没找到是在哪指定的呢?
除了UART3找到g_tUart3.ReciveNew = RS485_ReciveNew;        /* 接收到新数据后的回调函数 */
其它几个接口全部都是g_tUart4.ReciveNew = 0;       .. (2017-01-03 09:19) 
不需要回调函数,全部在中断里面将数据存入和导出缓冲。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-15 18:22 , Processed in 0.264517 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表