-
I2S总线规范
I2S Bus Specification
- 2022-10-28 19:10:03下载
- 积分:1
-
在IAR环境下LPC2368,sd卡的读写程序
LPC2368在IAR环境下的SD卡读写程序-LPC2368 in IAR environment, the SD card reader program
- 2022-03-04 11:28:29下载
- 积分:1
-
Samsung, S3c2410 UART sample program. S3c2410 application so many broad.
三星公司,S3c2410 UART 示例程序.S3c2410 应用非常之多之广.-Samsung, S3c2410 UART sample program. S3c2410 application so many broad.
- 2022-01-30 13:29:59下载
- 积分:1
-
基于ARM7的开发板的存储器重映射驱动程序,文件里有程序的详细注释,对与在此基础之上的二次开发非常方便...
基于ARM7的开发板的存储器重映射驱动程序,文件里有程序的详细注释,对与在此基础之上的二次开发非常方便-based on the ARM7 development board memory re-mapping driver, the documents detailed procedures Notes right and the basis of this second development is very convenient
- 2022-01-25 18:09:12下载
- 积分:1
-
ARM ADS 程序示例(源码),coprotest.c,partest.c,interrupts.c
ARM ADS 程序示例(源码),coprotest.c,partest.c,interrupts.c-ARM ADS program example (source code), coprotest.c, partest.c, interrupts.c
- 2022-07-09 19:10:43下载
- 积分:1
-
nand flash读写实验代码,不可多得
nand flash读写实验代码,不可多得-Experimental code to read and write nand flash, rare
- 2022-03-05 08:10:25下载
- 积分:1
-
本人写的用与mega8单片机,由CodeVisionAVR编译通过的产生pwm波的小程序...
本人写的用与mega8单片机,由CodeVisionAVR编译通过的产生pwm波的小程序-I write using mega8 microcontroller, CodeVisionAVR compiled by the waves generated by small pwm procedures
- 2022-03-22 10:23:02下载
- 积分:1
-
彩色OLED,stm32f10x
彩色OLED,stm32f10x. 实现画点,画圆形.暂无字库.lcd led oled液晶显示驱动程序
- 2022-02-03 10:22:53下载
- 积分:1
-
stm32f10x_stdperiph_lib
ST公司STM32芯片软件库源代码。包括工程文件,软件库,各个外设例程-stm32f10x_stdperiph_lib
- 2023-02-07 01:15:05下载
- 积分:1
-
绝对原创,开源一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