音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 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

有個(gè)程序請(qǐng)教,很急啊!!!!

作者:ihafd 欄目:單片機(jī)
有個(gè)程序請(qǐng)教,很急啊!!!!
;為什么紅色的地方有錯(cuò)的?難道這樣的間址方式不對(duì)?請(qǐng)指點(diǎn).
很急啊!!!!!!!!!!!!
org 0000h
ajmp star
org 0020h
star:                     ;初始化把所有的位全部清零

mov a,#00h
mov 20H,a
mov 21H,a
mov 22H,a
mov 23H,a
mov 24H,a
mov 25H,a

stlop: acall DISPLAY        ;調(diào)用顯示
         jnb p3.2,we         ;監(jiān)測(cè)鍵盤,如果p3.2按下那么執(zhí)行顯示
         jnb p3.3,wc
         jb p3.2,stlop

wc:    acall DISPLAY
        acall dims
        jnb p3.3,wc
        acall  RK

we: acall DISPLAY         ;顯示保持!
       acall dims              ;延時(shí)1ms避免鍵盤誤動(dòng)作
       nb p3.2,we             ;如果p3.2還沒有放開繼續(xù)延時(shí)
       ljmp WK
count:                      ;計(jì)算數(shù)據(jù)部分
inc a_bit                     ;個(gè)位加1
mov a,a_bit
cjne a,#10,stlop                ;如果在10以內(nèi)顯示
mov a_bit,#00h                ;如果到了10則清除
inc b_bit                     ;10位加1
mov a,b_bit
cjne a,#10,stlop               ;如果在10以內(nèi)顯示
mov b_bit,#00h               ;如果到了10則清除
inc c_bit                     ;百位加1
mov a,c_bit
cjne a,#10,stlop
mov c_bit,#00h
inc d_bit
mov a,d_bit
cjne a,#10,stlop
mov d_bit,#00h
inc e_bit
mov a,e_bit
cjne a,#10,stlop
mov e_bit,#00h
inc f_bit
mov a,f_bit
cjne a,#10,stlop
mov f_bit,#00h
ajmp stlop

DISPLAY:                        ;顯示

mov dptr,#numtab               ;送數(shù)據(jù)表
mov a,a_bit                    ;送個(gè)位數(shù)據(jù)
MOVC A,@A+DPTR            ;查表
mov p0,a                      ;送p0口顯示
clr p2.6                       ;選中第一個(gè)數(shù)碼管
acall dims                     ;顯示1ms
setb p2.6                      ;關(guān)閉顯示
mov a,b_bit                    ;送10位數(shù)據(jù)
MOVC A,@A+DPTR            ; 查表
mov p0,a                      ;送p0口顯示
clr p2.5                       ;選中第二個(gè)數(shù)碼管
acall dims                    ;顯示1ms
setb p2.5                      ;關(guān)閉顯示
mov a,c_bit
MOVC A,@A+DPTR
mov p0,a
clr p2.4
acall dims
setb p2.4
mov a,d_bit
MOVC A,@A+DPTR
mov p0,a
clr p2.3
acall dims
setb p2.3
mov a,e_bit
MOVC A,@A+DPTR
mov p0,a
clr p2.2
acall dims
setb p2.2
mov a,f_bit
MOVC A,@A+DPTR
mov p0,a
clr p2.1
acall dims
setb p2.1
ret
dims:                      ;數(shù)碼管延時(shí)1MS
MOV R7,#2
DJNZ R7,$
RET
                                             ;數(shù)碼管代碼表
numtab: db 28h,7eh,0a2h,62h,74h,61h,21h,7ah,20h,60h
;0 1 2 3 4 5 6 7 8 9

WK:
        CLR P3.7
        MOV R1,#6H
        MOV R2,#20H
IIC_write:

     SETB P1.0           ;先使IIC總線處于空閑狀態(tài)
     SETB P1.1
     NOP
     CLR P1.1           ;啟動(dòng)IIC總線
     NOP
     CLR P1.0
     MOV A,#0A0H        ;AT24C02七位地址碼1010000和一位寫信號(hào)0
     LCALL write_byte   ;調(diào)用寫一個(gè)字節(jié)數(shù)據(jù)子程序
     MOV A,R2           ;選中AT24C02的20元
     LCALL write_byte
KK:  MOV A,@R2          ;向AT24C02的20H寫數(shù)據(jù)@R2
     LCALL write_byte
     INC R2
     DJNZ R1,KK
     CLR P1.0            ;停止IIC總線,使其處于空閑狀態(tài)
     NOP
     CLR P1.1
     NOP
     SETB P1.0
     NOP
     SETB P1.1
     NOP
     SETB P3.7
     RET

Write_byte:

MOV R7,#08               ;一個(gè)字節(jié)分8次寫
GO1: NOP
CLR P1.0
NOP
RLC A
MOV P1.1,C
SETB P1.0
DJNZ R7,GO1
CLR P1.0                    &
2樓: >>參與討論
xymxym
當(dāng)然有錯(cuò)。!
間接尋址中的Rn的n只能是0或1。

3樓: >>參與討論
xymxym
請(qǐng)教您一下:
“很穩(wěn)啊”是什么意思?好像和這個(gè)主題很難切入!

4樓: >>參與討論
ihafd
是啊!!感謝樓上!!
我很久沒有寫單片機(jī)程序了,把這點(diǎn)忘了!
謝謝!

5樓: >>參與討論
xymxym
不客氣!
不過我建議你在對(duì)E2PROM的操作(讀和寫)間隔時(shí)間要大于10ms。比如在連續(xù)寫時(shí),調(diào)用寫操作之前或之后要加延時(shí)!不然是無法寫進(jìn)的。頁操作也是如此!

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
關(guān)于單片機(jī)固化的問題
[求助]哪個(gè)實(shí)驗(yàn)板好。
請(qǐng)教鍵盤顯示芯片
在p89c51rd2b中,1K的RAM在C51中如何定義?
急求AT45D類芯片的SPI讀寫程序!(c語言)
免費(fèi)注冊(cè)為維庫電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


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