音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊(cè) 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場(chǎng)網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

液晶顯示命令字老是調(diào)試不通,請(qǐng)求幫助呢

作者:lh9865 欄目:單片機(jī)
液晶顯示命令字老是調(diào)試不通,請(qǐng)求幫助呢
我在做液晶顯示呢,19264點(diǎn)陣的,用仿真器調(diào)了一天了,總是BUSY檢測(cè)不通過
郁悶著呢
我把這段程序給貼上來,兄弟能幫我看下嗎,將不勝感激呢
;***液晶屏初始化***
       ;*****分片關(guān)閉顯示屏        
       cbi        LCDM_CSA_PIN,LCDM_CSA_PINNum     
       cbi        LCDM_CSB_PIN,LCDM_CSB_PINNum    ;選中左片
       cbi        LCDM_DI_PIN,LCDM_DI_PINNum    ;置寄存器選擇為L
       sbi        LCDM_RW_PIN,LCDM_RW_PINNum    ;置讀/寫選擇為H
       sbi        LCDM_EN_PIN, LCDM_EN_PINNum   ;使能信號(hào)為H
       rcall      TDELAY2us                     ;延時(shí)2us
       rcall      Twait                         ;檢測(cè)液晶顯示是否忙
       cbi        LCDM_DI_PIN,LCDM_DI_PINNum    ;置寄存器選擇為L
       cbi        LCDM_RW_PIN,LCDM_RW_PINNum    ;置讀/寫選擇為L
       ldi        ADDER, LCDM_OFF_Display       ;置關(guān)閉液晶的控制指令字,
       out        LCDM_DATA_PIN,ADDER           ;輸出到數(shù)據(jù)端口
       sbi        LCDM_EN_PIN, LCDM_EN_PINNum   ;使能信號(hào)為H
       rcall      TDELAY2us                     ;延時(shí)2us
       cbi        LCDM_EN_PIN, LCDM_EN_PINNum   ;使能信號(hào)為L
       
       cbi        LCDM_CSA_PIN,LCDM_CSA_PINNum     
       sbi        LCDM_CSB_PIN,LCDM_CSB_PINNum  ;選中中片
       cbi        LCDM_DI_PIN,LCDM_DI_PINNum    ;置寄存器選擇為L
       sbi        LCDM_RW_PIN,LCDM_RW_PINNum    ;置讀/寫選擇為H
       sbi        LCDM_EN_PIN, LCDM_EN_PINNum   ;使能信號(hào)為H
       rcall      TDELAY2us                     ;延時(shí)2us
       rcall      Twait                         ;檢測(cè)液晶顯示是否忙
       cbi        LCDM_DI_PIN,LCDM_DI_PINNum    ;置寄存器選擇為L
       cbi        LCDM_RW_PIN,LCDM_RW_PINNum    ;置讀/寫選擇為L
       ldi        ADDER, LCDM_OFF_Display       ;置關(guān)閉液晶的控制指令字,
       out        LCDM_DATA_PIN,ADDER           ;輸出到數(shù)據(jù)端口     
       sbi        LCDM_EN_PIN, LCDM_EN_PINNum   ;使能信號(hào)為H
       rcall      TDELAY2us                     ;延時(shí)2us
       cbi        LCDM_EN_PIN, LCDM_EN_PINNum   ;使能信號(hào)為L
       
       sbi        LCDM_CSA_PIN,LCDM_CSA_PINNum     
       cbi        LCDM_CSB_PIN,LCDM_CSB_PINNum  ;選中右片
       cbi        LCDM_DI_PIN,LCDM_DI_PINNum    ;置寄存器選擇為L
       sbi        LCDM_RW_PIN,LCDM_RW_PINNum    ;置讀/寫選擇為H
       sbi        LCDM_EN_PIN, LCDM_EN_PINNum   ;使能信號(hào)為H
       rcall      TDELAY2us                     ;延時(shí)2us
       rcall      Twait                         ;檢測(cè)液晶顯示是否忙
       cbi        LCDM_DI_PIN,LCDM_DI_PINNum    ;置寄存器選擇為L
       cbi        LCDM_RW_PIN,LCDM_RW_PINNum    ;置讀/寫選擇為L
       ldi        ADDER, LCDM_OFF_Display       ;置關(guān)閉液晶的控制指令字,
       out        LCDM_DATA_PIN,ADDER           ;輸出到數(shù)據(jù)端口
       sbi        LCDM_EN_PIN, LCDM_EN_PINNum   ;使能信號(hào)為H
       rcall      TDELAY2us                     ;延時(shí)2us
       cbi        LCDM_EN_PIN, L
2樓: >>參與討論
lh9865
根據(jù)我調(diào)試的結(jié)果,我的推斷是這樣的
根據(jù)我調(diào)試的結(jié)果,我的推斷是這樣的:
  關(guān)閉/打開液晶屏從現(xiàn)象上看是可行,但到設(shè)置起始行時(shí),檢測(cè)BUSY程序就通不過,從命令字可以看出一些問題,在關(guān)閉/打開液晶屏中的命令字中的D7位沒有置1,所以檢測(cè)能通過,而設(shè)置起始行的命令字中D7 位是有置1的,在BUSY檢測(cè)中通不過,可能的原因:
     PA口的數(shù)據(jù)沒有得到來自液晶數(shù)據(jù)口的更新,換句話說,就是根本沒有讀出液晶的狀態(tài)
    如果這樣問題就出來了:
    程序能寫但是不能讀

  很想能有人指點(diǎn)迷津呢,將會(huì)非常感謝,回頭我會(huì)將整個(gè)程序粘上,讓那些同我一樣對(duì)液晶顯示迷惑得到幫助

