完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
请教如何将一个动态变化整数发送给1602显示出来?
一般1602输入显示数据都是定义数组或者直接输入,但这是个动态的数,就不知道该怎么输送给1602了。。。 比如我将动态的数赋值给a了,我该怎么再把a的值给lcd1602? 我也考虑过使用占位符,但只会输出,不知道在这里具体应该怎么操作。。。百度半天也没找到想要的答案,,拜托大神给讲讲这里应该怎么写,感谢!! |
|
相关推荐
1 条评论
13个回答
|
|
假设定义一个数组ADC_DATA[5]={0};
那么你程序里的 a=adc/1000; b=(adc%1000)/100; c=(adc%100)/10; d=adc%10; 之后 ADC_DATA[0]=a+0x30; ADC_DATA[1]=b+0x30; ADC_DATA[2]=c+0x30; ADC_DATA[3]=d+0x30; 然后显示ADC_DATA这个数组就可以了
最佳答案
|
|
|
|
我该怎么写才能让lcd显示a的数值而不是显示a
|
|
|
|
把所要显示的数值分解成字段后,送到数组里,再把数组显示出来,要显示实时的数值,在显示上一组数据后,延迟一段时间后再刷新,数组里的值实时更新就好了
|
|
|
|
不太明白你的问题,对于1602或其他显示来说,都是将要显示的内容发给液晶就可以了,所谓的动态数据,只是指这个数据是实时的,那也只是指这个数据是不停变化的,但是显示操作没有不同,对于动态数据,只是需要在显示前更新这个数据,得到数据的最新数值,然后显示。
至于显示的内容是用数组还是变量都没有区别 |
|
|
|
chu23000 发表于 2017-12-14 11:18 这个过程大致明白了,就是具体不知道怎么写,我想把ADC转换的数据用1602显示出来,我先用Get_Adc_Average()函数得到ADC转换后的输出值,令adc=Get_Adc_Average();值,然后用两个函数: void LCD1602_Set_Cursor(u8 x, u8 y) { u16 addr; if (y == 0) addr = 0x00 + x; else addr = 0x40 + x; LCD1602_Write_Cmd(addr | 0x80); } /* 在液晶上显示字符串,(x,y)-对应屏幕上的起始坐标,str-字符串指针 */ void LCD1602_Show_Str(u8 x, u8 y, u8 *str) { LCD1602_Set_Cursor(x, y); while(*str != ' |