用液晶屏幕做了一个类似手机充电时候的显示界面(一个电池外框,里面有进度条从无到最长,然后循环),同时液晶屏上还显示一些采集回来的数据。
问题是:充电进度增长的速度非常快,于是我就加了一个延时。也正是因为延时导致液晶屏数据刷新的速率就会变慢。同时液晶屏幕上显示的秒数也会两三秒才变化一次。
因为等到电池进度条从无到最长的过程结束之后(做成了一个函数),从该函数出来,执行其他的部分。
所以想请教大神们看看有没有什么解决的办法,解决这个快了不行,慢了还是不行的矛盾。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
可以用定时器来控制充电进度快的节奏。
比如 你500ms加一格电的显示, 定时器那边计时 每到500ms 标志位置1
主函数 里面写
if(Timer_500ms_Flag==1)
{
Timer_500ms_Flag=0;
LCD多显示一个电量
}
弄个1ms的定时器做时间源,里面弄个变量xitong_haomiao自加;然后通过读取时间差执行不同的东西,刷屏时间差放小,进度条时间差放大
if(xitong_haomiao-jindutiao_haomiao>=500)
{
jindutiao_haomiao=xitong_haomiao;
//进度条更新
}
if(xitong_haomiao-shuaping_haomiao>=50)
{
shuaping_haomiao=xitong_haomiao;
//刷新屏幕其他部分
}
一周热门 更多>