<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 1602自定義字符顯示攝氏度符號

1602自定義字符顯示攝氏度符號

作者: 時(shí)間:2016-11-30 來(lái)源:網(wǎng)絡(luò ) 收藏
LCD1602的數據寫(xiě)入及CGRAM的使用
1.當使能端E由1變?yōu)?時(shí),執行寫(xiě)指令,數據被寫(xiě)入。
例如,欲寫(xiě)入數據i到DDRAM:
void WDR(uchar i)
{
CheckBusy();//檢忙
LCD_RS=1;
LCD_RW=0;
LCD_EN=0;
Delay();
LCD_DATA=i;//數據輸出到定義端口
Delay();
LCD_EN=1;
Delay();
LCD_EN=0;//這一步才開(kāi)始寫(xiě)入到LCD
Delay();
}
2.CGRAM
1602能存儲8個(gè)自定義字符,這8個(gè)自定義字符存儲空間的首地址分別是:0X40,0X48,0X50,0X58,0X60,0X68,0X70,0X78。
以0x40來(lái)說(shuō),它的存儲空間如圖所示:

如果使用5*7字符的話(huà),那么最左3位和最后一行的數據實(shí)際上是沒(méi)用的,通常置0。如果要自定義一個(gè)℃符號,那么先填框,如圖(紅1白0):
這樣我們就得到每個(gè)地址需要寫(xiě)入的數據:
地址:數據
0x40:0x16
0x41:0x09
0x42:0x08
其他類(lèi)推。將這8個(gè)數據寫(xiě)入到對應地址即可。
使用時(shí),先確定顯示的位置,例如0X80,然后向DDRAM寫(xiě)入自定義字符的使用代碼。0X40-0X78對應為0X00-0X07。
本例中,先寫(xiě)入指令寄存器0X80確定顯示位置為第一行第一個(gè),然后寫(xiě)入數據寄存器0X00,這樣就會(huì )在第一行第一個(gè)位置顯示出℃符號。


以下是源程序如果網(wǎng)頁(yè)格式導致部分字符丟失請下載c程序源文件:http://www.51hei.com/f/avr1602c.rar
#include
#include
#define u8 uchar unsigned char
#define u16 uchar unsigned int
#define uchar unsigned char
#define uint unsigned int
uchar zi[]={0x16,0x09,0x08,0x08,0x08,0x09,0x06,0x00}; //自定義字符攝氏度

#include"1602.h"
#include"18b20.h"

void port_init()
{
PORTA=0xff;
DDRA=0xff;
PORTB=0xff;
DDRB=0xff;
PORTC=0xff;
DDRC=0xff;
PORTD=0xff;
DDRD=0x00;
}
void setzi() //把設定字存入CGRAM
{
uchar i;
writecmd(0x40); //設置第一個(gè)字的起始地址
for(i=0;i<8;i++)
{
writedata(zi[i]);
}
}

void show_temp(uint k)
{
displayonechar(1,1,(k/100)+48);
displayonechar(2,1,(k%100/10)+48);
displayonechar(3,1,.);
displayonechar(4,1,(k%10)+48);
}
void main()
{
uint TT; //顯示的溫度值
port_init();
delay(1000);
init1602();
displaychar(0,0,"Set zi Test");
setzi();
displayonechar(5,1,0x00); //0x00表示 0x40地址的值
while(1)
{
TT=read_temper();
show_temp(TT);
}
}
//---------------1602.h----------------
#define RS PORTB_Bit0
#define RW PORTB_Bit1
#define EN PORTB_Bit2
#define DATA PORTA
#define busy 0x80
void delay(uint k)
{
uint i,j;
for(i=0;ifor(j=0;j<1140;j++);

}

void wait()
{
uchar val;
DATA=0xff;
RS=0;
RW=1;
__no_operation();
__no_operation();
EN=1;
__no_operation();
__no_operation();
DDRA=0x00;
val=PINA;
while(val&busy)
{
val=PINA;
}
EN=0;
DDRA=0xff;
}

上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 1602自定義字符攝氏度符

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>