安卓部分的界面与编程,按实现以下部分功能来进行,可以再扩展,如:湿度,光照,气体等数据的采集与上传等
1)PC通过串口下发的控制命令:
IO控制命令:1+0 1 0 1 共5个字符,其中第1个1代表对IO口进行控制,后面的1与0分别代表PB5,6,7,8每个IO的开与关。
PWM输出命令:2+0-3 共2个字符,代表对接在PA6(TIM3的CH1)上的LED灯的亮度进行控制,TIM3定时20K,72M/20K=3600,所以分频PSC=0,ARR=3599。0全关, 1为PWM=1000亮度,2为PWM=2000亮度,3为PWM=3000亮度。
定时命令:3+1-9 共2个字符,代表用定时器4,控制PC6的翻转,1-9代表定时的秒数。72 000 000=7200*10000=14400*5000 TIM4_Int_Init(5000,14400)
设定电压命令: 4+5个字符 如100.5代表设为100.5V
设定电机命令:A+5个字符 如12345代表电机速度speed=12345转
2)STM32通过串口上传的命令:
上传按键命令:5+1-3 共2个字符,5代表STM32的按键被按下,1代表按键KEY0,2代表按键KEY1,3代表按键WK_UP
上传定时时间命令:6+1-9 共2个字符,6代表定时器4的定时时间到,1-9代表定时的秒数。
上传火焰报警命令:7共1个字符,代表PC7口接火焰传感器检测到有火(从低电平变为高电平,用外部中断的上升沿)。
上传电机速度命令:8+5个字符 如12345代表电机速度speed=12345转
上传电压命令: 9+5个字符 如100.5代表设为100.5V
上传温度命令: B+5个字符 如100.5度
上传采样命令: C+N+5个字符 N代表通道号, 如1100.5代表1通道为100.5V

