娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2025年01月26日(星期日)

2018年01月26日 | HT48R50A的 LCD字符顯示+KEY按鍵處理示例程序

發(fā)布者:skyhcg 來源: eefocus關(guān)鍵字:HT48R50A  LCD  字符顯示  按鍵處理 手機(jī)看文章 掃描二維碼
隨時(shí)隨地手機(jī)看文章

LCD字符顯示+KEY按鍵處理示例程序


; ******************************************** 
; Function : LCD字符顯示+KEY按鍵處理示例程序 * 

; MICroProcessor : HT48R50A-1/28SKDIP-A      * 

; Author:         www.picavr.com             * 
Crystal :       4MHz                       * 
; ******************************************** 
#INCLUDE                HT48R50A-1.INC 
LCD_DATA                EQU     PC 
LCD_DATA_CTRL           EQU     PCC 
LCD_CTRL                EQU     PB 
LCD_CTRL_CTRL           EQU     PBC 
E                       EQU     1 
RS                      EQU     0 
;------------------------------------------------------------ 
DATA    .SECTION        AT 60H  ’DATA’ 
DELAY_COUNTER_1         DB      ?       ;[60H] 
DELAY_COUNTER_2         DB      ?       ;[61H] 
DELAY_COUNTER_3         DB      ?       ;[62H] 
DATA                    DB      ?       ;[63H] 
COUNTER                 DB      ?       ;[64H] 
;------------------------------------------------------------ 
CODE    .SECTION        AT 00H  ’CODE’ 
                ORG     00H 
                JMP     START 
                ORG     0CH 
                JMP     TIMER1 

                ORG     20H 
START: 
                 MOV      A,01111111B 
                 MOV      PAC,A 
                CALL    LCD_RESET 
                 MOV      A,OFFSET LCD_MESSAGE_1 
                 MOV      TBLP,A 
                CALL    LCD_DISPLAY 
                 MOV      A,09H 
                 MOV      INTC,A 
                 MOV      A,80H 
                 MOV      TMR1C,A 
FIRST_TIME: 
                 MOV      A,PA 
                AND     A,00010000B 
                SUB     A,00010000B 
                SZ      ACC 
                JMP     FIRST_TIME 
PRESS_ANY_KEY: 
                 MOV      A,OFFSET LCD_MESSAGE_2 
                 MOV      TBLP,A 
                CALL    LCD_DISPLAY 
ANY_KEY: 
                 MOV      A,PA 
                AND     A,00010000B 
                SUB     A,00010000B 
                SZ      ACC 
                JMP     ANY_KEY 
                 MOV      A,PA 
                AND     A,00001111B 
                 MOV      DATA,A 
                SUB     A,09H 
                SZ      ACC 
                JMP     NEXT_CHECK 
                JMP     START 
NEXT_CHECK: 
                 MOV      A,DATA 
                SUB     A,08H 
                SZ      ACC 
                JMP     PLAY_MONOTONY 
                JMP     PLAY_A_SONG 
PLAY_MONOTONY: 
                CALL    MONOTONY 
                JMP     ANY_KEY 
PLAY_A_SONG: 
                 MOV      A,OFFSET LCD_MESSAGE_3 
                 MOV      TBLP,A 
                CALL    LCD_DISPLAY 
                CLR     COUNTER 
PLAY_LOOP: 
                 MOV      A,OFFSET SONG_DATA 
                ADD     A,COUNTER 
                 MOV      TBLP,A 
                TABRDL  DATA 
                DEC     DATA 
                CALL    MONOTONY 
                INC     COUNTER 
                 MOV      A,COUNTER 
                SUB     A,4BH 
                SZ      ACC 
                JMP     PLAY_LOOP 
                JMP     PRESS_ANY_KEY 
                RET 
;------------------------------------------------------------ 
TIMER1: 
                CPL     PA 
                RETI 
