如何用LCD1602实时显示接收到的数据

2019-07-14 19:08发布

请教如何将一个动态变化整数发送给1602显示出来?
       一般1602输入显示数据都是定义数组或者直接输入,但这是个动态的数,就不知道该怎么输送给1602了。。。      
比如我将动态的数赋值给a了,我该怎么再把a的值给lcd1602?
       我也考虑过使用占位符,但只会输出,不知道在这里具体应该怎么操作。。。百度半天也没找到想要的答案,,拜托大神给讲讲这里应该怎么写,感谢!!

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
10条回答
别抢我的锅
2019-07-15 07:26
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 != '')
        {
                LCD1602_Write_Dat(*str++);
        }
}[/code]
输出到1602显示,令
  1. a=adc/1000;
  2. b=(adc%1000)/100;
  3. c=(adc%100)/10;
  4. d=adc%10;
复制代码
但我不知道该怎么写数组,我觉得我上面定义的数据类型也不对。。也不知道函数要怎么改

一周热门 更多>