- 博客(14)
- 资源 (1)
- 收藏
- 关注
原创 基于STM32从0到1开发项目08简易串口通讯协议
接收方通过检测起始位和停止位来同步数据的接收,并依据预先约定的波特率(数据传输速率)进行数据解析。与并行通信相比,它仅需少数几根信号线即可完成双向数据传输,具有布线简单、成本低、抗干扰能力强等优点,特别适合长距离或资源受限的场景。例如,若发送端为115200,接收端为9600,则接收到的数据将完全混乱。串口通信多采用异步通信方式,即没有独立的时钟线,通信双方依靠预先约定的波特率来保持同步。指每个数据帧中实际传输的有效数据位数,通常为8位(一个字节),也可设为5、6、7位。
2026-01-31 21:56:18
1112
原创 基于STM32从0到1开发项目07散热风扇
Vgs(th),Vgs(off):阈值电压,是指加的栅源电压能使漏极开始有电流,或关断MOSFET时电流消失时的电压,测试的条件(漏极电流,漏源电压,结温)也是有规格的。因此,Vgs(th)的变化范围是规定好的。栅极除限流电阻外,更优的设计是,接上拉电阻10-20k到VCC,使栅极控制电平由低变高时,栅极能够更快被拉高,PMOS能够更快更可靠地截止。栅极除限流电阻外,更优的设计是,接下拉电阻10-20k到GND,使栅极控制电平由高变低时,栅极能够更快被拉低,NMOS能够更快更可靠地截止。
2026-01-30 19:33:08
920
原创 基于STM32从0到1开发项目06制冷片
该电路具有良好的抗干扰性,微小的待机电流、低的输出内阻,同时,它还具有内置二极管能释放感性负载的反向冲击电流。它没有运动部件,所以工作起来安静又可靠,而且能快速制冷制热,温差范围可达-130℃到90℃,特别适合需要精确控温的场景。PWM信号本质上是方波,通过改变高电平持续时间(脉宽)与整个周期时间的比例(占空比)来实现控制。1.将CH3的占空比设置500(占空比50%),CH4设置为0(占空比0%,低电平),制冷片待字的一面为升温状态,反之制冷片为制冷状态。频率:PWM的频率是整个周期的倒数。
2026-01-30 16:09:00
533
原创 基于STM32从0到1开发项目05NTC热敏电阻
ADC转换时间由采样时间和固定12.5个时钟周期组成 例如:当ADCCLK(ADC时钟)运行在14MHz(最高频率),采样时间设置为1.5个周期(最小值)时,总转换时间为1.5 + 12.5 = 14个时钟周期,即1微秒。单片机通过ADC模块读取该电压值,并参照NTC热敏电阻的阻温特性表,即可计算出当前温度。外部通道:通过 GPIO 引脚(PA0-PA7,PB0-PB1,PC0-PC1)连接。2.仿真调试可以看到能够正常读初数据,用手触摸NTC热敏电阻,也可以看都数据的变化。
2026-01-28 18:41:36
509
原创 基于STM32从0到1开发项目04步进电机梯形加减速
梯形加减速的本质,就是通过设计的脉冲频率变化曲线,让电机从静止到目标速度,再平稳停止,整个过程就像画出一个梯形。优化方案应采用渐进式加减速曲线:起始低频加速至目标速度,保持匀速运行,最后减速停止。它最突出的特点是开环控制,通过控制脉冲数量就能精准定位,无需反馈传感器,因此在需要精确定位和简单控制的场景中应用广泛。预分频系数与自动重装载值需要手动减一,设置72需要写成71,APB1 Timer clocks配置的是72MH在,72分频后为1MHz,自动重装载值为1000,每1ms会产生一次定时中断。
2026-01-24 15:35:45
651
原创 基于STM32从0到1开发项目03旋转编码器
正转时A相超前B相90°,反转时A相滞后B相90°,通过检测A、B两相信号的先后顺序即可判断旋转方向。这里采用A信号作为单片机外部中断触发,开启下降沿上升沿都触发中断,并同时判断B型号的逻辑增加可靠性,若A信号为下降沿时B信号为高电平,或A信号为上升沿时B信号为低电平,则为正转,反之为反转。1、EC11旋转编码器A与B引脚分部10k电阻上拉,并经过RC滤波器(能够消除旋转编码器带来的一些抖动)连接到单片机的引脚,C引脚直接接地,DE引脚用作按压开关在上一篇文章有写。3、编译无问题,并仿真。
2026-01-21 10:49:51
575
原创 基于STM32从0到1开发项目02按键输入
这个按键用的是旋转编码器垂直方向触发的按压开关,按键检测部分有一个3.3V的上拉,另一端是GND,当按键没有被按压下来单片机读取的是高电平,被按压下去另一端就会与GND短接单片机读取是低电平。2、代码编写,物理按键会产生5-20ms的机械抖动,需通过延时消抖处理。部分内容已在往期文章中详细展示,此处不再重复,如需查阅请翻看前面内容。1、对刚打开工程进行编译一下,看是否有问题,正常是没有任何问题的。5、生成代码,并使用配置好的IDE来打开工程。3、点击选中PB14引脚,并选择Input。
2026-01-15 14:10:53
60
原创 基于STM32从0到1开发项目01心跳灯
使用STM32F103C8T6的PC13脚作为控制LED2的引脚(LED1是用来指示电源状态的),当PC13输出低电平LDE2亮,输出高电平LED2灭。3、keil5配置,优化等级配置为0,方便调试等。5、晶振配置,选择外置高速晶振硬件配置的是8M,并设置72MHz的系统时钟频率,具体配置参考下图。7、项目配置,配置项目工程的名字与工程路径且不能涵中文,选择对应IDE及版本。1、对刚打开工程进行编译一下,看是否有问题,正常是没有任何问题的。6、输出引脚配置,点击要配置的引脚上,并选择output模式。
2026-01-14 18:31:05
92
原创 HEADER控件
HEADER控件1、主要内容HEADER控件基本使用方法2、源码介绍2.1、定义控件的初始值hItem = WM_GetDialogItem(pMsg->hWin,ID_LISTVIEW_0);hHeader = LISTVIEW_GetHeader(hItem);①WM_SetFocus(hItem);②HEADER_SetFont(hHeader,&GUI_Fon...
2019-12-15 22:19:16
519
1
原创 DROPDOWN控件
DROPDOWN控件介绍1、内容介绍HEADER控件基本使用方法2、源码介绍2.1、定义控件的初始值hItem = WM_GetDialogItem(pMsg->hWin, ID_DROPDOWN_0);DROPDOWN_SetFont(hItem, &GUI_FontFont_Micro_20); ①DROPDOWN_SetTextAlign(hItem, GUI_T...
2019-12-15 22:17:13
1414
原创 BOTTON控件介绍及程序基本框架与皮肤自定义
BOTTON控件介绍及程序基本框架与皮肤自定义1、内容介绍Emwin程序基本框架BOTTON控件触发条件BOTTON控件自定义皮肤(适用所有支持自定义皮肤的控件)2、源码介绍2.1、对话框WM_HWIN CreateWindow(void) {WM_HWIN hWin;hWin = GUI_CreateDialogBox(_aDialogCreate, GUI_COUNTOF(...
2019-12-15 22:15:24
926
转载 单片机GPIO的几种模式
http://www.openedv.com/forum.php?mod=viewthread&tid=21980&extra=page%3D1%26filter%3Ddigest%26digest%3D1http://www.51hei.com/bbs/dpj-137404-1.htmlGPIO的几种模式:(1)GPIO_Mode_AIN 模拟输入(2)GPIO_Mode...
2019-12-10 23:00:22
1953
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