;------------------------------------------------------------ 
MONOTONY        PROC 
                 MOV      A,OFFSET MUSIC_DATA 
                ADD     A,DATA 
                 MOV      TBLP,A 
                TABRDL  DATA 
                 MOV      A,DATA 
                 MOV      TMR1L,A 
                 MOV      A,TBLP 
                ADD     A,08H 
                 MOV      TBLP,A 
                TABRDL  DATA 
                 MOV      A,DATA 
                 MOV      TMR1H,A 
                SET     TMR1C.4 
                CALL    DELAY_LONG 
                CLR     TMR1C.4 
                RET 
MONOTONY        ENDP 
;------------------------------------------------------------ 
LCD_RESET       PROC 
                CLR     LCD_DATA_CTRL 
                CLR     LCD_CTRL_CTRL 
                CLR     LCD_DATA 
                CLR     LCD_CTRL 
                 MOV      A,00110011B     ;STEP 0 
                 MOV      DATA,A          ;LCD RESET 
                CALL    TRANSFER        ; 
                 MOV      A,00110010B     ;SETP 1 
                 MOV      DATA,A          ;FUNCTION SET 
                CALL    TRANSFER        ; 
                 MOV      A,00001100B     ;STEP 2 
                 MOV      DATA,A          ;DISPLAY TURN ON 
                CALL    TRANSFER        ; 
                 MOV      A,00000001B     ;STEP 3 
                 MOV      DATA,A          ;DISPLAY CLEAN 
                CALL    TRANSFER        ; 
                CALL    DELAY           ;DELAY SOME TIME 
                 MOV      A,00000110B     ;STEP 4 
                 MOV      DATA,A          ;ENTRY MODE SET 
                CALL    TRANSFER        ; 
                RET 
LCD_RESET       ENDP 
;------------------------------------------------------------ 
LCD_DISPLAY     PROC 
                 MOV      A,10000000B     ;STEP 1 
                 MOV      DATA,A          ;DD RAM ADDRESS SET 
                CALL    TRANSFER        ;FIRST LINE 
                 MOV      A,10H           ;STEP 2-1 
                 MOV      COUNTER,A       ;WRITE DATA TO DD RAM 
FIRST_LINE: 
                CLR     LCD_CTRL.RS 
                 MOV      A,00011100B     ;STEP 2-2 
                 MOV      DATA,A          ;DISPLAY/CURSOR 
                CALL    TRANSFER        ;SHIFT 
                SET     LCD_CTRL.RS 
                TABRDL  DATA 
                CALL    TRANSFER 
                CALL    DELAY 
                INC     TBLP 
                SDZ     COUNTER 
                JMP     FIRST_LINE 
                CLR     LCD_CTRL.RS 

                 MOV      A,11000000B     ;STEP 3 
                 MOV      DATA,A          ;DD RAM ADDRESS SET 
                CALL    TRANSFER        ;SECOND LINE 
                 MOV      A,10H           ;STEP 4-1 
                 MOV      COUNTER,A       ;WRITE DATA TO DD RAM 
SECOND_LINE: 
                CLR     LCD_CTRL.RS 
                 MOV      A,00011000B     ;STEP 4-2 
                 MOV      DATA,A          ;DISPLAY/CURSOR 
                CALL    TRANSFER        ;SHIFT 
                SET     LCD_CTRL.RS 
                TABRDL  DATA 
                CALL    TRANSFER 
                CALL    DELAY 
                INC     TBLP 
                SDZ     COUNTER 
                JMP     SECOND_LINE 
                CLR     LCD_CTRL.RS 
                RET 
LCD_DISPLAY     ENDP 
;------------------------------------------------------------ 
TRANSFER        PROC 
                SWAP    DATA 
                 MOV      A,DATA 
                 MOV      PC,A 
                CALL    WRITE 
                SWAP    DATA 
                 MOV      A,DATA 
                 MOV      PC,A 
                CALL    WRITE 
                RET 
TRANSFER        ENDP 
;------------------------------------------------------------ 
WRITE           PROC 
                SET     LCD_CTRL.E 
                CLR     LCD_CTRL.E 
                 MOV      A,0FFH 
                 MOV      DELAY_COUNTER_1,A 
