[经验] 【我是电子发烧友】基于GD32F450的图标式多功能应用系统

[复制链接]
技术员
发表于 6 天前   252 查看 2 回复 只看该作者 倒序浏览
分享
1.开发背景
随着显示器件的多样化,人机交互界面也在不断地发生变化,如今在TFT显示屏上进行图标化的功能管理已成为一种趋势,为此就以兆易的新品GD32F450为硬件平台来构建一个以图标来进行功能管理的应用系统,该系统的主要功能如图1所示,整体构成如图2所示。
     图1 功能结构图
     
     图2 整体构成图
功能规划:
共设置如下功能:乐曲、PWMRTC、波形、环境、控制、设置、图像。
乐曲:利用MCU内部的串行通讯功能向MP3语音模块发送指令,进而控制该模块实现乐曲欣赏。借助菜单,可通过按键向上或向下选择乐曲。在播放过程中,还可通过按键来调节音量。
PWM:利用MCU内部的定时器实现PWM调节控制,可通过板载的LED来观察效果,同时在TFT屏上显示出LED的亮度等级。
RTC:利用MCU内部的RTC实现生肖纪年的电子时钟计时功能,并可通过2种显示效果。
波形:当前的功能是读取正弦函数值来绘制波形图,与A/D相配合可显示采集信号的波形。在添加D/A的情况下,则可输出波形信号。
环境:在添加DHT11的情况下,用以进行温、湿度的测控及温湿度曲线的绘制。
控制:通过按键来控制LED及继电器的状态变化以实现电器控制。
设置:RTC的配合下,可实现多时段的提示或控制处理。此外与MP3语音模块相配合,可实现智能语音药盒的提示功能。
图像:可实现图像的显示,受Flash大小的制约,在程序达到一定规模时,512KFlash难以存放240*320*16位色的位图,需更换为3MFlash芯片。
在配SD卡及文件系统的情况下,能对数码相框功能进行支持;在配OV7670的情况下,可对视频显示或拍摄显示进行支持。
2.硬件设计
    该系统的整体硬件结构如图3所示,主要由显示模块、语音模块、继电控制模块及传感器模块组成。
3 原理构成图
1)显示部分
     显示部分是通过SPI接口的TFT屏来实现的,这样比较节省GPIO资源。若将NC空脚接3.3V电源,则可直接将TFT屏插入Arduino接口来使用,从而省去连线的问题,其连接关系如图4所示。
4 显示电路原理图
2)语音播放部分
语音播放部分主要是通过MP3播放模块来实现,这样有利于节省MCU资源并可形成并行处理关系。为节省连线,这里采用通讯方式来控制MP3播放模块。MP3播放模块的引脚功能如图5所示,其与MCU的连接关系为:
    RX-PD5
    TX-PD6
    BUSY-PD3
5  MP3播放模块引脚图
3)控制部分
    为进行电器的控制,可采用带光隔的继电器模块,以利于防止继电器对MCU的干扰。
4)传感器部分
    为进行物理信号向模拟信号的转换,可视需要来选取不同的传感器,如火焰传感器、气体传感器、心率传感器等。此外,采用单总线的温湿度传感器DHT11也是很好的选择。
