標(biāo)題: 請問LCD1602如何顯示長度未知的十進制的數(shù)據(jù)呢? [打印本頁]

作者: 明日香    時間: 2020-11-6 16:52
標(biāo)題: 請問LCD1602如何顯示長度未知的十進制的數(shù)據(jù)呢?
這是我的源程序:
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint  unsigned int
#define IODATA  P0
sbit E=P2^2;    //1602使能引腳
sbit RW=P2^1;    //1602讀寫引腳   
sbit RS=P2^0;    //1602數(shù)據(jù)/命令選擇引腳
int table=16;//要顯示的數(shù)據(jù)
void delay(uint ms)
{
uint i,j;
        for(i=ms;i>0;i--);
       
         for(j=110;j>0;j--);

}

void wcmd(uchar del)//寫命令函數(shù)
{
  RS=0;//命令選擇端
       
        RW=0;//寫命令
       
        IODATA=del;  //把命令字寫入

         delay(10);
        E=1;//使能
       
        E=0;
}

void lcd1602_writedata(uchar dat)//寫數(shù)據(jù)函數(shù)
{
        RS=1;//數(shù)據(jù)選擇端
        RW=0;//寫命令
        IODATA=dat;  //把要顯示的數(shù)據(jù)寫入
        delay(10);
        E=1;
        E=0;
}

void lcd1602_init()//LCD初始化
{
wcmd(0x38);
wcmd(0x0C);
wcmd(0x06);
wcmd(0x01);
}


void main()
{
uchar m=0;
lcd1602_init();
        delay(1000);
wcmd(0x80);
        delay(1000);
        //for(m=0;m<4;m++)
        //{
zhuanhuan()
lcd1602_writedata(int);
                delay(1000);
        //}
        while(1);
}

最后顯示的是一個“Z”,請問這是怎么回事呢?該如何修改程序呢?謝謝。





歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1