WRITE_WAIT: 
                SDZ     DELAY_COUNTER_1 
                JMP     WRITE_WAIT 
                RET 
WRITE           ENDP 
;------------------------------------------------------------ 
DELAY           PROC 
                 MOV      A,0A0H 
                 MOV      DELAY_COUNTER_1,A 
                 MOV      DELAY_COUNTER_2,A 
DELAY_WAIT: 
                SDZ     DELAY_COUNTER_2 
                JMP     DELAY_WAIT 
                SDZ     DELAY_COUNTER_1 
                JMP     DELAY_WAIT 
                RET 
DELAY           ENDP 
;------------------------------------------------------------ 
DELAY_LONG      PROC 
                 MOV      A,003H 
                 MOV      DELAY_COUNTER_1,A 
                 MOV      DELAY_COUNTER_2,A 
                 MOV      DELAY_COUNTER_3,A 
DELAY_LONG_WAIT: 
                SDZ     DELAY_COUNTER_3 
                JMP     DELAY_LONG_WAIT 
                SDZ     DELAY_COUNTER_2 
                JMP     DELAY_LONG_WAIT 
                SDZ     DELAY_COUNTER_1 
                JMP     DELAY_LONG_WAIT 
                RET 
DELAY_LONG      ENDP 
;------------------------------------------------------------ 
                ORG     0F00H 
LCD_MESSAGE_1:          ;[LCD 4 BITS DATA ] 
                        ;[TRANSFER TEST OK] 
                DC      4CH,43H,44H,20H,34H,20H,42H,49H 
                DC      54H,53H,20H,44H,41H,54H,41H,20H 
                DC      54H,52H,41H,4EH,53H,46H,45H,52H 
                DC      20H,54H,45H,53H,54H,20H,4FH,4BH 
LCD_MESSAGE_2:          ;[   MINI PIANO   ] 
                        ;[ PRESS ANY KEY! ] 
                DC      20H,20H,20H,4DH,49H,4EH,49H,20H 
                DC      50H,49H,41H,4EH,4FH,20H,20H,20H 
                DC      20H,50H,52H,45H,53H,53H,20H,41H 
                DC      4EH,59H,20H,4BH,45H,59H,21H,20H 
LCD_MESSAGE_3:          ;[   PLAY MUSIC   ] 
                        ;[ JUST A MOMENT! ] 
                DC      20H,20H,20H,50H,4CH,41H,59H,20H 
                DC      4DH,55H,53H,49H,43H,20H,20H,20H 
                DC      20H,4AH,55H,53H,54H,20H,41H,20H 
                DC      4DH,4FH,4DH,45H,4EH,54H,21H,20H 
MUSIC_DATA: 
                DC      043H,0B1H,009H,033H 
                DC      083H,0C7H,005H,023H 
                DC      0FCH,0FCH,0FDH,0FDH 
                DC      0FDH,0FDH,0FEH,0FEH 
SONG_DATA: 
                DC      06H,06H,05H,06H,05H,03H 
                DC      05H,03H,03H,02H,03H,03H 
                DC      02H,02H,01H,02H,02H,05H 
                DC      05H,03H,03H,02H,03H,03H 
                DC      06H,06H,05H,06H,05H,03H 
                DC      04H,04H,04H,03H,02H,03H,03H 
                DC      05H,05H,05H,05H,05H,07H 
                DC      06H,06H,06H,06H,05H,06H,06H 
                DC      08H,08H,08H,07H,05H 
                DC      06H,06H,06H,06H,05H,06H,05H,03H 
                DC      05H,05H,05H,05H,05H,07H 
                DC      06H,06H,06H,06H,05H,06H 
;------------------------------------------------------------ 
                END 


關(guān)鍵字:HT48R50A  LCD  字符顯示  按鍵處理 引用地址:HT48R50A的 LCD字符顯示+KEY按鍵處理示例程序

上一篇:HT48R50A的 5X7 LED點(diǎn)陣+LCD顯示示例程序
下一篇:HT48R50A的4X4按鍵顯示程序

