【实验器材】
- stm32f103ZET6
- ESP8266
- 串口人机交互屏
- 继电器
- 小米智能插座
- 机智云Gizwits平台
【项目目的】
机智云IOT-AI超声波真空微波洗烘一体机全机驱动
【硬件资源】
1.ADC1-ch7用于压力传感器分压读取压力值(连接在PA7)
2.USART2与串口屏连接(连接在TX:PA2,RX:PA3)
3.定时器5(TIM5)(T=1S)用于计时(如洗衣时间、干燥时间等)
4.继电器驱动IO口(洗衣:进水阀PD.0、排水阀PD.1、超声波振子PD.3)
(干衣:进气阀PD.4、抽气阀PD.5、真空泵PD.6、磁控管PD.7)
5.I2C(温湿度传感器)PD.14(SCLK) PD.15(SDA)(使用软件模拟时序)
6.AI音响控制端PF0-PF6
*7.定时器4(T=10ms)在中断中专门检测按键,并设置相应工作状态位在主循环中执行动作
还用了2个变量,80ms处理一次机智云协议(上行/下行),200ms获取并更新一次传感器与洗衣等时间值打印到串口屏
8.USART3与8266连接PB.10(UART3 TX) PB.11(UART3 RX)
9.USART1(PA.9 PA.10)调试时打印串口
10.TIM3(T=1ms)机智云通信协议使用
11.ADC3-CH5用于重力传感器分压读取重力值判定水量(PF7)
【外设中断优先级(NVIC_PriorityGroup_2)】
1.TIM3 (0-3) 机智云协议用 1ms
2.UART1接收(3-3) 串口调试打印 接收就中断
3.UART2接收(0-0) 串口屏指令 接收就中断
4.UART3接收(1-3)与8266串口通信 接收就中断
4.TIM4(2-1) 串口屏的按键指令读取,机智云上下行数据,UPdate传感器值到屏幕 10ms
5.TIM5(1-0) 计时洗、干、洗烘衣时间 1s
【串口屏键值记录(变量地址:0x0000)】
1.洗衣:0x0111 开始洗衣:0x0112
2.干衣:0x0222 开始干衣:0x0221
3.洗烘:0x0333 开始洗烘:0x0332
4.结束所有操作:0x0444
【项目功能】
【注意事项】