[MM32软件] 【EV Board (MM32L0136C7P)测评】段码屏显示温湿度数据

[复制链接]
 楼主| wuxiubo 发表于 2022-12-16 15:11 | 显示全部楼层 |阅读模式

上篇我们使用IIC读取了温湿度传感器,这篇我们使用这款板子携带的段码屏进行显示。
d2acd65eae311eef71efaac50d20a03f
目前可以理解就是段码屏其实就类似与我们简单一点的数码管。拼接起来的。
7deb1d910eaee99d672004394817d5a9
在这个芯片里面,是由一个专门的外设进行控制的。不过本次的其实未用全,所以需要修改。
MM32L0130_LibSamples_V020_1201
后面看别人分分享的,这个例子中有试用的函数,但目前好像是和官方下载的库不太一样,IIC这部分得修改下。
e38f501d0f826c83e8f8c4ab7b2950b6
修改完成后就是这样的。
  1. void LCD_DisplayDataUpdate(void)

  2. {

  3. static u32 TemValue1,RhValue1;

  4. // Number1 = (Number1 + 1) % 1000000;

  5. t++;

  6. if(t<15)

  7. {

  8. TemValue1 = TemValue*100;

  9. LCD_DisplayNumber1(0, ' ', 0);

  10. LCD_DisplayNumber1(1, ' ', 0);

  11. LCD_DisplayNumber1(2, '0' + ((TemValue1 / 1000) % 10), 0);

  12. LCD_DisplayNumber1(3, '0' + ((TemValue1 / 100 ) % 10), 1);

  13. LCD_DisplayNumber1(4, '0' + ((TemValue1 / 10 ) % 10), 0);

  14. LCD_DisplayNumber1(5, '0' + ((TemValue1 / 1 ) % 10), 0);

  15. LCD_DisplayUnit(4,1);

  16. }

  17. else if(t<30)

  18. {

  19. RhValue1 = RhValue*100;

  20. LCD_DisplayNumber1(0, 'H', 0);

  21. LCD_DisplayNumber1(1, ' ', 0);

  22. LCD_DisplayNumber1(2, '0' + ((RhValue1 / 1000) % 10), 0);

  23. LCD_DisplayNumber1(3, '0' + ((RhValue1 / 100 ) % 10), 1);

  24. LCD_DisplayNumber1(4, '0' + ((RhValue1 / 10 ) % 10), 0);

  25. LCD_DisplayNumber1(5, '0' + ((RhValue1 / 1 ) % 10), 0);

  26. LCD_DisplayUnit(4,0);

  27. }

  28. else

  29. {

  30. t=0;

  31. }

  32. }

显示这里我这样弄了下,可以自己跳转显示温度和湿度。

 楼主| wuxiubo 发表于 2022-12-16 15:16 | 显示全部楼层

xu@xupt 发表于 2022-12-19 10:29 | 显示全部楼层
学习啦,感谢分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

67

主题

259

帖子

2

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