推薦閱讀

本篇文章將介紹使用SPCE061A來做一個(gè)電子琴,并且提供源代碼。如果您有凌陽大學(xué)計(jì)劃的實(shí)驗(yàn)箱,那將很好完成,就是接幾根線的問題,要是沒有也不用著急啦,拿一塊SPCE061A芯片,接個(gè)鍵盤和音頻放大電路就可解決問題,是不是很easy!圖一  整體框圖我們知道,聲音的頻譜范圍約在幾十到幾千赫茲,若能利用程序來控制 單片機(jī) 某個(gè)端口的“高”電平或低電平,...
對兒童心理健康來說,內(nèi)化障礙是一個(gè)隱形殺手。兒童在面對恐懼、害羞等心理異常癥狀時(shí),常常不會表現(xiàn)出來,而是將問題內(nèi)部化。家長不能及時(shí)發(fā)現(xiàn),進(jìn)而導(dǎo)致嚴(yán)重的心理問題。近日,權(quán)威期刊PLOS ONE刊發(fā)了一篇來自密歇根大學(xué)和佛蒙特大學(xué)的論文。研究人員將AI算法與可穿戴設(shè)備結(jié)合,試圖通過數(shù)據(jù)挖掘的方式解決內(nèi)化障礙的早篩難題。論文數(shù)據(jù)表明,該系統(tǒng)可...
工業(yè)機(jī)器人本體競爭格局:四大家族壟斷,國產(chǎn)品牌突圍工業(yè)機(jī)器人“四大家族”日本發(fā)那科、瑞士ABB、日本安川、德國KUKA,在全球高端應(yīng)用領(lǐng)域占有較高市占率。國內(nèi)品牌廣州啟帆、埃夫特、新松、埃斯頓、廣州數(shù)控、新時(shí)達(dá)享受市場增長紅利快速成長,正在國內(nèi)市場實(shí)現(xiàn)突圍。2016年,“四大家族”全球市場中的市占率合計(jì)達(dá)58%,占據(jù)了全球市場份額的超過半壁江...
隨著汽車越來越電氣化和自動化,越來越多的汽車數(shù)據(jù)被數(shù)字化,但對這些數(shù)據(jù)的使用少之又少。而要在嚴(yán)苛的汽車應(yīng)用環(huán)境中診斷和發(fā)現(xiàn)缺陷以及構(gòu)建理解這些因素的功能安全性更是一個(gè)巨大挑戰(zhàn),如何以變應(yīng)變?我們來看看頭部半導(dǎo)體和測試廠商的大佬們怎樣解讀。 自動駕駛:巨大的挑戰(zhàn)和機(jī)遇自動駕駛是不可避免的趨勢,但汽車最重要的是安全可靠,實(shí)現(xiàn)這一目標(biāo)...

史海拾趣

問答坊 | AI 解惑

牛人全手工制作的全鋼雕刻機(jī)~~

我愛模型網(wǎng)上的牛人全手工制作的全鋼雕刻機(jī)過程,原帖http://bbs.5imx.com/bbs/viewthread.php?tid=268300&extra=page%3D1&page=1   機(jī)器做的非常漂亮,覺得他的刀具風(fēng)冷系統(tǒng)和電機(jī)水冷系統(tǒng)的方法適合在家DIY,開口滑塊方便調(diào)整跟光 ...…

查看全部問答∨

模擬的今年找工作是啥情況啊

模擬的今年找工作是啥情況啊…

查看全部問答∨

一早快遞就送到 lm3s8962

9點(diǎn)半,快遞師傅就在門上狂敲   躺在被窩里一想肯定是開發(fā)板送到了    開門一看果然是 打開一看  這熟悉的兩塊板子  看了下帶的SD卡插口  回想起09年去研討會時(shí)把自己手機(jī)的sd卡放進(jìn)去做實(shí) ...…

查看全部問答∨

轉(zhuǎn):看看開關(guān)電源廠家是如何騙人的

