- 博客(8)
- 收藏
- 关注
原创 STM32第一篇 ------ DS18B20测温模块
(1)单线接口仅需要一个端口引脚进行通讯(即单总线接口方式);(2)无需外部器件;(3)测温范围:-55 ~ +125 ℃ ,以0.5℃递增;-67 ~ +257 ℉ ,以0.9 ℉ 递增;(4)温度以9为数字量读出;(5)温度数字量转换时间200ms (典型值);(6)零待机功耗;(7)分辨率调整范围:9 ~ 12 位;(8)用户可定义的非易失性温度报警设置;(9)报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;
2025-02-17 15:36:39
1761
2
原创 STM32学习第六篇 -------通信协议(二)USART(1)
USART是STM32内部集成的硬件外设,可根据数据寄存器的一个字节数据自动生成数据帧时序,从TX引脚发送出去,也可自动接收RX引脚的数据帧时序,拼接为一个字节数据,存放在数据寄存器里;第四步,如果需要设置接收的功能,可能还需要配置中断,就需要在开启USART之前,再加上ITConfig和NVIC的代码;第六步,如果要接收数据,就要调用接收的函数;在(3)中的基础上,在Serial.c中的Serial_Init()函数中,添加以下代码。第一步,开启时钟,把需要用的USART和GPIO的时钟打开;
2025-02-14 19:41:25
480
原创 STM32学习第五篇 -------通信协议(一)串口协议
学习江科大 9-1 USART串口协议通信的目的:将一个设备的数据传送到另一个设备,扩展硬件系统;通信协议:制定通信的规则,通信双方按照协议规则进行数据收发。
2025-02-13 13:48:43
363
原创 STM32学习第四篇 ---------- DMA
当传输计数器等于0,且没有自动重装时,此时就需要DMA_Cmd,给DISABLE,关闭DMA,再为传输计数器写入一个大于0的数,重新DMA_Cmd,从而开启DMA(写传输计数器时,必须要先关闭DMA,再进行)。其次,配置规则组通道(根据引脚与输入通道的表,从而得到PA0--PA3对应的输入通道分别为ADC_Channel_0-----ADC_Channel_3,并将其设置在通道0-3);首先,开启ADC、DMA、GPIOA的时钟,配置ADCCLK的时钟为12MHz;a、开关控制,DMA_Cmd必须使能;
2025-02-11 15:56:25
347
原创 STM32学习第三篇---------- ADC模数转换器
对于STM32的ADC,触发ADC开始转换的信号有两种:一种是软件触发,通过在程序中手动调用一条代码,就可以·启动转换;对于需要频繁进入中断,并且在中断里只完成了简单工作的情况,有硬件支持(比如这里,就可以给TIM3定个1ms的时间,然后在ADC这里,选择开始触发信号为TIM3的TRGO,这样TIM3的更新事件就能通过硬件自动触发ADC转换)。模拟看门狗存放一个阈值高限和阈值低限,这样就可以关注它关门的通道,一旦超过这个阈值范围,它就会乱叫(申请一个模拟看门狗的中断)。(5)规则组和注入组两个转换单元;
2025-02-08 16:50:20
801
原创 STM32学习第二篇----------TIM输出比较
将CNT和CCR1进行比较,当CNT>CCR1 ,或CNT=CCR1时,就会给这个输出模式控制器传一个信号,这个输出模式控制器就会改变它输出OC1REF的高低电平(reference参考信号)(1)输出比较可以通过比较CNT和CCR寄存器值的关系,来对输出电平进行置1、置0或翻转的操作,用于输出一定频率和占空比的PWM波形;(1)在具有惯性的系统中,可以通过对一系列脉冲的宽度进行调制,来等效地获得所需要的模拟参量,常应用于电机控速等邻域。(3)高级定时器的前3个通道额外拥有死区生成和互补输出的功能。
2025-02-05 23:12:12
793
原创 STM32学习第一篇----------定时器定时中断
从上面两张图来看,CK_PSC一直输出一个方波,CEN高电平使能,当预分频器为0,定时器根据CK_PSC的一个波形来进行累积计数,到达更新事件(UEV)后,从之前的预分频系数变为3(即根据CK_PSC的四个波形来进行累计计数),期间控制寄存器在上一个计数周期发生变化,通过预分频缓冲器在这个周期结束后再将计数周期改变,预分频计数器通过对CK_PSC方波信号进行计数从而得到以CK_CNT的四个周期为信号的方波波形。第五步,配置NVIC,在NVIC中打开定时器中断的通道,并分配一个优先级。
2025-02-03 22:00:18
439
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人