查看: 1870|回复: 0

[评测分享] 【MicroLab调试工具】+ 以GD32307E开发板驱动显示组件(追加...

[复制链接]
  • TA的每日心情
    奋斗
    2025-1-13 15:23
  • 签到天数: 1743 天

    连续签到: 1 天

    [LV.Master]伴坛终老

    发表于 2020-12-25 08:51:44 | 显示全部楼层 |阅读模式
    分享到:
    本帖最后由 jinglixixi 于 2020-12-25 08:55 编辑

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

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

    1.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 下一条

    手机版|小黑屋|与非网

    GMT+8, 2025-1-27 08:43 , Processed in 0.121839 second(s), 17 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.