|
樓主錯得不是一兩處,抄的不認(rèn)真,你對比一下就明白。
無標(biāo)題.jpg (91.36 KB, 下載次數(shù): 32)
下載附件
2020-2-16 05:37 上傳
- #include<reg52.h>
- sbit LCD1602_RS=P2^4;
- sbit LCD1602_RW=P2^5;
- sbit LCD1602_EN=P2^6;
- //sbit LCD1602_DB=P0;
- <font color="#ff0000">#define LCD1602_DB P0</font>
- unsigned int i;
- unsigned char code shuzu1[]="1234567890123456";
- unsigned char code shuzu2[]="9876543210987654";
- void Read_Busy() //忙檢測函數(shù),判斷bit7是0,允許執(zhí)行;1禁止
- {
- unsigned char sta; //
- LCD1602_DB = 0xff;
- LCD1602_RS = 0;
- LCD1602_RW = 1;
- do
- {
- LCD1602_EN = 1;
- sta = LCD1602_DB;
- LCD1602_EN = 0; //使能,用完就拉低,釋放總線
- }while(sta & 0x80);
- }
- void Lcd1602_Write_Cmd(unsigned char cmd) //寫命令
- {
- Read_Busy();//忙檢測函數(shù),判斷bit7是0,允許執(zhí)行;1禁止
- LCD1602_RS = 0;//RS數(shù)據(jù)命令選擇RS=1數(shù)據(jù) RS=0命令
- LCD1602_RW = 0;//讀寫選擇 RW=1讀取 RW=0寫
- LCD1602_DB = cmd;//命令放到P0(假設(shè))上
- LCD1602_EN = 1;//*****************使能信號 =1開始工作
- LCD1602_EN = 0; //*****************使能信號 =1開始工作
- }
- void Lcd1602_Write_Data(unsigned char dat) //寫數(shù)據(jù)
- {
- Read_Busy();//忙檢測函數(shù),判斷bit7是0,允許執(zhí)行;1禁止
- LCD1602_RS = 1;//RS數(shù)據(jù)命令選擇RS=1數(shù)據(jù) RS=0命令
- LCD1602_RW = 0;//讀寫選擇 RW=1讀取 RW=0寫
- LCD1602_DB = dat;//數(shù)據(jù)放到P0(假設(shè))上
- LCD1602_EN = 1;//使能開
- LCD1602_EN = 0;//使能關(guān)
- }
- void InitLcd1602() //1602初始化 共5組初始化寄存器
- {
- Lcd1602_Write_Cmd(0x38); //打開,5*8,8位數(shù)據(jù) 00111000
- Lcd1602_Write_Cmd(0x0c); //00001100后三位表示 開顯示 不顯光標(biāo) 光標(biāo)不閃爍
- Lcd1602_Write_Cmd(0x06); //00000110 //寫一個字符后地址指針加一
- Lcd1602_Write_Cmd(0x01); //清屏
- }
- //viod main()
- <font color="#ff0000">void main()</font>
- {
- InitLcd1602();
- <font color="#ff0000"> Lcd1602_Write_Cmd(0x80);</font>
- // for(i = 0; i < 16; i++);
- <font color="#ff0000"> for(i = 0; i < 16; i++)</font>
- {
- Lcd1602_Write_Data(shuzu1[i]);
- }
- // void Lcd1602_Write_Cmd(0x80+0x40);
- <font color="#ff0000"> Lcd1602_Write_Cmd(0x80+0x40);</font>
- // for(i = 0; i < 16; i++);
- <font color="#ff0000"> for(i = 0; i < 16; i++)</font>
- {
- Lcd1602_Write_Data(shuzu2[i]);
- }
- while(1);
- }
復(fù)制代碼
|
|