3.软件设计
1)界面设计
界面是人机交互的窗口,系统的主界面如图6所示,主要以图标的形式来进行功能调用,并通过反显的文字提示来指示当前的功能。
主菜单下的部分界面如图7~12所示。
6 主界面
7 乐曲播放界面
8 生肖纪年电子时钟界面(方式1
9 生肖纪年电子时钟界面(方式2
10 心率波形检测
11多时段提示与控制界面
12 图像显示界面
2)功能实现
为便于功能管理,可采用模块化设计以便于功能调用。此外,功能的组合使用也能够增强系统的功能,例如在启动RTC计时功能后再执行系统设置功能,则可实现多时段的定时处理或语音提示功能(如智能语音药盒功能)。
在功能设计中,既涉及到外部功能模块的使用,也涉及到MCU内部的RTCTIMEUARTGPIOA/D等,具体内容可参考所附的源代码及相关的帖子,这里就不再多加介绍。
4.功能测试
    在功能测试中,测试方法的选择是较为重要的,应合理的选择。在进行多时段提示功能的验证时,所采用的方法是以“分”替代“时”来进行验证,否则一个周期验证下来会是件相当耗时的工作。该测试的验证过程如图13~16所示,说明设计是正确的。
13 第一时段LED控制
14 第二时段LED控制
15 第三时段LED控制
16 第四时段LED控制
此外,为了进行MP3播放模块的控制,可先通过虚拟串口来验证指令发送功能,待功能得到验证后再将虚拟串口通讯改为其它通道的通讯则可以节省许多验证时间。虚拟串口的验证效果如图17所示,说明指令发送是正确的。在连接MP3播放模块后,顺利地证明了控制的有效性,如图18所示。
17  Play指令测试
18  MP3播放测试
1.结语
尽管该设计已经初具了一定的系统规模,但受时间和技术水平的限制,还是存在一些待补充和完善的地方,如在DHT11进行温湿度测控方面,不知是否与传感器模块有关,检测的温湿度总是固定值;此外也没能对基于SD卡的文件系统完成移植,也就没能实现数码相框功能,这些只能留待以后花时间再继续补充。

图片10.png (170.86 KB, 下载次数: 0)
图片10.png

评分

参与人数 1积分 +10 收起 理由
ElecFans王岑 + 10
查看全部评分
标签:发烧友
总工程师
发表于 6 天前  

PCB在线计价下单

板子大小:

cm
X
cm

层数:

2

板子数量:

10

厚度:

1.6
简单了解一下,感谢楼主分享
回复 点赞
技术员
发表于 5 天前    楼主|
对谢支持!      
回复 点赞
高级模式
您需要登录后才可以回帖 登录 | 注册
专家问答 查看更多>>
关闭

站长推荐 上一条 /7 下一条

小黑屋|手机版|Archiver| 电子发烧友 ( 粤ICP备14022951号-2 )      GMT+8, 2017-6-22 19:14 , Processed in 0.227126 second(s), 15 queries , Memcache On.
微信扫描
快速回复 返回顶部 返回列表
-

推荐专区

技术干货集中营

专家问答

用户帮助┃咨询与建议┃版主议事

我的提问

工程师杂谈

工程师创意

工程师职场

论坛电子赛事

社区活动专版

发烧友活动

-

嵌入式论坛

单片机/MCU论坛

FPGA|CPLD|ASIC论坛

DSP论坛

嵌入式系统论坛

-

电源技术论坛

电源技术论坛

-

硬件设计论坛

电路设计论坛

电子元器件论坛

控制|传感

总线技术|接口技术

-

测试测量论坛

LabVIEW论坛

Matlab论坛

测试测量技术专区

仪器仪表技术专区

-

EDA设计论坛

multisim论坛

PCB设计论坛

proteus论坛|仿真论坛

EasyEDA-中国人自已的EDA工具

-

综合技术与应用

电机控制

智能电网

光电及显示

参考设计中心

汽车电子技术论坛

医疗电子论坛

-

开源硬件

树莓派论坛

智能硬件论坛

开发快智能硬件开发平台

Intel物联网开发者专区

Waveshare

乐美客SBC专区

Arduino论坛

BeagleBone论坛

机器人论坛

创客神器NanoPi

小钢炮CANNON

比派科技banana pi专区

-

无线通信论坛

无线通信技术专区

天线|RF射频|微波|雷达技术

-

IC设计论坛

芯片测试与失效分析

Mixed Signal/SOC[数模混合芯片设计]

Analog/RF IC设计

设计与制造封装测试

-

个人版区

阿东Verilog技术专版

直流马达驱动电路设计

LabVIEW英雄联盟

特权同学FPGA专区

-

厂商专区

灵动微电子 MM32

盈鹏飞嵌入式

TI论坛

TI Deyisupport社区

芯灵思嵌入式论坛

Tisan

米尔科技

庆科社区

WIZnet技术专区

Cypress技术论坛

飞凌嵌入式

Qualcomm技术论坛

英创嵌入式

机智云GoKit论坛

-

检测技术与质量

电磁兼容(EMC)设计与整改

安规知识论坛

检测与认证

-

消费电子论坛

手机技术论坛

平板电脑/mid论坛

音视/视频/机顶盒论坛

-

电子论坛综合区

聚丰众筹官方社区

新人报道区

聚丰供应链

-

论坛服务区

-

供求信息发布

供需广告

招聘┃求职发布区

电子展览展会专区