找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1764|回复: 0
收起左侧

以GD32307E开发板驱动显示组件

[复制链接]
ID:776997 发表于 2020-12-25 08:54 | 显示全部楼层 |阅读模式
本帖最后由 jinglixixi 于 2020-12-25 08:56 编辑

Micro-Lab可轻松地在上位机设计出表现形式丰富多样的界面,且通过串行通讯将上位机和下位机有机地联合起来。
在界面制作方面,该软件为用户提供了3类组件,即控制组件、显示组件及图表组件。
其中显示组件的内容最为丰富,它又包含进度球、电池、仪表盘、数码管、温度计等组件,见图1所示。
1.jpg
1 显示组件及使用

在界面设计时,只需将相应的组件拖到画布中即可,此外还可修改所用组件的属性值。
下面制作一个包括3个组件的界面,其运行效果见图2和图3所示。
2.jpg
2 运行效果

3.jpg
3 接收下位机数据

由出品方所提供的下位机例程是采用STM32F103开发板,而本次所用的下位机则是GD32307E开发板,为此对源程序进行了相应的功能移植,且按照实际需要进行了裁剪,相应的主程序为:
  1. int main(void)
  2. {
  3. float x = 0;
  4. /* configure systick */
  5. systick_config();
  6. /* configure EVAL_COM1 */
  7. gd_eval_com_init(EVAL_COM1);
  8. while (1)
  9. {
  10. //  进度球
  11. updateCanvas(WATERLEVER, 0, (char *)&x, sizeof(float));
  12. delay_1ms(500);     
  13. //  电池
  14. updateCanvas(BATTERY, 0, (char *)&x, sizeof(float));
  15. delay_1ms(100);
  16. //  数码管
  17. updateCanvas(LCDNUMBER, 0, (char *)&x, sizeof(float));
  18. delay_1ms(1000);   
  19. x++;
  20. if(x>=100)
  21. {
  22. x = 0;
  23. }
  24. }
  25. }
复制代码

其作用是:以一定的时间间隔向上位机发送相应的组件信息,进而刷新相应组件的状态。其中,变量x的值就是驱动3个字节更新的关键。受组件属性的制约,变量x的取值范围被设置在0~100之内。

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表