新闻中心

EEPW首页>嵌入式系统>设计应用> ARM中基于DMA的高效UART通讯及其应用

ARM中基于DMA的高效UART通讯及其应用

作者: 时间:2012-04-16 来源:网络 收藏

5、试验及结论

为了验证的有效性,笔者做了对比试验。把负责轨迹插补的定时中断优先级设计成最高(中断时间间隔50毫秒,中断服务程序执行时间约需要30毫秒),然后一个机器人采用中断方式接收上位机连续发送的100组命令,另一个采用的方式接收上位机连续发送的100组命令。然后在机器人主程序中通过读取的状态寄存器判断出现错误(主要是数据溢出错误,即缓冲区有接收数据而没有及时读取,被新的数据覆盖)的次数。软件采用C语言,用ADS1.2编译调试。试验结果如表2。实验证明了第二种方式的有效性。

表2:对比试验结果
5.jpg

本文作者的创新点在于:在中,通过采取方式,直接将接收的数据转移到设定好的RAM区,然后设置相应的全局标志,通知主程序数据可用就可以了。开发人员不需要到UART的缓冲区中读取数据,直接读RAM就可以了。与采用中断方式或者查询方式的串行口方式相比较,不仅仅可以节省CPU通讯时用于接收数据的时间,同时可以防止UART接收的数据由于没有及时被读取而丢失,提高了通讯的可靠性。

参考文献:
(1)嵌入式系统开发与,田泽编著,北京航空航天大学出版社,2005年5月第一版;
(2)S3C44B0X RISC MICROPROCESSOR ,SAMSUNG ElECTRONICS
(3)微控制器基础与实战,周立功等编著,北京航空航天大学出版社,2003年11月第1版.
(4) 魏永清 万宝年,具有软件模拟FIFO缓冲区的串口通信模块设计,微计算机信息 2006年第7-2期:64-66


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