国产MCU之光 第20期:【独家原创】最具创意的沁恒MCU项目方案精选
*阅读说明:以下仅做简要总结展示,排名不分先后。详细项目描述、源码、资料等请戳原链接查看。
项目需求:将主机数据通过串口写到外部U盘中,主机只有一个串口可以使用,无法扩展别的接口。 项目周期:一周完成。 项目预算:20元以内
1、方案确定: 针对这个需求以及时间,想到了沁恒。或许有类似的芯片可以使用,寻求技术支持之后,推荐使用CH376来实现,申请了开发板、三个样片,第二天就拿到手。配合需要的东西。
2、开发板验证 拿到开发板之后,先把几个关键的资料搞到手,最好的方式就是官网直接下载,绝对是一手资料,原理图、PCB、丝印图、上位机验证软件、芯片手册、开发板说明。
3、动手开做 使用上位机软件进行仿真串口,直接写到U盘中数据。跳线帽要选择正确,按照手册上的指引进行选择。
4、抓包 由于项目紧急,上位机实现的功能,正是项目所需要的,可以用最简单的方式进行。安装虚拟串口软件(VSPD)。模拟串口发出的数据。
5、进行单片机串口代码编写 这里以沁恒的CH32F103C8T6为例进行书写
6、打板、加急、焊接、验证 按照提供的封装、原理图、PCB图进行CH376的PCBA制作,加急,项目完结,总共用了4天时间。包括调试,提前完成任务。
点评:通过串口实现U盘读写,过程清晰详细,具有实际意义。
本次选择的开发板是沁恒的开发板“CH32V103R8” 为什么选择这款开发板呢。 第1,因为没怎么接触过沁恒RISC-V内核的开发板 第2,因为朋友推荐我玩沁恒的MCU是因为沁恒的MCU较容易好上手,而且这个在国产32位的MCU中是比较能打的(主要是有性价比)。 第3,主要是我缺了个link调试器, 开发板和调试器 接下来就是搭环境了,沁恒这个CH32V103这个搭建环境是真的很容易,首先下载个开发环境,下载MounRiver_Studio_Setup_V170.zip即可。 接下来就是安装,然后找沁恒关于CH32V103的资料例程即可。通过官网也可以看到CH32V103的开发资源和外设情况。
打开一个官方例程,我选择的是GPIO的例程,然后改了个名字,因为我想用这个MCU驱动一下FM17522射频阅读器,所以索性改了工程名字。
接下来添加FM17522的驱动代码,然后就是移植程序了。
以前换一款MCU来说,移植程序是非常费劲儿的,不过使用沁恒这款MCU的话就不用担心这个问题,基本上一看就会,一用就OK,所以我移植这个工程代码也是非常容易的。
点评:很nice的帖子,风趣幽默,又有干货。
使用ESP8266和CH32V307实现网络授时和天气的获取。 这里使用的是ESP8266-12f的芯片,需要烧录AT固件, 用的烧写工具是 flash_download_tools_v3.6.6,烧写的AT固件为安信可发布的v1.7.1.0 AT Firmware。 使用ESP8266 通过AT指令实现与网络进行数据交互,使用的是HTTP GET协议。 在测试数据之前,首先要注册获取天气的一些地址,我在这里使用的是心知天气,提供了很棒的API。
点评:巧用API,获取实时网络时间和天气,实现简单的桌面天气时钟。
最近在研究CH32V307的板子,这个板子性能还是非常强大的。CH32V307是基于32位RISC-V设计的互联型微控制器,配备了硬件堆栈区、快速中断入口,在标准RISC-V基础上大大提高了中断响应速度。加入单精度浮点指令集,扩充堆栈区,具有更高的运算性能。 看看CH32V307在物联网控制方面的应用如何,这就就做了一些相关的测试。使用CH32V307和ESP8266实现阿里云物联网平台的连接,并能远程控制CH32V307开发板上的LED灯的通断。 首先要建立的是下位机的设计,这里就不再赘述如何串口烧录ESP8266的AT固件了,网上有很多可以参考的设计。 现在有MQTT固件,使用也简单。我没有使用这类固件,使用的是正常的AT固件。通过TCP建立连接,然后与MQTTbroker联系的。 CH32V307与ESP8266使用的是串口2的通信,这里需要配置波特率为115200,并开启相关的中断。
点评:思路清晰,做的很不错。
|
666