推荐阅读最新更新时间:2024-03-16 16:11
STM32F103标准库开发----CAN总线通信实验----初始化/波特率
一、CAN总线通信初始化配置 1. CAN总线通信初始化配置流程 CAN总线GPIO和时钟配置 CAN总线接收中断优先级配置 CAN总线初始化配置 2. CAN总线GPIO和时钟配置 CAN引脚配置 CAN时钟配置: PA11和PA12引脚,CAN GPIO初始化,具体代码如下: /*CAN GPIO 和时钟配置 */ void CAN_GPIO_Config(void) { GPIO_InitTypeDef GPIO_InitStructure; /*GPIOA端口时钟使能*/ RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
[单片机]
矿井掘进面智能通风控制系统设计
瓦斯是困扰煤矿安全高效生产的主要问题之一,煤矿事故70%以上是由于通风设备故障、通风管理不善造成的。对掘进工作面局部通风机的稳定控制则是解决此问题的关键。 智能控制系统的功能分析 根据实际掘进面巷道工况的需求和《煤矿安全规程》对局扇“三专两闭锁”方式的使用要求 ,并借鉴国内外相关系统的优点,智能通风控制系统应具备以下功能。 (1) 安全排放瓦斯 瓦斯的排放过程中为了不污染瓦斯未积聚区域,瓦斯排放要求在监控瓦斯浓度的条件下缓慢地进行。本智能通风控制系统的首要功能是根据不同的瓦斯浓度分布情况,选择合理的瓦斯排放措施,达到安全有效地排放瓦斯的目标。 (2) 双机准热备控制模式 实现两双两自动,即在
[嵌入式]
STM32F103配置串口(USART)流程
1:设置中断分组 NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); 2:使能用作串口(RX/TX)的时钟 RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1|RCC_APB2Periph_GPIOA,ENABLE); //串口时钟和GPIO时钟都需要设置 3:GPIO模式设置 GPIO_InitTypeDef GPIO_InitStruct; GPIO_InitStruct.GPIO_Pin = GPIO_Pin_9; //TX GPIO_InitStruct.GPI
[单片机]
STM32F103ZET6 — USART
串口通信介绍 UART串口通信,使用三线即可进行最基本的数据收发传送: 在数据线上的 Timing 遵循标准的串口通信协议,由起始位,数据,校验位,停止位组成,数据传输 LSB - MSB: 板载 USART 资源介绍 当然,由于电平不一样,使用 RS232 标准进行串口数据传送,需要增加 MAX3232 进行电平转换,再接PC: 单板上的 T1IN 和 R1OUT 接到了 STM32 芯片的 USART1 的 TXD/RXD 管脚,故单板上使用了 USART1 来作为 RS232 和 PC 机进行数据传送: USART 初始化配置 既然确定了使用了芯片上的 USART1,要正确使用该功能,需要进行
[单片机]
基于stm32f103zet6之UC/OS_II的学习1(初步移植OS--点灯大法)
代码这里可以下载 http://download.csdn.net/detail/king_bingge/5353528 一、uc/OS的实时性是靠什么实现的? 1、uC/OS的实时性就是靠定时中断来完成。 2、每个时钟节拍到来,就会产生一次定时中断,中断后进行任务调度,运行就绪表中优先级最高的任务(非抢先型内核中断后继续运行被中断任务)。 即过一段时间就检测是否有重要任务需要运行,是的就转而运行更重要的任务,从而确保实时性(裸机程序就无法这样做了)。 当然这里没有把系统调用考虑进去。 二、首先整体把握一下在M3上运行ucosII的架构 这就是整个系统各模块之间的关系,好的接下来就按照手册来分析一下移植的时候需要注意的地
[单片机]
No ULINK2/ME Device found stm32f103 程序无法下载
下载程序出现错误 解决方法:https://blog.csdn.net/cgzhello1/article/details/80043082 操作步骤如下: 点击‘魔术棒 ------》utilities----- 选择你下载的方式,我是ST-Link----- settings 进入settings 后,如下图界面 Add----- M29W640FB.Flash----OK 再次下载程序测试, 下载成功!
[单片机]
stm32f103 DMA接收定长数据和不定长数据
最近做了DMA接收定长数据和不定长数据的程序,现在来分享一下定长: #include led.h #include delay.h #include key.h #include sys.h #include lcd.h #include usart.h #include dma.h #define USART1_RXBUF_SIZE 200 //发送数据长度,最好等于sizeof(TEXT_TO_SEND)+2的整数倍. u8 u1rxbuf ; //发送数据缓冲区1 u8 u2rxbuf ; //发送数据缓冲区2 u8 witchbuf=0; //标记当前使用的是哪个缓冲区,0,使
[单片机]
STM32F103系列实战之DMA控制器
DMA简介 直接存储器存取(DMA)用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU干预,数据可以通过DMA快速地移动,这就节省了CPU的资源来做其他操作。灵活的12路通用DMA(DMA1上有7个通道, DMA2上有5个通道)可以管理存储器到存储器、设备到存储器和存储器到设备的数据传输;还有一个仲裁器来协调各个DMA请求的优先权。2个DMA控制器支持环形缓冲区的管理,避免了控制器传输到达缓冲区结尾时所产生的中断。 每个通道都有专门的硬件DMA请求逻辑,同时可以由软件触发每个通道;传输的长度、传输的源地址和目标地址都可以通过软件单独设置。DMA可以用于主要的外设: SPI、I2C、 USART,通用
[单片机]