【开源】51内核的DGUS屏入门设计
非常感谢迪文科技开源活动大力支持,这次是基于51内核的DGUS屏的入门设计,主要源程序分析。
设备是一个医疗康复仪器,针对手术后伤口不同光照射,加快恢复正常的功能,三种光控制,近红外,红光,远红外,可以分别控制光强度,照射时间,频率。 - 硬件上单片机采用STC12c5a60s2,触屏DMT80480T070_03WT,7寸的触摸屏。
- 采用232和单片机通讯。
这是早期的硬件板图,电阻和电容都是直插的:
这个主要应用到数据变量控件,时间左边按键是减,右边是加,中间是显示时间,分别对应不同的变量地址,主要是调节步长,上限,下限等设置就ok了。
红光 | 远红外 | 近红外 | 变量地址 | 功能 | 变量地址 | 功能 | 变量地址 | 功能 | 0010 | 时间 | 0020 | 时间 | 0030 | 时间 | 0011 | 强度 | 0021 | 强度 | 0031 | 强度 | 0012 | 启动 | 0022 | 启动 | 0032 | 启动 | / | / | / | / | 0033 | 频率 | / | / | / | / | 0034 | 模式 |
3.帧头改为FF和FE
程序采用串口中断接受:
- <div style="text-align: left;"><font size="3" face="宋体">void GTR_com_COM(void) interrupt 4</div><div style="text-align: left;">{</div><div style="text-align: left;"> if(RI)</div><div style="text-align: left;"> {</div><div style="text-align: left;"> RI=0;</div><div style="text-align: left;"> s_sp_bit=true;</div><div style="text-align: left;"> }</div><div style="text-align: left;">}</font></div>
复制代码
帧头接受完后数据入缓存,然后对缓存的数据解析。
串口发送采用阻塞方式:
调光采用定时器来模拟PWM的方式和定时,时间步长为1秒,最大为60秒。
备注说明:如需源码,请在评论区回复邮箱获取,谢谢!
|