-
[原创]STM32源码项目,原理图SCH,PCB文件,CAN UART SPI-Flash 电源 四状态输入检测单元
这个实际上只调到了初步的PCB可运行UART可用,其它还未真正调试,但其中的设计及PCB,若有用,哥们们可参考一下
因没完全调试,源代码工程有部分多余代码,工程文件需要重新整理一下,当然如果板子有用,其实可以完全根据原理自己建工程,压缩包内有完整SCH,PCB,包括电源5V,3.3V,RS232,RS485,CAN,SPI-Flash,USB,IO电路。
主要实现的功能是一个多IO,多个232/485,一个CAN通信。
其中数字Input检测,通过两个IO检测四种状态:高,低,悬空,检测单元有问题。 该单元在SCH&PCB目录下面有相应的Multisim仿真文件。
真值表:
L1 H1 值
0 0 INX_LH1为高
0 1 检测单元问题,可能D6与D7之间断开或者INX_HL1电平
1 0 INX_HL1悬空,且检测单元OK;或者INX_HL1电平处于中值
1 1 INX_LH1为低
- 2023-03-01 00:05:05下载
- 积分:1
-
u盘开发源代码,以经过调试,希望对大家有用
u盘开发源代码,以经过调试,希望对大家有用-u set the development of source code in terms of debugging, in the hope that useful to everybody
- 2022-05-30 12:15:13下载
- 积分:1
-
时钟分频器
最大值。1/255 时钟分频器用 STM32F103 计时器。
它有 2 双正交输入和触发器输出。
它是非常简单的代码,仅用于硬件资源。
- 2022-08-13 09:36:36下载
- 积分:1
-
ucosii v2.52在ARM7上的移植代码
ucosii v2.52在ARM7上的移植代码-ucosii v2.52 ARM7 transplant code
- 2022-03-24 07:11:47下载
- 积分:1
-
基于TLC1549芯片的ADC源码,单片机为89s52。
基于TLC1549芯片的ADC源码,单片机为89s52。-Based on the TLC1549 chip ADC source, single-chip microcomputer for 89s52.
- 2022-04-11 16:22:22下载
- 积分:1
-
STM32F103 CMSIS UART
与合作 UART STM32F103 通过 CMSIS 图书馆。初始化、 原始写入和读取从端口。
- 2022-03-04 17:24:45下载
- 积分:1
-
LPC23XX系列GPIO的项目文件和源代码,可以直接使用。
LPC23XX系列GPIO工程文件加源代码,直接可用。-LPC23XX Series GPIO project file plus source code, can be used directly.
- 2022-08-03 07:07:14下载
- 积分: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
-
SIM300 initialization code, including the boot order, PIN code, etc.
SIM300初始化源码,包括开机命令,PIN码等-SIM300 initialization code, including the boot order, PIN code, etc.
- 2022-04-23 06:17:21下载
- 积分:1
-
OLED动画,基于stm32
软件平台:keil,本程序使用了printf用于在LCD和串口显示数据,因些对Option for Target属性有如下更改,
Target选项页:勾中Use MicroLIB(使用微库)
主芯片:stm32
功能:在OLED屏上显示动画
- 2022-02-04 17:41:24下载
- 积分:1