-
绝对原创,开源一STM32项目,CAN,UART,Input检测 原创相对高效性能与代码重用平衡思路(缓冲队列加软中断),可直接做工程模板
1、CAN收发队列
使用内存FIFO缓冲CAN帧,适合大数据量通信;并使用内部软中断处理CAN数据,相当于事件响应,综合应该比查询方式节省不少时间,也应该比OS调度省点时间。Can.C:底层处理,Communi.C:与应用层高相关。 应用层处理流程用函数指针表的方式调用减少代码量及阅读整齐;实现CAN各种错误记录机制。已初步测试,该机制可用。
CAN处理流程:
接收:CAN1_RX0_IRQHandler_Name (void), CAN1_RX1_IRQHandler(void)
接收中断,CAN_QueueWriteQuick()将当前的有效报文压入内存FIFO,压入的数据为整个CAN邮箱数据,所以后续的处理函数可以分辨出完整的数据。
void CAN1_RX0_IRQHandler_Name (void) // CAN1_RX0_IRQHandler_Name
{
/*
FIFO从空状态开始,在接收到第一个有效的报文后,FIFO状态变为挂号_1(pending_1),
硬件相应地把CAN_RFR寄存器的FMP[1:0]设置为’01’(二进制01b)。
软件可以读取FIFO输出邮箱来读出邮箱中的报文,然后通过对CAN_RFR寄存器的RFOM位
设置’1’来释放邮箱,这样FIFO又变为空状态了。如果在释放邮箱的同时,
又收到了一个有效的报文,那么FIFO仍然保留在挂号_1状态,软件可以读取FIFO
输出邮箱来读出新收到的报文。
如果应用程序不释放邮箱,在接收到下一个有效的报文后,FIFO状态变为
挂号_2(pending_2),硬件相应地把FMP[1:0]设置为’10’(二进制10b)。
重复上面的过程,第三个有效的报文把FIFO变为挂号_3状态(FMP[1:0]=11b)。
此时,软件必须对RFOM位设置1来释放邮箱,以便FIFO
- 2022-03-21 07:31:29下载
- 积分:1
-
嵌入式处理器S3C2410的realboot源码功能和程序BOOTLOADE…
嵌入式处理器s3c2410的realboot源码程序bootloader功能和bios功能,用ads工程建立,大家可以直接学习。-embedded processor s3c2410 realboot source of functions and procedures Bootloader bios functions, with the establishment of ads works, we can learn.
- 2022-03-22 16:00:10下载
- 积分:1
-
S3C2410的串口驱动程序,移植简单,可以作您驱动程序设计的参考。...
S3C2410的串口驱动程序,移植简单,可以作您驱动程序设计的参考。-S3C2410 serial driver, transplantation simple, can be used as your driver reference design.
- 2022-04-14 22:13:14下载
- 积分:1
-
ARM9
基于ARM9的嵌入式GPRS的设计与实现,用基于ARM核的S3C2410微处理器-ARM9-based embedded GPRS design and implementation, with ARM core-based microprocessor S3C2410
- 2022-05-25 15:59:29下载
- 积分:1
-
AMBE1000语音芯片操作代码
该代码为51单片机和语音芯片AMBE1000通讯的实例代码,完成了语音的转发和播放功能,语音数据并且可以通过RS232接口发送到电脑,予以查看
- 2022-12-08 13:35:03下载
- 积分:1
-
Canton inlay of S3C2410 development board to the U
广嵌的S3C2410开发板给的U-BOOT很是经典,是学习bootloader的好资料,识货的赶快下!-Canton inlay of S3C2410 development board to the U-BOOT was a classic, is a good learning bootloader information, know all about the goods under the hurry!
- 2023-03-29 22:25:03下载
- 积分:1
-
m48配置鞍山路附近按时间反垃圾gfjaslf;来收集垃圾伽师
m48配置鞍山路附近按时间反垃圾gfjaslf;来收集垃圾伽师-Anshan Road, near the M48 configuration time anti-gfjaslf to collect garbage Jiashi
- 2022-10-25 02:50:03下载
- 积分:1
-
manual
三星arm的 手册-manual
- 2022-03-02 10:20:39下载
- 积分:1
-
embedded system design degree thesis, more comprehensive system, CAJ format
嵌入式系统设计学位论文,比较系统全面,caj格式-embedded system design degree thesis, more comprehensive system, CAJ format
- 2023-02-21 16:15:03下载
- 积分:1
-
MIPS Assembly Code
MIPS Assembly Code - Hello World example-MIPS Assembly Code- Hello World example
- 2022-05-17 21:07:33下载
- 积分:1