各位久等了,
终于赶出时间完善了一下,虽然不是雏形了,但还是不太完善,因为第一次做上位机 加上时间太少 、做得太仓促,功能有的没加上,希望大家鼓励支持!
大家多提意见,我会一一完善,上位机的话有空会在学习,这次虽然做的一般,还是学到不少东西的,对上位机面对对象编程重新认识,拓展了一下知识面!
非常感谢21IC做的活动,活动背后是评审老师和21工作人员的悉心付出,不仅让大家学习,还送礼品鼓励大家。
看到这里的童鞋,小虫子在这里表示感谢!!!
OK!废话不说了 看视频 不要吐槽我 有点磕巴,很努里的讲普通话了。
视频链接:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
代码+自己已经很努力做的上位机 哈哈!!!
1分析任务需求
硬件电路:光敏传感器(模拟量)、运行时间(RTC时钟)、
生长灯(LED 3颗)、
按键(2个)、
显示(数码管8位)、
上位机:
串口发送数据(指令)包括采样指令 灯光控制指令
接收数据显示(历史数据+折线图)
【折线图暂时做不出来】太难了(嘤嘤嘤...)
2简要文档说明
【1】系统实现基本思路:
本任务书是采用上位机对下位机做出控制,采集的数据需要串口通讯传输。(按照现在的物联网,可以用一个wifi8266做下位机通讯设备,实现远程控制,前提是需要下位机连接网络)系统主要分一个上位机,一个是现场照明节点,
上位机用来接收现场节点发过来的数据,同时能发送指令控制现场节点的,生长灯等等。
现场照明节点上安装有光敏电阻,数码管清晰显示,DS18B20,按键和照明灯。
看看下位机流程图
【2】系统硬件框图:
硬件电路:
选取的蓝桥开发平台CT107D开发板 单独的原理图我也不想画了 太懒... 上大图!!!
采用板子数码管做显示 显示0.01V分辨率的电压值和系统运行时间
上电默认模式0界面1显示实时时钟 界面2显示的光敏读取的电压值 数值越大光照越强!!
模式切换 S5按键长按切换模式0或1
模式0 按照光强小于50%点亮led1 小于30%接着点亮led2
模式1 按下点亮LED1 再按点亮LED2 最后全部熄灭 依次循环
【3】系统的软件流程与创新点:详见文档说明
---通信协议---
上位机发送 -cy-000
下位机接收并以5Hz频率发送采样数据
数据为 运行时间、光强值 电压值、工作模式、led状态
上位机发送 -kz-000 -kz-001 -kz-002
下位机接收并执行 关灯 开1灯 开2灯
3完整演示视频:注:视频讲解比较粗糙,为了能够理解,强大家看之前务必通读两遍任务书喔!!!!
代码部分截图
4自评报告
任务下位机需求基本完成:任务需要的下位机控制灯光,模式切换,生长灯和模式灯自检,以及系统运行时间都基本实现。
任务下位机已完成部分:通过串口发送固定指令控制灯光 发送固定指令控制采样,接收各种数据显示(时间、模式、状态等);
任务下位机未完成部分:接收数据通过折线图显示并保存历史数据。
参加了两次活动都是关于上位机de,不过有一点是,上一次时使用上位机串口助手,这一次自己做串口通讯,难度大了一点点,但是这是个很好的学习机会,从不知道怎么面对对象编程,到简单写出串口上位机,过程还是体验到不少乐子,每天在群里水群也能学到知识的,欢迎大家参赛进群讨论!!!哈哈哈哈
|