附:

5.讀狀態(tài)(STATUS READ)
代碼    R/W    D/I    DB7    DB6    DB5    DB4    DB3    DB2    DB1    DB0
形式    0    1    BUSY    0    ON/
OFF    RET    0    0    0    0
     當(dāng)R/W=1 D/I=0時(shí),在E信號(hào)為“H”的作用下,狀態(tài)分別輸出到數(shù)據(jù)總線(DB7∽DB0)的相應(yīng)位。
BF:前面已敘述過(見BF標(biāo)志位一節(jié))。
ON/OFF:表示DFF觸發(fā)器的狀態(tài)(見DFF觸發(fā)器一節(jié))。
RST:RST=1表示內(nèi)部正在初始化,此時(shí)組件不接受任何指令和數(shù)據(jù)。
1.顯示開關(guān)控制(DISPLAY ON/OFF)
代碼    R/W    D/I    DB7    DB6    DB5    DB4    DB3    DB2    DB1    DB0
形式    0    0    0    0    1    1    1    1    1    D
        D=1:開顯示(DISPLAY ON)意即顯示器可以進(jìn)行各種顯示操作
        D=0:關(guān)顯示(DISPLAY OFF)意即不能對(duì)顯示器可以進(jìn)行各種顯示操作
2.設(shè)置顯示起始行
代碼    R/W    D/I    DB7    DB6    DB5    DB4    DB3    DB2    DB1    DB0
形式    0    0    1    1    A5    A4    A3    A2    A1    A0
        前面在Z地址計(jì)數(shù)器一節(jié)已經(jīng)描述了顯示起始行是由Z地址計(jì)數(shù)器控
   制的。A5∽A0的6位地址自動(dòng)送入Z地址計(jì)數(shù)器,起始行的地址可以是0∽ 63
   的任意一行。
   例如:
   選擇A5∽A0是62,則起始行與DDRAM行的對(duì)應(yīng)關(guān)系如下:
   DDRAM   行:62 63 0 1 2 3•••••••••••••••••••••28 29
   屏幕顯示行:1  2  3 4 5 6•••••••••••••••••••••31 32

3.設(shè)置頁地址
代碼    R/W    D/I    DB7    DB6    DB5    DB4    DB3    DB2    DB1    DB0
形式    0    0    1    0    1    1    1    A2    A1    A0
         所謂頁地址就是DDRAM的行地址,8行為一頁,模塊共64行即8頁, A2
   ∽A0表示0∽7頁。讀寫數(shù)據(jù)對(duì)地址沒有影響,頁地址由本指令或RST信號(hào)
   改變復(fù)位后頁地址為0。頁地址與DDRAM的對(duì)應(yīng)關(guān)系見DDRAM地址表。

4.設(shè)置Y地址(SET Y ADDRESS)
代碼    R/W    D/I    DB7    DB6    DB5    DB4    DB3    DB2    DB1    DB0
形式    0    0    0    1    A5    A4    A3    A2    A1    A0
         此指令的作用是將A5∽A0送入Y地址計(jì)數(shù)器,作為DDRAM的Y地址指
  針。在對(duì)DDRAM進(jìn)行讀寫操作后,Y地址指針自動(dòng)加1,指向下一個(gè)DDRAM單
  元。




3樓: >>參與討論
lh9865
熬了三個(gè)晚上,調(diào)出來了,很累
熬了三個(gè)晚上,調(diào)出來了,很累

4樓: >>參與討論
stycx
恭喜樓主
 
5樓: >>參與討論
ldlglyld
不知摟主用的什么液晶顯示屏?
只要找供應(yīng)商處的技術(shù)工程師就科技了哦
順便提一下我是做香港精電的
有需要的話請(qǐng)聯(lián)系。!
聯(lián)系電話:  010-82600169  82600442
網(wǎng)址:      www.hqlcd.com
郵箱:      ldlglyld@163.com


6樓: >>參與討論
陳雙君
能調(diào)出來不錯(cuò)了的,是一個(gè)人動(dòng)手調(diào)的啊?
能調(diào)出來不錯(cuò)了的,是一個(gè)人動(dòng)手調(diào)的啊?
如果是一個(gè)人沒有和別人一起調(diào)試出來的話那真的是有點(diǎn)耐性,不錯(cuò)不錯(cuò).

7樓: >>參與討論
lh9865
不容易呢
真的不容易呢,可是他們都說這樣的程序應(yīng)該很簡單的,唉,水平不中呢

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
可下載STC89C51系列單片機(jī)
單片機(jī)學(xué)習(xí)套板
哪位高手有專門講ICCAVR的書
沒有使用的指令是使用00進(jìn)行填充好,還是FF好
哪位大俠知道atmeg128L的AD腳和JTAG腳的關(guān)系
免費(fèi)注冊(cè)為維庫電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào)