資源描述:
《液晶顯示實(shí)驗(yàn)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、液晶顯示實(shí)驗(yàn)實(shí)驗(yàn)?zāi)康膶?shí)驗(yàn)器材硬件接線VB界面軟件功能程序清單備注說(shuō)明<<<1實(shí)驗(yàn)?zāi)康?不使用單片機(jī)串行外設(shè)接(SPI)進(jìn)行點(diǎn)陣字符型液晶顯示(LCD)編程2實(shí)驗(yàn)器材:1.SD-1型在線編程實(shí)驗(yàn)儀2.LCD(HD44780)3.導(dǎo)線若干3硬件接線:16151413121110090807060504030201LCD(HD44780)PTA7PTA6PTA5PTA4PTA3PTA2PTA1PTA0PTC2PTC1PTC0MC68HC908GP32VCC4VB界面:5程序功能:開(kāi)始運(yùn)行時(shí),LCD顯示“WaitReceiving..”等待接收字符,當(dāng)收到16
2、個(gè)字符時(shí),顯示之,重復(fù)此功能6程序清單:程序說(shuō)明口地址定義SCI串行通信口地址變量定義主程序系統(tǒng)初始化串行口初始化LCD初始化子程序LCD命令執(zhí)行子程序LCD顯示子程序中斷矢量7*------程序說(shuō)明-------------------------------------**文件名:LCD.ASM*硬件連接:1.LCD的DB0-7與單片機(jī)的PORTA的PTA0-7連接作為*輸出*2.LCD的RS,R/W,E與單片機(jī)的PTC0,PTC1,PTC2連接*程序描述:1.開(kāi)始運(yùn)行時(shí),LCD顯示“WaitReceiving..”*2.等待接收字符,當(dāng)收到16個(gè)
3、字符時(shí)顯示之,重復(fù)*此功能*實(shí)驗(yàn)?zāi)康模翰皇褂脝纹瑱C(jī)串行外設(shè)接口(SPI)進(jìn)行點(diǎn)陣字符*型液晶顯示(LCD)編程*--------------------------------------------------*8*------口地址定義--------------------------------PTAEQU$0000;A口數(shù)據(jù)寄存器DDRAEQU$0004;A口數(shù)據(jù)方向寄存器PTCEQU$0002;C口數(shù)據(jù)寄存器DDRCEQU$0006;C口數(shù)據(jù)方向寄存器LCD-RSEQU0;LCD寄存器選擇信號(hào)接PTC0LCD-RWEQU1;讀寫(xiě)信號(hào)接PTC
4、1LCD-EEQU2;LCD使能信號(hào)接PTC29*----SCI串行通信口地址-----------------------------SCC1EQU$0013;SCI控制寄存器1SCC2EQU$0014;SCI控制寄存器2SCS1EQU$0016;串行通信接口狀態(tài)寄存器地址SCDREQU$0018;串行通信接口數(shù)據(jù)寄存器地址SCBREQU$0019;SCI波特率寄存器FULLEQU5;用于SCI接收緩沖器是否滿標(biāo)志位RAMstartAddrequ$0040;RAM的起始地址(因芯片不同可以更改)FlashStartAddrequ$8000;程序開(kāi)始地
5、址(因芯片不同可以更改)*-----變量定義----------------------------------------ORGRAMstartAddr;RAM的起始地址LCD-BUFFERRMB16;存放16字節(jié)10**************************************************-----主程序-------------------------------------ORGFlashStartAddr;程序起始地址MAININIT:NOPLDA#%11111111;A口為輸出STADDRALDA#%0001011
6、1;C口的PTC0-2為輸出STADDRC11*----串行口初始化-------------------------------LDA#%01000000;D6(ENSCI)=1,允許SCI,;其它位為0,正常碼輸出;8位數(shù)據(jù),無(wú)檢驗(yàn)STASCC1LDA#%00001100;允許發(fā)送器,允許接收器,;不允許發(fā)送與接收中斷STASCC2LDA#%00000010;波特率為9600STASCBR12LDHX#$00DISPLAY1:;把要顯示的16個(gè)初始字符;放入LCD-BUFFER中LDADISPLAYBYTES,XSTALCD-BUFFER,XAIX
7、#1CPHX#$10BNEDISPLAY1;循環(huán)16次BRASTARTDISPLAYBYTESFCB"WAITRECEIVING.."START:JSRINIT-LCD;LCD初始化JSRSHOW-LCD-BUFFER;把LCD-BUFFER中的16個(gè)字符;送LCD顯示13LDHX#$00DISPLAY2:;從PC機(jī)接收16個(gè)字符放入;LCD-BUFFER開(kāi)始的內(nèi)存中BRCLRFULL,SCS1,*;與PC機(jī)串行通信,;判斷接收器是否滿LDASCDR;讀SCI數(shù)據(jù)寄存器STALCD-BUFFER,XAIX#1CPHX#$10BNEDISPLAY2JMP
8、START******************************************