[MCU] 【沁恒试用】四 整体系统设计之(1/2)——ch549各模块的功能整合

一个小白   2019-7-11 01:13 楼主

    系统介绍:以CH549的板子为主控,做一个远程控制系统,网络接收指令和发送家里一些传感器的数据。外围开关控制家电,包括,1 电灯(忘记关灯或者冬天不出被窝关灯)、2 热水器(下班开热水器,到家洗澡)、3 空调(回家前开空调,到家就已经凉快了)、4 水阀(浇花)。传感器,利用单片机自带ADC,测量土壤湿度(大家可以给推荐下电极,淘宝有挺便宜的,但是好像会生锈),以此判断是否该浇水。

    服务器,采用自己已有的阿里云服务器搭建一个网络服务,给CH549板子发送控制指令和接收其数据;另外,做一个网页,用于查看信息和进行远程操作。

 

    第一步:对于板子CH549芯片各模块的规划如下:

(其中,UART3用于测试指令用,接收电脑串口数据发送给UART1,接收UART1数据发送到电脑)

1 功能结构.jpg 各模块规划完成。

    第二步:程序编写,略,单片机代码见文末,服务器代码涉及自己的ip域名等一些东西 尚未整理 暂不发 下版再说。

    第三步:插线:

2 插线.jpg

    第四步:上电:

3 上电.jpg

    第五步:借助UART3,调试与服务器的通信。开启服务器服务(目前测试模式,接口被访问时,用户名正确则给开发板返回当前的日期时间)。

    第六步:板子控制WiFi模块联网,连接服务器:

4 连接.jpg

    第七步:板子访问接口,并获取数据(下方黑色背景是服务器控制台的消息,串口助手打印的是单片机串口的消息):

5 访问服务器.jpg

    总结,大框架基本完成,这几天完成下一个版本,完成所有功能,主要有以下几点:

测试版本多用一个UART3,UART3用于电脑和UART1之间数据的转发,用于调试指令,下一版正式版会去掉;

另外,目前还没加入看门狗,待加入;

单片机与服务器的通信协议;服务端的编写,控制界面的编写;

触摸按键控制开关,目前是按时开


此内容由EEWORLD论坛网友一个小白原创,如需转载或用于商业用途需征得作者同意并注明出处
松时关,改成触摸改变状态。

本文代码(其他资料,见前面的帖子):

    

Main.C (5.69 KB)
(下载次数: 6, 2019-7-11 01:11 上传)

    

ADC.C (2.94 KB)
(下载次数: 0, 2019-7-11 01:11 上传)

    

TouchKey.C (3.5 KB)
(下载次数: 0, 2019-7-11 01:11 上传)

    

UART.C (7.06 KB)
(下载次数: 6, 2019-7-11 01:11 上传)




此内容由EEWORLD论坛网友一个小白原创,如需转载或用于商业用途需征得作者同意并注明出处

本帖最后由 一个小白 于 2019-7-11 01:15 编辑
我来到这个世界,就是为了遇见你。在某天我们会相遇,然后在一起,直到最后一起离去。

回复评论 (1)

谢谢分享

点赞  2021-4-22 17:36
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复