; ********************************************
; Function : 電源掉電模式示例程序 *
; MICroProcessor : HT48R50A-1/28SKDIP-A *
; Author: www.picavr.com *
; Crystal : 4MHz *
; ********************************************
#INCLUDE HT48R50A-1.INC
LCD_DATA EQU PB
LCD_DATA_CTRL EQU PBC
LCD_CTRL EQU PC
LCD_CTRL_CTRL EQU PCC
E EQU 5
RS EQU 3
;--------------------------------------------------------------------
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]
EXE_INT_FLAG DB ? ;[65H]
;--------------------------------------------------------------------
CODE .SECTION AT 00H ’CODE’
ORG 00
JMP START
ORG 04H
JMP INTERRUPT
ORG 0CH
JMP TIMER1
ORG 20H
START:
CLR LCD_DATA_CTRL
CLR LCD_CTRL_CTRL
CLR LCD_DATA
CLR LCD_CTRL
CLR PAC
CLR EXE_INT_FLAG
CALL LCD_RESET
MOV A,0BH
MOV INTC,A
MOV A,80H
MOV TMR1C,A
SLEEP:
MOV A,OFFSET LCD_MESSAGE_1
MOV TBLP,A
CALL LCD_DISPLAY
HALT
;--------------------------------------------------------------------
SIZ EXE_INT_FLAG
JMP PORT_7
JMP SLEEP
PORT_7:
MOV A,OFFSET LCD_MESSAGE_3
MOV TBLP,A
CALL LCD_DISPLAY
MOV A,OFFSET MUSIC_DATA
MOV TBLP,A
MOV A,08H
MOV COUNTER,A
PLAY_MUSIC:
TABRDL DATA
MOV A,DATA
MOV TMR1L,A
INC TBLP
TABRDL DATA
MOV A,DATA
MOV TMR1H,A
INC TBLP
SET TMR1C.4
CALL DELAY
SDZ COUNTER
JMP PLAY_MUSIC
CLR TMR1C.4
JMP SLEEP
RET
;--------------------------------------------------------------------
INTERRUPT:
MOV A,OFFSET LCD_MESSAGE_2
MOV TBLP,A
CALL LCD_DISPLAY
MOV A,10H
MOV COUNTER,A
MOV A,OFFSET SEGMENT_DATA
MOV TBLP,A
LOOP_INT:
TABRDL DATA
MOV A,DATA
MOV PA,A
CALL DELAY
INC TBLP
SDZ COUNTER
JMP LOOP_INT
SET PA
CLR INTC.4
SET EXE_INT_FLAG
RETI
;--------------------------------------------------------------------
TIMER1:
SZ PC.2
JMP OUTPUT_0
SET PC.2
JMP OUTPUT_END
OUTPUT_0:
CLR PC.2
OUTPUT_END:
RETI
;--------------------------------------------------------------------
LCD_RESET PROC
MOV A,30H ; LCD reset , step 1
MOV LCD_DATA,A ;
CALL WRITE ;
CALL DELAY ; LCD reset , step 2
MOV A,30H ; LCD reset , step 3
MOV LCD_DATA,A ;
CALL WRITE ;
CALL DELAY ; LCD reset , step 4
MOV A,30H ; LCD reset , step 5
MOV LCD_DATA,A ;
CALL WRITE ;
MOV A,38H ; LCD setting , step 1
MOV LCD_DATA,A ; function set
CALL WRITE ;
MOV A,06H ; LCD setting , step 2
MOV LCD_DATA,A ; entry mode set
CALL WRITE ;
MOV A,01H ; LCD setting , step 3
MOV LCD_DATA,A ; display clear
CALL WRITE ;
CALL DELAY ;
MOV A,0EH ; LCD setting , step 4
MOV LCD_DATA,A ; display turn on
CALL WRITE ;
RET
LCD_RESET ENDP
;--------------------------------------------------------------------
LCD_DISPLAY PROC
MOV A,01H ; LCD setting , step 5
MOV LCD_DATA,A ; display clear
CALL WRITE ;
CALL DELAY ;
MOV A,80H ; LCD setting , step 6
MOV LCD_DATA,A ; DD RAM address setting
CALL WRITE ; address = 00h (first line)
SET LCD_CTRL.RS ; LCD setting , step 7
MOV A,10H ; write data to DD RAM
MOV COUNTER,A
DISPLAY1:
TABRDL DATA
MOV A,DATA
MOV LCD_DATA,A
CALL WRITE
INC TBLP
SDZ COUNTER
JMP DISPLAY1
CLR LCD_CTRL.RS ;
MOV A,0C0H ; LCD setting , step 8
MOV LCD_DATA,A ; DD RAM address setting
CALL WRITE ; address = 40h (second line)
SET LCD_CTRL.RS ; LCD setting , step 9
MOV A,10H ; write data to DD RAM
MOV COUNTER,A
DISPLAY2:
TABRDL DATA
MOV A,DATA
MOV LCD_DATA,A
CALL WRITE
INC TBLP
SDZ COUNTER
JMP DISPLAY2
CLR LCD_CTRL.RS
RET
LCD_DISPLAY ENDP
;--------------------------------------------------------------------
WRITE PROC
SET LCD_CTRL.E
CLR LCD_CTRL.E
MOV A,0FFH
MOV DELAY_COUNTER_1,A
WAIT:
SDZ DELAY_COUNTER_1
JMP WAIT
RET
WRITE ENDP
;--------------------------------------------------------------------
DELAY PROC
MOV A,03H
MOV DELAY_COUNTER_1,A
MOV DELAY_COUNTER_2,A
MOV DELAY_COUNTER_3,A
DELAY_WAIT:
SDZ DELAY_COUNTER_3
JMP DELAY_WAIT
SDZ DELAY_COUNTER_2
JMP DELAY_WAIT
SDZ DELAY_COUNTER_1
JMP DELAY_WAIT
RET
DELAY ENDP
;--------------------------------------------------------------------
ORG 0F00H
LCD_MESSAGE_1: ;[Power Down mode!]
;[I am sleePINg..!]
DC 50H,6FH,77H,65H,72H,20H,44H,6FH
DC 77H,6EH,20H,6DH,6FH,64H,65H,21H
DC 49H,20H,61H,6DH,20H,73H,6CH,65H
DC 65H,70H,69H,6EH,67H,2EH,2EH,21H
LCD_MESSAGE_2: ;[INTB wake me up!]
;[Good morning sir]
DC 49H,4EH,54H,42H,20H,77H,61H,6BH
DC 65H,20H,6DH,65H,20H,75H,70H,21H
DC 47H,6FH,6FH,64H,20H,6DH,6FH,72H
DC 6EH,69H,6EH,67H,20H,73H,69H,72H
LCD_MESSAGE_3: ;[PA.7 wake me up!]
;[I love you baby ]
DC 50H,41H,2EH,37H,20H,77H,61H,6BH
DC 65H,20H,6DH,65H,20H,75H,70H,21H
DC 49H,20H,6CH,6FH,76H,65H,20H,79H
DC 6FH,75H,20H,62H,61H,62H,79H,20H
SEGMENT_DATA: ;7 SEGMENT DATA (COMMON ANODE)
DC 081H,0CFH,092H,086H ;0123
DC 0CCH,0A4H,0A0H,08FH ;4567
DC 080H,084H,088H,0E0H ;89AB
DC 0B1H,0C2H,0B0H,0B8H ;CDEF
MUSIC_DATA: ;MUSIC DATA
DC 043H,0FCH,0B1H,0FCH
DC 009H,0FDH,033H,0FDH
DC 083H,0FDH,0C7H,0FDH
DC 005H,0FEH,023H,0FEH
;--------------------------------------------------------------------
END
上一篇:HT48R50A的 93C46示例程序
下一篇:HT48R50A的 5X7 LED點陣+LCD顯示示例程序
推薦閱讀
史海拾趣
宜源科技公司深知品質對于企業(yè)長遠發(fā)展的重要性。因此,公司從原材料采購到生產(chǎn)流程控制,再到產(chǎn)品出廠檢驗,都嚴格遵循國際標準和行業(yè)規(guī)范。通過不斷提升產(chǎn)品品質,宜源科技贏得了客戶的信賴和市場的認可,逐漸樹立起自己的品牌形象。
樂鑫科技自創(chuàng)立之初,就致力于物聯(lián)網(wǎng)(IoT)領域的芯片設計和技術創(chuàng)新。公司憑借其獨特的芯片設計能力和連接技術,成功開發(fā)了一系列具有競爭力的產(chǎn)品,為全球開發(fā)者提供了高效、可靠的物聯(lián)網(wǎng)解決方案。樂鑫科技始終堅持以技術創(chuàng)新為核心,通過自主研發(fā)和持續(xù)投入,不斷提升產(chǎn)品的性能和競爭力。
在Dresden Elektronik公司創(chuàng)立之初,其創(chuàng)始人看中了電子行業(yè)中嵌入式系統(tǒng)技術的巨大潛力。他們憑借對技術的深刻理解和敏銳的市場洞察力,開發(fā)出了一系列高性能、低成本的嵌入式系統(tǒng)解決方案。這些創(chuàng)新產(chǎn)品迅速在市場上獲得了認可,為公司贏得了第一桶金,也為后續(xù)的發(fā)展奠定了堅實的基礎。
2023年,ACAM公司與上海科技大學智造系統(tǒng)工程中心(CASE)簽署了增材制造聯(lián)合研發(fā)、應用研究和教育培訓協(xié)議。這次合作標志著ACAM公司在增材制造領域的布局進一步深化,雙方將共同推動增材制造技術的創(chuàng)新和應用,為行業(yè)的發(fā)展貢獻更多的力量。
這五個故事展示了德國ACAM公司在電子行業(yè)中的發(fā)展歷程和取得的成就。從創(chuàng)立之初的技術突破,到被收購后的技術實力大增,再到超聲波計量領域的革命性突破,以及與高校合作推動增材制造發(fā)展,ACAM公司始終保持著創(chuàng)新的精神和不斷進取的態(tài)度,為電子行業(yè)的發(fā)展做出了重要貢獻。
ACAM公司在超聲波計量領域也取得了革命性的突破。2012年,ACAM公司與世強電訊合作,在第二屆供熱計量技術與管理國際研討會上推出了業(yè)內領先的超聲波熱量表解決方案。這一解決方案利用ACAM公司的先進測量技術,為熱量表廠商和流量計量專家提供了全新的解決方案,受到了廣泛關注。
作為一家有遠見的企業(yè),德立電子深知綠色發(fā)展的重要性。公司積極響應國家環(huán)保政策,推行綠色生產(chǎn)和綠色供應鏈管理。同時,德立電子還積極參與社會公益事業(yè),回饋社會,履行企業(yè)社會責任。
請注意,以上故事框架僅供參考,具體內容和細節(jié)需根據(jù)實際情況進行填充和完善。
今天要介紹的產(chǎn)品,又是一個全球之最,而且MEMS也是最近壇子里比較惹眼的詞匯。 具體產(chǎn)品稿件是這樣說的,大家可以關注下: TDK 集團的分公司TDK-EPC推出了一款商用MEMS麥克風,成為迄今全球最小的、集成了數(shù)字界面的麥克風。愛普科斯T4030的尺 ...… 查看全部問答∨ |
|
近期在做一個項目評估,準備把ATMEL9261為核心的儀器升級為9263的,加入拍照等功能,但是Camara的驅動在WINCE下沒做過,有沒有熟悉的兄弟給點意見,USB camara的驅動實現(xiàn)起來難度大不大?… 查看全部問答∨ |
帖子發(fā)到別的板塊去了,請見諒! http://topic.eeworld.net/u/20090122/23/cfc099f2-873a-4fd8-97d2-35cbe63ea93b.html… 查看全部問答∨ |
我的主板有個Sata接口和IDE接口,原來硬盤接在sata接口,后面我在IDE接口接了個小硬盤,我通過0x170 0x1f0端口通訊 可以讀到sata硬盤的信息,可是讀不到IDE接口硬盤的信息。難道這時IDE接口的端口號不是 00x170或0x1f0,那是什么呢,怎樣才能知道這 ...… 查看全部問答∨ |
IAR怎么把HEAP放到.bss,.data之后?? 發(fā)現(xiàn)IAR默認情況下,總是把HEAP放在了.bss,.data的前面, 有沒有辦法把HEAP放到.bss,.data之后?? Image0082.JPG (28.04 KB) 下載次數(shù):1 2009-12-4 11:30 ...… 查看全部問答∨ |
基于FSSDC-9B506-EK Easy Kit的作品(2) 上一個是智能家居在FSSDC-9B506-EK Easy Kit的實現(xiàn),考慮到嵌入式在農(nóng)業(yè)方面的應用并不多,我們在水稻的種植方面進行了嘗試。所以另一個作品是“基于MB9BF506的干物質增長預測系統(tǒng)”,該方案就是通過檢測水稻生長的環(huán)境變量,根據(jù)歷年的論文所得出 ...… 查看全部問答∨ |
我從一個11.0版本的工程復制了一個工程,然后在下載程序,quartus可以下載,但nios下載,提示 System timestamp mismatch - connected: \"0\", expected:\",sytemid應該是沒問題的,我又重新復制了一個工程,依然這樣的問題,弄了好久,決定把nios ...… 查看全部問答∨ |
設計資源 培訓 開發(fā)板 精華推薦
- 2025中國工博會集成電路展區(qū)陣容揭曉!行業(yè)巨頭齊聚,共繪“芯”藍圖
- 消息稱三星在美“特斯拉專供”2nm 生產(chǎn)線 2026H2 投運,初期產(chǎn)能每月 1~1.5 萬片晶圓
- 黑客如何入侵軟件定義的汽車
- 中國首款國芯腦機智能頭環(huán)正式發(fā)布:非侵入式腦機 全自主國產(chǎn)芯片
- 自動駕駛中Transformer大模型會取代深度學習嗎?
- 這家面板廠在車載OLED領域或再迎新大單
- 激光雷達和攝像頭,誰會是機器人主要的“眼睛”?
- 毫米波雷達技術參數(shù)有哪些?毫米波雷達如何用于機器人導航
- 毫米波雷達技術有哪些優(yōu)勢?如何提高毫米波雷達測距精度
- 工業(yè)邊緣設備的安全啟動,TPM 2.0與可信執(zhí)行環(huán)境(TEE)的硬件級防護
- 與PI一起探索 LinkSwitch-TN2 的秘密看視頻答題贏好禮!
- 下載MPS汽車電機控制技術干貨,贏【Keep體脂秤、自動洗手機套裝、小米保溫杯】,開啟汽車技術進階之旅!
- 分享你遇到的那些bug和解決技巧,贏萬圣節(jié)小驚喜!
- 泰克任意波形發(fā)生器,跨越成本極限,克服挑戰(zhàn)
- 今日競拍:TI SimpleLink Wifi CC3220S
- TI毫米波雷達技術在工業(yè)上的應用
- TI C2000TM的信號鏈實時性評測和使用教程
- “泰”想開車 智能篇:智能網(wǎng)聯(lián)汽車,實現(xiàn)無憂駕駛
- TI 樣片免費申請,曬樣片贏好禮!
- TE智能工廠解決方案,助力工業(yè)數(shù)字化轉型