查看: 4204  |  回复: 6
GD32E231试用串口控制家用照明

主题

回复
发表于2019-05-12 14:33:13 | 显示全部楼层
1# 电梯直达

GD32E231试用串口控制家用照明

一、方案简介

本方案基于GD32E231C8T6,ARMCortex_M23内核的MCU为主控,制作一个家用开关,一个开关多中用法控制灯的亮度的设计。通过调节灯的亮度以此找到合适当时环境的灯光,这样也可以减少不必要的灯打开照明。这样不仅也可以减少电能的浪费。

二、GD32开发板介绍

GD32E231从架构上看,内核采用Arm® Cortex®-M23,中断控制器,DMA72MHZ SYS CLK, 各项外设,是一个比较主流的架构,时钟来源也是多种,外设数量也是常规设置。不得不说,国产ARMMCU在与国外厂商基本上相差无几,国产替代上几乎没有太多技术上障碍。足够大多数应用场合使用。封装采用LQFP48等封装,既降低了焊接故障率,又能降低了开发者的焊接难度。软件上代码具有一定的一致性,使用才起来也比较得心应手。STM32代码移植到GD32也具有很好的稳定性,这样开发进一步简单。同时外设的类型和数量非常丰富:UARTx2,I2Cx2SPIx2TIMERx7GPIOx37CMPx1OP-AMPx2EXTIx16ADCx12等等。

三、方案介绍和系统系统框图

2.1方案介绍

使用串口发送数据,通过发送特定的数据格式,读取数据以后分析数据,通过按键控制LED灯的亮灭,不同的模式下按键按下LED灯会有不同的效果,以达到增强照明的作用,并且让数据发送者知道此刻是在那种模式下进而更容易控制家用照明灯。

2.2系统框图

使用GD32MCU完成的方案介绍,系统框图如图1所示

图1

四、照片示例和功能的实现

   在实现功能的时候由于不会做上位机,没办法只能通过串口模拟手机APP发送数据给MCU,但是效果是一样。效果显示如图231示,发送串口数据A1#选择模式1,发送数据A2#选择模式2,在模式1的状态下,按键Wakeup按下一次打开一个灯,按下两次打开两个灯以此类推打开四个位置的四个灯,这样以此增强光照强度,在模式2的状态下,按下按键Wakeup按下一次打开第一个位置的灯(LED1),一次打开四个位置的灯。

照明状态模式一


图2


效果如图2.1所示


图2.1

照明状态模式二


图3

效果如图3.1所示


图3.1

五、测试代码

Projects.zip


主题

回复
发表于2019-05-13 22:36:28   |  显示全部楼层
2#
*** Using Compiler 'V5.06 update 1 (build 61)', folder: 'd:\Keil_v5\ARM\ARMCC\Bin'
Rebuild target 'GD32E231C_START'
Error instantiating RTE components
Error #543: Device () not found, pack '' is not installed
Error #540: 'ARM::CMSIS:CORE:5.0.2' component is not available for target 'GD32E231C_START'
Target not created.

Build Time Elapsed:  00:00:00

请问


这个怎么解?


主题

回复
发表于2019-05-15 20:24:15   |  显示全部楼层
5#
发表于2019-05-15 18:37:11  4# GD32E23x_AddOn.zip这是安装包
应该是MDK版本问题,我从MDK5.18更新到MDK5.27就行了,其他啥也没改

主题

回复
发表于2019-05-16 23:04:02   |  显示全部楼层
6#
发表于2019-05-15 18:37:11  4# GD32E23x_AddOn.zip这是安装包

楼主,请教一下,您是怎么下载程序的?用GD-link programmer吗?  

我下载GD-link programmer,但是connect时,提示失败。


主题

回复
  • 温馨提示: 标题不合格、重复发帖、发布广告贴,将会被删除帖子或禁止发言。 详情请参考: 社区发帖规则
  • 您当前输入了 0 个文字。还可以输入 8000 个文字。 已添加复制上传图片功能,该功能目前仅支持chrome和火狐

禁言/删除

X
请选择禁言时长:
是否清除头像:
禁言/删除备注:
昵 称:
 
温馨提示:昵称只能设置一次,设置后无法修改。
只支持中文、英文和数字。

举报

X
请选择举报类型:
请输入详细内容:

顶部