- 博客(78)
- 资源 (2)
- 收藏
- 关注
原创 CAN在线升级(STM32F103ZE,多个节点)
STM32 实现CAN在线升级,最多支持31个节点。并实现UART转CAN程序,并进行压力测试,很nice
2022-10-05 23:23:29
3803
2
原创 STM32串口收发处理
STM32串口收发STM32的串口接收和发送方式都有三种情况,即轮询、中断和DMA,俩俩组合便有9种可能的组合。下面挑出其中三种收发方式进行研究,以及优缺点比较。一、中断接收、轮询发送,无缓存模式1.1 原理当串口上有字节传送过来的时候,便会产生中断,即每个字节过来会产生一次串口接收中断。当有空闲中断产生的时候,认为一帧数据发送和存储完毕,置一个标志量到main函数中处理。适用于数据交互不太频繁的场合,因为平凡的串口数据发过来,会导致还没来得及处理的数据被新数据覆盖掉,产生丢帧的情况,这个是在实际
2022-01-06 13:25:15
8776
4
原创 正泰DDSU66电表修改Modbus通信协议
一、需求将DDSU666默认的645协议修改成Modbus协议,并满足量产要求二、电表三、分析此款电表为DDSU666简化版本,不可以通过按钮设置通讯协议。故联系厂家得出相关的操作步骤。考虑到批量修改还需要编写相关上位机。四、步骤1)获取当前电表ID号(当前为645协议),指令发送有返回2)根据ID号修改成Modbus通信协议,指令发送无返回3)修改Modbus通信参数,将8n2改为8n14)修改Modbus通信地址为默认01五、上位机1)修改的上位机2)读取电表参数上位机(Mo
2021-12-13 11:00:26
8549
3
原创 ESP8266网络时钟、天气(STM32+ESP-12F)
一、需求1)网络时间获取:获取NTP时间。2)指定地区天气获取:指定网址获取指定地区的天气。3)闹钟设置4)时间设置5)闹铃功能二、前期准备1)单片机最小系统板:smartESP开发板2)开发环境:MDK5.143)库函数:CubeMX5.6默认的HAL库版本4)ESP:ESP-12F5)显示:0.96 OLED IIC6)闹铃:蜂鸣器三、小项目效果图四、驱动原理1)ESP-12F:标准AT2)5向按键:AD检测3)蜂鸣器:PWM4)0.96 OLED:硬件I
2021-03-17 23:59:07
3433
原创 CAN在线升级(STM32F103ZE)
一、需求1)上位机选择要升级的程序,进行升级。2)升级使用CAN为通信链路二、需求分析PC端是不能直接与CAN进行通信的,故需要中间设备进行数据转换,在设计的时候加上了串口转CAN,并制定通信协议连接上位机(电脑)和下位机(STM32F103ZE)。二、前期准备1)单片机:STM32F103ZET6 * 22)开发环境:MDK5.143)库函数:CubeMX5.6默认的HAL库版本4)CAN分析仪5)Labview:20186)VISA:16.0三、上位机效果四、上下位机通信
2021-02-28 00:08:49
5125
1
原创 MAX6675驱动(STM32,K 热电偶)
一、前期准备单片机:STM32F103ZET6开发环境:MDK5.27库函数:STM32Cube FW_F1 V1.8.0触摸键模块:淘宝有售二、实验效果仿真:三、驱动原理参考MAX6675数据手册。四、驱动代码max6675.h#ifndef __MAX_6675_H__#define __MAX_6675_H__#include "stm32f1xx_hal.h"#include "gpio.h"#include "stdio.h"#define CS PAout(4
2020-10-29 22:19:10
3563
7
原创 水准仪
一、产品(Demo)特点1)角度检测(XYZ):数据刷新率20Hz。2)数据记录:TF卡存储,具备按小时记录、按天记录,生成CSV文件。3)上位机监测:标准RS485、Modbus通信,0~31硬件地址编址。4)联网监测:可扩NB(如移远、有人)、LAN(UDP、TCP等)、CAN组网(支持CANOpen、iCAN)等。5)人机交互:支持硬件按键、指示灯、IO输出;支持触摸屏。6)供电:外接5V~12V电源供电。二、V0.1产品展望1)单片机换成国产单片机,降成本。2)UI使用开源的Lit
2020-09-12 16:23:56
293
原创 触摸键盘驱动(STM32,TTP229-B)
一、前期准备单片机:STM32F407VET6开发环境:MDK5.27库函数:STM32Cube FW_F4 V1.25.0触摸键模块:淘宝有售二、实验效果三、驱动原理参考TTP229-BSF数据手册。注意功能选择可能对程序的适配有直接的影响。驱动参考:触摸按键参考博客,在此感谢这位博主,给了我很大的启发四、驱动代码touch.h#ifndef __TOUCH_H__#define __TOUCH_H__#include "stm32f4xx_hal.h"#include "
2020-06-27 13:47:38
3291
2
原创 婴儿床+环境监测(STM32)
一、需求1)监测尿床:湿度超过阈值,蜂鸣报警,报警声一般。2)监测火源:见到到火源,蜂鸣报警,报警声急促。3)检测环境光:亮关窗、黑暗开窗4)湿度本地显示二、前期准备1)单片机最小系统板:STM32F103C8T62)开发环境:MDK5.143)库函数:CubeMX5.6默认的HAL库版本4)尿床检测:HDT115)火源监测:火源探测模块6)环境光检测:光敏电阻7)报警:蜂鸣器8)本地显示:0.96 OLED IIC9)开关窗:步进电机,28YBJ-48三、小项目效果图四、
2020-05-19 23:47:18
1645
1
原创 智能物联网大棚(STM32)
一、需求1)modbus组网,NB-IoT模块上传数据到云端2)从机1:CO2、TVOC、温度、湿度检测3)从机2:光强、土壤湿度检测3)主机:RS485(Modbus)采集从机数据,NB75模块上传到有人云,并显示出来二、前期准备1)单片机最小系统板:STM32F103C8T62)开发环境:MDK5.143)库函数:CubeMX5.6默认的HAL库版本4)RS485通信:TTL转RS485模块5)NB-IoT:有人 NB75-BA,带物联卡6)土壤湿度:土壤湿度计检测模块7)CO2
2020-05-19 23:34:03
3632
1
原创 LoRa路灯(STM32)
一、需求1)普通模式,天黑灯亮。2)智能模式,天黑,有检测到汽车,汽车前面7盏灯亮起,过一个传感器,后面的灯熄灭3)传感器检测到的信号通过LoRa发出去,另一个LoRa接收控制路灯亮灭。二、前期准备1)单片机最小系统板:STM32F103C8T62)开发环境:MDK5.143)库函数:CubeMX5.6默认的HAL库版本4)车辆检测:红外壁障模块5)模式切换:按键6)LoRa:ATK-LORA-027)路灯:WS2812灯带8)黑白天检测:光敏电阻三、小项目效果图四、驱动原理
2020-05-19 23:18:52
1282
4
原创 婴儿床(STM32)
一、需求1)播放音乐,播放、下一曲、上一曲。2)检测婴儿床的温湿度,尿床检测,本地显示和手机端显示。3)检测婴儿啼哭声,检测到啼哭声播放音乐。4)尿床检测,检测到尿床,蜂鸣报警。5)尿床报警值可设置(串口设置)。二、前期准备1)单片机最小系统板:STM32F103C8T62)开发环境:MDK5.143)库函数:CubeMX5.6默认的HAL库版本4)LCD:0.96寸OLED,IIC通讯5)音乐播放:DY-SV5W语音模块6)喇叭:5W,3寸,4 ohm7)按键8)温湿度:DHT
2020-05-19 23:09:16
1863
原创 汽车防盗系统(STM32)
一、需求1)有人靠近汽车或碰到汽车,切断电源并声光报警,为汽车防盗模拟。二、前期准备1)单片机最小系统板:STM32F103C8T62)开发环境:MDK5.143)库函数:CubeMX5.3默认的HAL库版本4)热释电红外传感器:HC-SR5015)震动传感器:SW-18010P6)继电器7)蜂鸣器三、小项目效果图四、驱动原理1)震动传感器:IO,外触发2)蜂鸣器驱动:...
2020-04-04 19:55:34
2378
2
原创 STM32红外遥控器驱动(STM32F1 CubeMX)
一、前期准备单片机:STM32F103ZET6开发环境:MDK5.14库函数:STM32Cube_FW_F1_V1.7.0红外遥控器:淘宝有售 )二、实验效果三、驱动原理解析NEC协议,使用TIM2输入捕获抓取高低电平时间,判断0或者1,识别传输过来的码流。CubeMX TIM2配置如下:需要完整工程的请加QQ:1002521871,验证:呵呵!四、驱动代码remote...
2019-11-12 22:33:20
3002
1
原创 嵌入式FCT项目案例分享(STM32)
一、需求本项目是美的冰箱主板的一个低成本解决方案。1)测试DC电压;2)测试DC电流;3)测试AC电压;3)测试电机频率;4)测试LED亮灭;5)测WIFI信号;6)测试串口通信(主板自检输出);二、前期准备1)待测板Gerber,制作夹具;2)测试需求;3)根据测试需求,选用STM32F429主控测试板;4)自研频率采集卡(1M内方波);5)自研DC电压、电流采集卡(...
2019-11-03 14:35:54
1747
1
原创 OLED驱动 1.3寸 硬件IIC驱动(STM32F4 CubeMX)
一、前期准备单片机:STM32F407VET6开发环境:MDK5.14库函数:STM32Cube_FW_F4_V1.16.01.3 OLED模块:淘宝有售二、实验效果三、驱动原理IIC配置:剩余的请参照具体的数据手册,大部分指令都是兼容的,不同驱动器可能会有细微的差别,请对照手册修改。需要完整工程或者有问题的请加QQ:1002521871,验证:呵呵.四、驱动代码ol...
2019-09-22 00:09:32
8144
原创 直流马达驱动_ADC_PWM加减速(STM32F4 CubeMX)
一、前期准备单片机:STM32F407VET6开发环境:MDK5.14库函数:STM32Cube_FW_F4_V1.16.0直流电机模块:淘宝有售二、实验效果1)PWM波形20KHz,试验得到PWM在25%的时候,电机转动;2)调整电位器,改变PWM波,串口输出。三、驱动原理直流有刷电机的驱动十分简单,通电即可转动。运用H桥可以直接驱动电机正反转。当Q1、Q4导通,电机正...
2019-09-14 14:49:55
1593
原创 直流马达驱动_PWM加减速(STM32F4 CubeMX)
一、前期准备单片机:STM32F407VET6开发环境:MDK5.14库函数:STM32Cube_FW_F4_V1.16.0直流电机模块:淘宝有售二、实验效果1)按键KEY1按下,正转->反转->停止,循环下去;2)按键KEY2按下,PWM增加5%,一直加到100%;3)按键KEY3按下,PWM减小5%,一直减到0%。4)PWM波为20K,正转启动要到30%,反转启...
2019-09-14 01:07:56
4853
原创 直流马达驱动(STM32F4 CubeMX)
一、前期准备单片机:STM32F407VET6开发环境:MDK5.14库函数:STM32Cube_FW_F4_V1.16.0直流电机模块:淘宝有售二、实验效果1)按键KEY1按下,电机正转;2)按键KEY2按下,电机反转;3)按键KEY3案子啊,电机停转。三、驱动原理直流有刷电机的驱动十分简单,通电即可转动。运用H桥可以直接驱动电机正反转。当Q1、Q4导通,电机正转;Q2...
2019-09-13 03:37:24
3446
原创 5D摇杆驱动(STM32)
一、前期准备单片机:STM32F103ZET6开发环境:MDK5.14库函数:标准库V3.55D摇杆模块:淘宝有售二、实验效果实现上下左右、左上、右上、左下、右下(有些手抖,按不到位)按下检测。三、驱动原理低有效,与普通按键驱动无异需要完整工程或者有问题的请加QQ:1002521871,验证:呵呵。四、驱动代码key.h#ifndef __KEY_H__#define...
2019-07-05 23:20:23
2200
原创 433M串口模块无线通信(STM32)
一、前期准备单片机:STM32F103C8T6*2开发环境:MDK5.14库函数:标准库V3.5433M模块:淘宝有售二、实验效果2.1 Master 初始化2.2 Slave 初始化2.3 Master发送,Slave接收2.4 Slave发送,Master接收三、驱动原理按照文档配置,SET脚置1为配置模式,绿色灯会亮起,SET脚清零为工作模式。需要完整工...
2019-07-03 23:20:02
16453
5
原创 5050 RGB8路LED灯驱动(PWM驱动,STM32)
一、前期准备单片机:STM32F103ZET6开发环境:MDK5.14库函数:标准库V3.5RGB LED模块:淘宝有售二、实验效果类似奥迪转向灯,灯以此亮起,如此循环。颜色256256256色可调。IO驱动方式三、驱动原理模块上面的RGB引脚低电平有效,LED灯IO口也是低电平有效。需要完整工程或者有问题的请加QQ:1002521871,验证:呵呵。四、驱动代码led....
2019-04-14 20:56:44
5356
原创 诺基亚(Nokia 5110)5110屏驱动(STM32)
一、前期准备单片机:STM32F103ZET6开发环境:MDK5.14库函数:标准库V3.5Nokia 5110模块:淘宝有售二、实验效果三、驱动原理看5110的数据文档,根据文档要求写。需要完整工程或者有问题的请加QQ:1002521871,验证:呵呵。四、驱动代码5110.h#ifndef __NOKIA_5110_H__#define __NOKIA_5110_H_...
2019-04-12 23:19:44
6531
1
原创 热释电红外传感器的一个小项目(STM32)
一、需求1)检测鱼塘水位;水位过高闸门开启放水,水位过低关闭闸门。2)检测是否有人靠近鱼塘,如果有人靠近,蜂鸣报警+短信报警,要区分路过和真正的靠近。二、前期准备1)单片机最小系统板:STM32F103C8T62)开发环境:MDK5.143)库函数:标准库V3.54)热释电红外传感器:HC-SR5015)电机:5V电机6)短信模块:SIM800C7)水位传感器:光电式水位传感器...
2019-04-07 01:40:41
7922
原创 OLED驱动 0.96寸 硬件SPI驱动(STM32)
一、前期准备单片机:STM32F103ZET6开发环境:MDK5.14库函数:标准库V3.50.96 OLED模块:淘宝有售二、实验效果三、驱动原理此OLED模块采用SPI通信,也可转成IIC通信,不过要焊接背面的电阻,不建议改IIC,要改请参考具体数据手册。驱动芯片SSD1306,具体命令字详解请见网友SSD1306详解。需要完整工程或者有问题的请加QQ:10025218...
2019-01-27 01:32:21
6231
3
原创 HC-SR501热释电红外传感器驱动(STM32)
一、前期准备单片机:STM32F103ZET6开发环境:MDK5.14库函数:标准库V3.5HC-SR501热释电红外传感器模块:淘宝有售二、实验效果三、驱动原理这个模块比较简单,当有人靠近时候其IO输出3.3V,STM32可以直接采集。需要完整工程或者有问题的请加QQ:1002521871,验证:呵呵。四、驱动代码HC_SR501.h#ifndef __HC_SR50...
2019-01-19 23:29:22
24359
4
原创 DS18B20温度模块驱动(STM32)
一、前期准备单片机:STM32F103C8T6开发环境:MDK5.14库函数:标准库V3.5DS18B20模块:淘宝有售二、实验效果三、驱动原理看数据手册。需要完整工程或者有问题的请加QQ:1002521871,验证:呵呵。四、驱动代码ds18b20.h#ifndef __US_020_H__#define __US_020_H__#include "stm32f10...
2019-01-18 17:18:25
3796
2
原创 HC-SR04超声波模块驱动(STM32)
一、前期准备单片机:STM32F103C8T6开发环境:MDK5.14库函数:标准库V3.5HC-SR04模块:淘宝有售二、实验效果三、驱动原理触发信号Tirig维持10Us以上的高电平即可等待Echo的返回,这里是用EXTI检测俩个跳变信号,去打开和关闭定时器,最后一次测量计算结果后清除定时器计时,并等待下一个循环开始。需要完整工程或者有问题的请加QQ:1002521871,...
2019-01-18 15:19:05
5641
2
原创 JSN-SR04T超声波模块驱动(模式三、STM32)
一、前期准备单片机:STM32F103C8T6开发环境:MDK5.14库函数:标准库V3.5JSN-SR04T模块:淘宝有售二、实验效果三、驱动原理此模块分3中模式:(1)模式一:R27 = open,普通驱动模式;(2)模式二:R27 = 47K,串口模式,每隔100ms更新一次数据。(3)模式三:R27 = 120K,串口模式,发0x55。注意:次模块测试盲区20c...
2019-01-18 14:34:49
2033
原创 JSN-SR04T超声波模块驱动(模式二、STM32)
一、前期准备单片机:STM32F103C8T6开发环境:MDK5.14库函数:标准库V3.5JSN-SR04T模块:淘宝有售二、实验效果三、驱动原理此模块分3中模式:(1)模式一:R27 = open,普通驱动模式;(2)模式二:R27 = 47K,串口模式,每隔100ms更新一次数据。(3)模式三:R27 = 120K,串口模式,发0x55。注意:次模块测试盲区20c...
2019-01-18 11:21:45
1235
1
原创 JSN-SR04T超声波模块驱动(模式一、STM32)
一、前期准备单片机:STM32F103C8T6开发环境:MDK5.14库函数:标准库V3.5JSN-SR04T模块:淘宝有售二、实验效果三、驱动原理此模块分3中模式。(1)模式一:R27 = open,普通驱动模式;(2)模式二:R27 = 47K,串口模式,每隔100ms更新一次数据。(3)模式三:R27 = 120K,串口模式,有待机状态。触发信号Tirig维持10U...
2019-01-17 16:51:29
3231
原创 US-020超声波模块驱动(STM32)
一、前期准备单片机:STM32F103C8T6开发环境:MDK5.14库函数:标准库V3.5US-020模块:淘宝有售二、实验效果三、驱动原理触发信号Tirig维持10Us以上的高电平即可等待Echo的返回,这里是用EXTI检测俩个跳变信号,去打开和关闭定时器,最后一次测量计算结果后清除定时器计时,并等待下一个循环开始。需要完整工程或者有问题的请加QQ:1002521871,验证...
2019-01-17 16:25:28
1407
原创 DHT11驱动(STM32)
一、前期准备单片机:STM32F103ZET6开发环境:MDK5.14库函数:标准库V3.5DS1302模块:淘宝有售二、实验效果三、驱动原理看数据手册。需要完整工程或者有问题的请加QQ:1002521871,验证:呵呵。四、驱动代码dht11.h#ifndef __DHT11_H__#define __DHT11_H__#include "stm32f10x.h"...
2019-01-13 21:08:05
11463
10
原创 DS1302驱动(STM32)
一、前期准备单片机:STM32F103ZET6开发环境:MDK5.14库函数:标准库V3.5DS1302模块:淘宝有售二、实验效果三、驱动原理根据数据手册看时序,注意寄存器地址,读0x80、写0x81,支持时间修改,重新上电,时间数据一直走。需要完整工程或者有问题的请加QQ:1002521871,验证:呵呵。四、驱动代码ds1302.h#ifndef __DS_1302_...
2019-01-10 22:32:11
4361
原创 GP2Y10驱动含PM2.5和AQI(STM32)
一、前期准备单片机:STM32F103ZET6开发环境:MDK5.14库函数:标准库V3.5GP2Y10模块:淘宝有售二、实验效果三、驱动原理主要就是采集AD电压,对应转换公式做相关的转换。需要完整工程或者有问题的请加QQ:1002521871,验证:呵呵。四、驱动代码gp2y10.h#ifndef __GP2Y10_H__#define __GP2Y10_H__#...
2019-01-05 23:23:12
2873
5
原创 HC-SR505红外感应模块驱动(STM32)
一、前期准备单片机:STM32F103ZET6开发环境:MDK5.14库函数:标准库V3.5HC-SR505红外感应模块:淘宝有售二、实验效果三、驱动原理这个模块比较简单,当有人靠近时候其IO输出3.3V,STM32可以直接采集。需要完整工程或者有问题的请加QQ:1002521871,验证:呵呵。四、驱动代码HC_SR505.h#ifndef __HC_SR505_H__...
2018-11-11 00:33:43
24087
3
原创 PT2272-M4--4键无线遥控器(STM32)
一、前期准备单片机:STM32F103ZET6开发环境:MDK5.14库函数:标准库V3.5PT2272-M4模块:淘宝有售二、实验效果三、驱动原理PT2272-M4是5V信号输出的,所以必要找到单片机带FT脚的作为接收口。按下按键,对应的输出端口输出高电平,反之输出低电平。A,B,C,D对应D2,D0,D3和D1。需要完整工程或者有问题的请加QQ:1002521871,验证:...
2018-11-10 23:26:26
6353
原创 STM32F103ZE FreeRTOS任务创建与删除
一、前期准备 单片机:STM32F103ZET6 开发环境:MDK5.14 库函数:标准库V3.5 FreeRTOS:V9.0.0(网上下载,官网上目前是V10.0.1)二、实验效果 总共6个任务,串口1、4个RGB小灯以不同频率闪烁、一个删除任务,并通过串口2打印调试信息。删除任务每秒进行一次自加。当加到3的时候删除第一个小灯的任务,以此类推直到第四个小灯任务删除,之后再自加3次删...
2018-05-22 20:53:49
966
原创 STM32F103ZE FreeRTOS移植、测试
一、前期准备 单片机:STM32F103ZET6 开发环境:MDK5.14 库函数:标准库V3.5 FreeRTOS:V9.0.0(网上下载,官网上目前是V10.0.1)二、实验效果 总共6个任务,串口1、串口2、4个RGB小灯以不同频率闪烁。5050 RGB LED驱动请参考RGB驱动,串口1、2同时打印测试信息。 三、移植准备 下载好的FreeRTOS源码中,只需要把S...
2018-05-21 17:51:55
1470
原创 LCD12864并行驱动(STM32)5V和3.3V
一、前期准备 单片机:STM32F103ZET6 开发环境:MDK5.14 库函数:标准库V3.5 LCD12864模块:淘宝有售 二、实验效果 3.3V LCD12864 5V LCD12864 三、驱动原理 5V和3.3V模块均可以用STM32直接驱动,而不像1602那样5V必须是用5V驱动。注意的是模块上面的PSB脚接VCC,接VCC的话是采用并口传输数据,接...
2018-05-16 19:00:35
15689
4
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人