把主機(jī)拆開除灰塵,想想順便也把電源也除除灰,拆開一看,感覺哪個(gè)PFC有點(diǎn)不對,順便拆開看看,由于這臺電腦是第一次配的,是一款雜牌電源,當(dāng)時(shí)那JS說230塊機(jī)箱電源隨便選,覺得有問題,不過當(dāng)時(shí)沒經(jīng)驗(yàn),也就沒管那么多~ 凡來壇里的一看就知道, ...…

查看全部問答∨

【征文】學(xué)51已經(jīng)8年了

首先很感謝eeworld給了我這個(gè)平臺,展示我學(xué)51的歷程。同時(shí)也給所有的壇友送一句晚來的祝福:國慶快樂!為了解除大家對密密麻麻文字的產(chǎn)生厭倦,我先用流程圖的形式說下學(xué)51的回憶我學(xué)51是從一個(gè)閃爍的LED燈引起的,小學(xué)四年級的時(shí)候我和我父親到我 ...…

查看全部問答∨

Quartus 并轉(zhuǎn)串

代碼如下:   always @(negedge clk or negedge rst_n)   begin     if(!rst_n)       begin         address      <=  1 ...…

查看全部問答∨

Beaglebone學(xué)習(xí)之5-外圍電路設(shè)計(jì)完成(含原理圖和PCB)

最近公司事情太忙,遲到這么久的設(shè)計(jì)終于完成了,不然真的辜負(fù)EEWORLD和大家的信任了(板子和獎金都到手了),今天已經(jīng)把板子發(fā)出去做,周末應(yīng)該就能回來了,到時(shí)再分享硬件調(diào)試和軟件開發(fā)細(xì)節(jié) 另外板子做了10塊,有興趣的我可以贈送幾塊出來,還有 ...…

查看全部問答∨

MCU工程師煉成記這本書的優(yōu)點(diǎn)有哪些

MCU工程師煉成記,顧名思義,是一本循序漸進(jìn)的書籍,目前單片機(jī)的書有很多,讓新手眼花繚亂,不知所措。如何挑選一本高效,而適合新手接受的書?大家肯定會在網(wǎng)上查詢或者在論壇問高手一些經(jīng)典書籍。  好的書籍優(yōu)點(diǎn)肯定是  結(jié) ...…

查看全部問答∨

一本好書《笑談熱設(shè)計(jì)》部分章節(jié)

本帖最后由 qwqwqw2088 于 2015-6-16 10:05 編輯 《笑談熱設(shè)計(jì)》作者摒棄了科技圖書一貫的公式推導(dǎo)加之仿真測試的寫作形式,轉(zhuǎn)而巧妙地利用高手過招聊天的方式向讀者全面而立體地分享了他多年來的熱設(shè)計(jì)經(jīng)驗(yàn),加之譯者準(zhǔn)確到位的翻譯,可以讓您在 ...…

查看全部問答∨

下載的TSSOP20封裝

下載的TSSOP20封裝文件解壓后文件名后綴是.STEP,如何加入AD10呢?…

查看全部問答∨
小廣播
設(shè)計(jì)資源 培訓(xùn) 開發(fā)板 精華推薦

最新單片機(jī)文章

 
EEWorld訂閱號

 
EEWorld服務(wù)號

 
汽車開發(fā)圈

 
機(jī)器人開發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號 京ICP備10001474號-1 電信業(yè)務(wù)審批[2006]字第258號函 京公網(wǎng)安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 炎陵县| 卓资县| 嘉禾县| 新疆| 大余县| 邢台市| 三原县| 巴楚县| 会泽县| 双桥区| 贡嘎县| 日照市| 宝山区| 龙里县| 牙克石市| 铁岭县| 井冈山市| 仙桃市| 灵宝市| 五河县| 鄂尔多斯市| 古蔺县| 桓仁| 孙吴县| 荆州市| 八宿县| 高碑店市| 洛阳市| 宜宾县| 黔西县| 张掖市| 含山县| 佛冈县| 孟连| 任丘市| 平潭县| 南昌县| 永泰县| 克山县| 兰西县| 博客|