【GD32L233C-START测评】迪文智能屏的显示控制
本帖最后由 jinglixixi 于 2022-3-8 13:38 编辑<p style="text-align:justify">界面是人机交互的重要窗口,使用迪文智能屏则能够起到提升界面显示质量的效果。</p>
<p>将GD32L233开发板与迪文智能屏相结合是一个低功耗、高性价比的方案,这里以环境状态检测仪为例加以介绍,其界面显示效果如图1所示。</p>
<p>图1 界面显示效果</p>
<p>通过工具软件DGUS Tool V7.624,其界面设计如图2所示。</p>
<p>图2 界面设计</p>
<p>通过串口指令,可对界面中所使用的变量进行显示内容的读取与更新。</p>
<p>在界面中,温度的变量地址为1200,变量类型为整数(2字节),整数位数为2位,显示颜色为白色;气压的变量地址为1202,变量类型为整数(2字节),整数位数为4位;光照的变量地址为1204,变量类型为整数(2字节),整数位数为4位。</p>
<p>日期的变量地址为1000,显示颜色为白色,文本长度为10,X方向点阵数为12,Y方向点阵数为24;时间的变量地址为1020,文本长度为8。</p>
<p>1)读取数据变量内容</p>
<p>以读取温度变量为例,其变量地址为1200,故读取的指令为“5A A5 04 83 12 00 01”,其反馈信息为“5A A5 06 83 12 00 01 00 1A”,见图3所示。其中的“00 1A”为数据值的26,与界面的显示值相同。</p>
<p>图3 读取测试</p>
<p>若使用指令“5A A5 04 83 12 00 05”,则可读取3个变量的数据,见图4所示。</p>
<p>温度的“00 1A”为26度,气压的“00 00 04 00”为1024千帕,光强的“00 00 03 E8”为1000勒克斯。</p>
<p>图4 读取多个地址数据</p>
<p>2)修改数据变量内容</p>
<p>向变量地址1200发送“00 14”,即可将温度值更改为20度,见图5所示。</p>
<p>图5 更改温度值</p>
<p>以环境状态的检测为例,其内容包括温度、大气压及光照强度,是由传感器BMP085和BH1750来获取,在GD32L233开发板的控制下,其检测值被转换为相应的指令传给迪文智能屏来进行显示,其硬件构成及连接如图6和图7所示。</p>
<p>图6硬件构成</p>
<p>图7硬件连接</p>
<p>3)电子时钟计时</p>
<p>由于迪文智能屏并没有独立的电子时钟计时功能,为此可以使用GD32L233开发板的RTC计时器或延时函数来完成。</p>
<p>在智能屏的UART2与开发板相连接的情况下,模拟RTC秒计时的程序为:</p>
<pre>
<code class="language-cpp">while(1)
{
tx_buffer = i/10+'0';
tx_buffer = i%10+'0';
tx_counter=0;
while(tx_counter < nbr_data_to_send)
{
usart_data_transmit(USART0, tx_buffer);
delay_1ms(1);
}
i++;
i=i%60;
delay_1ms(1000);
}</code></pre>
<p>通过串口调试工具观察,其测试结果如图8所示。</p>
<p>图8 发送模拟计时指令</p>
<p>4)检测值显示</p>
<p>通过传感器对外部状态的检测,开发板用串口向智能屏发送的内容如图9所示,其中</p>
<p>“5A A5 0B 82 10 20 30 38 3A 33 35 3A 33 34”是用于更新时间值,其时间为“08:35:34”;</p>
<p>“5A A5 05 82 12 04 00 1C”是用于更新光照值,其值为28lx;</p>
<p>“5A A5 05 82 12 00 00 17”是用于更新温度值,其值为23度;</p>
<p>“ 5A A5 05 82 12 02 03 FB“是用于更新气压值,其值为=1019KPa。</p>
<p>图9 数据发送</p>
<p>此外,为了便于计时值的校正还可为智能屏配置参数设置功能,其界面如图10所示,在完成参数设置后,可通过串口发送给开发板并更新RTC的计时值。</p>
<p></p>
<p>图10据发送</p>
<p>经实际验证,说明其功能有效,设计无误。</p>
<p> </p>
<p>演示视频:<iframe allowfullscreen="true" frameborder="0" height="450" src="//player.bilibili.com/player.html?bvid=1uZ4y1r7Mj&page=1" style="background:#eee;margin-bottom:10px;" width="700"></iframe></p>
<p> </p>
<p>屏幕不错,多少钱?</p>
freebsder 发表于 2022-3-8 23:13
屏幕不错,多少钱?
<p>百十块钱</p>
<p>看来楼主也在好几个评测网站玩呀。</p>
我的那个屏跟你一样,可是没玩一天就成砖了。 lugl4313820 发表于 2022-3-22 07:38
我的那个屏跟你一样,可是没玩一天就成砖了。
<p>我的也一样早早也变砖,邮去返修了一次。</p>
lugl4313820 发表于 2022-3-22 07:36
看来楼主也在好几个评测网站玩呀。
<p>哈哈,有机会就争取吧。</p>
jinglixixi 发表于 2022-3-22 21:51
我的也一样早早也变砖,邮去返修了一次。
<p>我的是说排线断了,直接OVER,还好给我再申请了一块。</p>
lugl4313820 发表于 2022-3-22 22:18
我的是说排线断了,直接OVER,还好给我再申请了一块。
<p>我的说是芯片坏了,换了液晶,其实就是CFG中的背景库文件设错了,命名为32.ICL,写了2次直接黑屏完菜。</p>
jinglixixi 发表于 2022-3-22 22:25
我的说是芯片坏了,换了液晶,其实就是CFG中的背景库文件设错了,命名为32.ICL,写了2次直接黑屏完菜。
<p>但是我的发回来了,看到屏线的背光断了,我自己接好,上18V电,屏是亮的,但是接到板上,只有5V供电,感觉不是屏的问题。是屏就没有工作,所以感觉很奇怪!</p>
lugl4313820 发表于 2022-3-22 22:27
但是我的发回来了,看到屏线的背光断了,我自己接好,上18V电,屏是亮的,但是接到板上,只有5V供电,感 ...
<p>18V能量,说明它是5V供电然后升压到12V供电,可能是生压这部分有问题,或是线路不同了。其实,这个屏最好是相对固定起来比较好,否则一下载就插卡、拔卡的,与转接板连接的的线排极易损耗,还是成品用起来最安全。</p>
页:
[1]