久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
LCD2004液晶測試程序
[打印本頁]
作者:
hushe
時間:
2015-12-22 22:02
標題:
LCD2004液晶測試程序
51單片機兼容的一個lcd2004程序,液晶顯示成功:
/************************************************************************************************/
/*** LCD2004液晶顯示 ***/
/*** 2018-10-9 ***/
/************************************************************************************************/
#include<aduc812.h>
#define uint unsigned int
#define uchar unsigned char
#define DATA P0 //定義LCM數據總線至P0
sbit RS=P2^5; //寄存器選擇位(0指令1數據)
sbit RW=P2^6; //設置讀寫位(0寫入1讀取)
sbit E=P2^7; //使能為(0禁止1允許)
sbit BF=P1^7;
//uchar line1[]="LCM TEST PROGRAM"; //第一行顯示字符
//uchar line2[]="Everything is OK!"; //第二行顯示字符
//uchar line3[]="aaaaaaaaaaaaaaa"; //第三行顯示字符
//uchar line4[]="bbbbbbbbbbbbbbb"; //第四行顯示字符
void Init_LCD(void); //聲明液晶初始化設置函數
void write_cmd(uchar); //聲明寫指令函數
void write_data(uchar); //聲明寫數據函數
void check_BF(void); //聲明檢測忙信號函數
void delay_1ms(uint); //聲明延時函數
void set_xy(uchar x,uchar y); //聲明顯示位置
void display(uchar x,uchar y,uchar *s); //聲明顯示函數
/*********************1ms延時函數****************************************************************/
void delay_1ms(uint x)
{
uint i,j;
for(i=1;i<x;i++)
for(j=1;j<120;j++);
}
/*********************液晶初始化函數*************************************************************/
void Init_LCD(void)
{
write_cmd(0x38); //設置8位格式,2行,5x7
write_cmd(0x01); //設定輸入方式,增量不移位
write_cmd(0x06); //整體顯示,關光標,不閃爍
write_cmd(0x0c); //清除屏幕顯示
}
/**********************寫指令函數******************************************************************/
void write_cmd(uchar com)
{
check_BF();
RS=0;
RW=0;
DATA=com;
delay_1ms(2);
E=1;
delay_1ms(2);
E=0;
}
/**********************寫數據函數*******************************************************************/
void write_data(uchar chardata)
{
check_BF();
RS=1;
RW=0;
DATA=chardata;
delay_1ms(2);
E=1;
delay_1ms(2);
E=0;
}
/**********************檢查忙碌函數******************************************************************/
void check_BF(void)
{
E=0;
do
{
BF=1;
RS=0;
RW=1;
E=1;
}while(BF==1);
}
/**********************定義顯示位置*******************************************************************/
void set_xy(uchar x,uchar y)
{
uchar add;
if(x==0)
add=0x80+y;
else
if(x==1)
add=0xc0+y;
else
if(x==2)
add=0x94+y;
else
if(x==3)
add=0xd4+y;
write_cmd(add);
}
/**********************顯示函數***********************************************************************/
void display(uchar x,uchar y,uchar *s)
{
set_xy(x,y);
while(*s)
{
DATA=*s;
write_data(*s);
s++;
}
}
/**********************主函數*************************************************************************/
void main()
{
Init_LCD();
while(1)
{
display(0,0,"line1");
display(1,0,"line2");
display(2,0,"line3");
display(3,0,"line4");
}
}
復制代碼
作者:
HWL0541
時間:
2015-12-23 11:54
收藏了謝謝樓主分享
作者:
mysy
時間:
2016-3-16 00:39
67.void check_BF(void)
68.{
69. E=0;
70. do
71. {
72. BF=1;
73. RS=0;
74. RW=1;
75. E=1;
76. }while(BF==1);
77.}
有問題,導致不能顯示。。。
作者:
成一1
時間:
2025-3-26 00:39
仿真試了試,把程序里的忙函數刪除就可以了
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
粉嫩一区二区三区国产精品
|
精品久久一区
|
国产精品一区久久久
|
国产一区二区在线免费观看
|
好姑娘影视在线观看高清
|
国产亚洲一区二区三区
|
精品美女视频在线观看免费软件
|
99影视
|
在线播放中文字幕
|
www.久久国产精品
|
日韩一区二区福利
|
一区二区三区四区在线播放
|
亚洲一区二区三区四区五区中文
|
精品久久精品
|
欧美国产日韩在线观看成人
|
成人av片在线观看
|
欧美日一区二区
|
亚洲激情一区二区
|
国产精品18hdxxxⅹ在线
|
久久精品一区二区
|
国产69精品久久99不卡免费版
|
久久成人免费
|
91精品一区二区三区久久久久
|
伊色综合久久之综合久久
|
国产黄色大片在线免费观看
|
岛国毛片
|
久久久久国色av免费观看性色
|
欧美一级欧美一级在线播放
|
国产超碰人人爽人人做人人爱
|
羞羞色影院
|
一区二区三区在线播放
|
久久精品国产99国产精品
|
成人免费视频在线观看
|
久久久国产一区二区三区
|
91在线资源
|
91久久国产综合久久91精品网站
|
日韩精品久久久
|
亚洲精品福利在线
|
欧美成视频
|
成人伊人网
|
免费播放一级片
|