国产精品久久久久影院,成人午夜福利视频,国产精品久久久久高潮,国产精品 欧美 亚洲 制服,国产精品白浆无码流出

AT93C46匯編讀寫示例程序; 說明: 軟件包僅適用于93C46 8位存儲器結(jié)構(gòu)狀態(tài),軟件包可嵌入到80C51 ROM中任一空間。 
; fosc = 12MHz 
;---------------------------------------------------------- 
    R31    EQU    1FH 

    CS    EQU    P1.0    ;片選端 
    SK    EQU    P1.1    ;模擬時(shí)鐘信號輸出端 
    DI    EQU    P1.2    ;串行數(shù)據(jù)輸出端 
    DO    EQU    P1.3    ;串行數(shù)據(jù)輸入端 
;---------------------------------------------------------- 
    ORG    0000H 
    JMP    MAIN 

    ORG    0100H 
MAIN: 
    MOV    R0,#7FH 
    CLR    A 
    MOV    @R0,A 
    DJNZ    R0,$-2 
    MOV    SP,#60H 
MAIN1: 
    MOV    R0,#30H 
    MOV    R7,#16 
    MOV    A,#1 
    MOV    @R0,A 
    INC    R0 
    INC    A 
    DJNZ    R7,$-3 
             
    CALL    EWNE        ;擦寫允許 
    MOV    A,#01100000B    ;地址"11xxxxx" 
    CALL    INADR        ;輸出地址 
     
    CALL    EWNE        ;片擦除(將整個(gè)存儲器置為"1") 
    MOV    A,#01000000B    ;片擦除地址 
    CALL    INADREW        ;輸出地址         
    CALL    DLY10ms     
     
    CALL    RD16        ;讀指定地址單元的數(shù)據(jù) 
             
    CALL    WRITE        ;將數(shù)據(jù)寫入指定地址單元 
     
    CALL    ERASE        ;擦除(將指定地址單元置為"1")     
    MOV    A,#01H        ;地址 
    CALL    INADREW        ;輸出地址         
    CALL    DLY10ms 
     
    CALL    RD16        ;讀 
     
    CALL    EWNE        ;擦/寫禁止 
    MOV    A,#0        ;地址"00xxxxx" 
    CALL    INADR        ;輸出地址 
         
    JMP    MAIN1 
;========================================================== 
;---------------------------------------------------------- 
;將存在80C51內(nèi)RAM 30H為首地址的16字節(jié)數(shù)據(jù)依次寫入93C46首址00H的EEPROM 
;注意: 93C46上電復(fù)位后,芯片處于寫保護(hù)狀態(tài),所以在擦寫操作前,應(yīng)開啟"寫允許". 
;否則無法寫入數(shù)據(jù). 

WRITE:     
    MOV    A,#01100000B    ;地址"11xxxxx" 
    CALL    INADR        ;輸出地址     
    MOV    R0,#30H        ;置源數(shù)據(jù)區(qū)首址 
    MOV    R1,#00H        ;置93C46寫入單元首址 
    MOV    R7,#16        ;字節(jié)數(shù) 
    CALL    WRIT6     
    RET 
;---------------------------------------------------------- 
;將AT93C46 首址為00H的16字節(jié)數(shù)據(jù)讀出并存入80C51以30H為首址的內(nèi)RAM中 

RD16:    MOV    R0,#20H        ;置數(shù)據(jù)存儲區(qū)首址 
    MOV    A,#00H        ;置93C46讀出單元首地址     
    MOV    R7,#16        ;字節(jié)數(shù)送R7 
    LCALL    STATRD        ;啟動讀 
    LCALL    INADR        ;輸出93C46讀出單元首址 
RD160:     
    LCALL    READ        ;讀出一個(gè)字節(jié)數(shù)據(jù) 
    MOV    @R0,A        ;存一個(gè)字節(jié)數(shù)據(jù) 
    INC    R0        ;指向下一存儲單元地址 
    DJNZ    R7,RD160    ;判16字節(jié)數(shù)據(jù)讀完否?未完繼續(xù) 
    CLR    CS        ;16字節(jié)數(shù)據(jù)讀完,置93C46低功耗備用狀態(tài) 
    CALL    DLY10ms        ;延時(shí)10ms,以便進(jìn)行芯片的其它功能操作 
    RET 
;---------------------------------------------------------- 
;入口: 數(shù)據(jù)區(qū)首址在R0,93C46單元地址在R1,寫入的字節(jié)數(shù)在R7中 
     
WRIT6:             
    LCALL    STATWR        ;啟動寫 
    MOV    A,R1        ;置93C46寫入單元地址 
    LCALL    INADR        ;輸出93C46寫入地址單元 
    MOV    A,@R0        ;讀寫入數(shù)據(jù) 
    LCALL    WRIT        ;寫入一個(gè)字節(jié)     
    LCALL    DLY1ms        ;延時(shí)1ms 
    INC    R0        ;指向8051下一個(gè)數(shù)據(jù)地址 
    INC    R1        ;指向93C46下一個(gè)寫入單元地址 
    DJNZ    R7,WR61        ;判6字節(jié)數(shù)據(jù)寫完否?未完繼續(xù)     
    CLR    CS        ;93C46進(jìn)入備用狀態(tài),降低功耗 
    CALL    DLY10ms 
    RET 
WR61:    JB    DO,WRIT6    ;判REDAY/BUSY,DO=1,寫入下一字節(jié) 
    SJMP    WR61        ;DO=0,轉(zhuǎn)等待 

;========================================================== 
; 啟動讀子程序 
; 說明: STATRD子程序輸出啟動和讀操作代碼"110" 
;---------------------------------------------------------- 
STATRD: 
    CLR    CS    ;片選置低 
    CLR    SK    ;時(shí)鐘置低 
    SETB    CS     
    SETB    DI    ;置啟動"1" 
    SETB    SK    ;時(shí)鐘上升沿輸出啟動信號"1" 
    CLR    SK 
    SETB    SK    ;時(shí)鐘上升沿輸出"1" 
    CLR    SK 
    CLR    DI    ;置輸出"0" 
    SETB    SK    ;時(shí)鐘上升沿輸出"0" 
    CLR    SK    ;時(shí)鐘置低 
    RET 
;----------------------------------------------------------     
; 啟動寫子程序 
; 說明: STATWR子程序輸出啟動和寫操作代碼"101" 
;---------------------------------------------------------- 
STATWR: 
    CLR    CS    ;片選置低 
    CLR    SK    ;時(shí)鐘置低 
    SETB    CS    ;置片選 
    SETB    DI    ;置啟動"1" 
    SETB    SK    ;時(shí)鐘上升沿輸出啟動信號"1" 
    CLR    SK 
    CLR    DI    ;置輸出"0" 
    SETB    SK    ;時(shí)鐘上升沿輸出"0" 
    CLR    SK 
    SETB    DI    ;置輸出"1" 
    SETB    SK    ;時(shí)鐘上升沿輸出"1" 
    CLR    SK    ;時(shí)鐘置低 
    RET 
;---------------------------------------------------------- 
; 擦寫允許/禁止啟動和操作代碼 "100" 
; 該子程序可用于: 擦寫允許(EWEN)、寫禁止(EWDS)、片寫(WRAL)、片擦除(ERAL), 
; 只是各自的地址不同而也. 
; 擦寫允許/禁止操作代碼"100",地址"11xxxxx"/"00xxxxx" 
;---------------------------------------------------------- 
EWNE:         
    CLR    CS    ;片選置低 
    CLR    SK    ;時(shí)鐘置低 
    SETB    CS    ;置片選 
    SETB    DI    ;置啟動"1" 
    SETB    SK    ;時(shí)鐘上升沿輸出啟動信號"1" 
    CLR    SK 
    CLR    DI    ;置輸出"0" 
    SETB    SK    ;時(shí)鐘上升沿輸出"0" 
    CLR    SK 
    CLR    DI    ;置輸出"0" 
    SETB    SK    ;時(shí)鐘上升沿輸出"1" 
    CLR    SK    ;時(shí)鐘置低 
    RET 
;---------------------------------------------------------- 
; 擦指令ERASE  啟動和操作代碼 "111" 
;---------------------------------------------------------- 
ERASE:         
    CLR    CS    ;片選置低 
    CLR    SK    ;時(shí)鐘置低 
    SETB    CS    ;置片選 
    SETB    DI    ;置啟動"1" 
    SETB    SK    ;時(shí)鐘上升沿輸出啟動信號"1" 
    CLR    SK 
    SETB    DI    ;置輸出"1" 
    SETB    SK    ;時(shí)鐘上升沿輸出"0" 
    CLR    SK 
    SETB    DI    ;置輸出"1" 
    SETB    SK    ;時(shí)鐘上升沿輸出"1" 
    CLR    SK    ;時(shí)鐘置低 
    RET 
;----------------------------------------------------------     
; 輸出讀寫單元地址子程序 
; 入口: 7位地址已存在A中D6~D0 
;---------------------------------------------------------- 
INADR: 
    MOV    R2,#7    ;置寫入地址位數(shù)(存儲單元8位結(jié)構(gòu)時(shí),地址為7位) 
    RLC    A    ;先左移一位,地址移至D7~D1,D0無效 
IR1:    CLR    SK    ;時(shí)鐘置低 
    RLC    A    ;左移一位 
    MOV    DI,C    ;存入DI端口 
    SETB    SK    ;時(shí)鐘上升沿輸出至93C46DI端 
    DJNZ    R2,IR1    ;判斷7位地址寫完否,未完繼續(xù)     
    RET 
;---------------------------------------------------------- 
; 輸出擦單元地址子程序 

INADREW: 
    CALL    INADR 
    CLR    CS 
    NOP 
    SETB    CS 
    JNB    DO,$    ; DO=0,表示編程正在進(jìn)行; 
            ; DO=1,表示該指定地址的寄存器單元已擦完,可以執(zhí)行下一條指令。 
    RET 
;---------------------------------------------------------- 
; 讀一個(gè)字節(jié)子程序 
; 出口: 8位數(shù)據(jù)存在A中 
;---------------------------------------------------------- 
READ:    CLR    SK    ;時(shí)鐘置低 
    MOV    R2,#8    ;置讀入位數(shù)8 
RD1:    SETB    SK    ;時(shí)鐘上升沿讀入一位數(shù)據(jù) 
    NOP 
    MOV    C,DO    ;存入Cy 
    RLC    A    ;左移入A中     
    CLR    SK    ;時(shí)鐘置低     
    DJNZ    R2,RD1    ;判8位數(shù)據(jù)讀完否?未完繼續(xù) 
    RET 
;---------------------------------------------------------- 
;確良寫一個(gè)字節(jié)子程序 
; 入口: 寫入數(shù)據(jù)須事先存入A中. 
; 若需寫入多個(gè)字節(jié)數(shù)據(jù),須在1ms后,93C46 DO 端出現(xiàn)高電平后才能重新啟動寫入. 
;---------------------------------------------------------- 
WRIT:     
    MOV    R2,#8    ;置寫入位數(shù)8 
WR1:    CLR    SK    ;時(shí)鐘置低 
    RLC    A    ;A中數(shù)據(jù)移一位至Cy中 
    MOV    DI,C    ;數(shù)據(jù)傳送至DI端 
    nop 
    SETB    SK    ;時(shí)鐘上升沿輸出至93C46 
    DJNZ    R2,WR1    ;判8位數(shù)據(jù)寫完否?未完繼續(xù) 
    CLR    CS    ;8位數(shù)據(jù)寫完,CS下降沿啟動93C46擦寫 
    SETB    CS    ;CS次高位,以使DO端REDAY/BUSY狀態(tài)位號有效 
    RET 
;---------------------------------------------------------- 
DLY1ms:                ;延時(shí)1ms子程序 
    MOV    R31,#29        ; 
L2:    PUSH    R31 
L3:    DJNZ    R31,L3 
    POP    R31 
    DJNZ    R31,L2          
    RET 
DLY10ms:            ;延時(shí)10ms子程序 
    MOV    R31,#100     
L20:    PUSH    R31 
L30:    DJNZ    R31,L30 
    POP    R31 
    DJNZ    R31,L20          
    RET 
;========================================================== 
END


關(guān)鍵字:AT93C46  匯編讀寫 引用地址:AT93C46匯編讀寫示例程序

上一篇: AT93C46/56/57/66 EEPROM 芯片通用讀寫程序
下一篇:時(shí)鐘芯片ds12c887的驅(qū)動程序

推薦閱讀

  2018年國際消費(fèi)電子展將于1月9日至12日在美國拉斯維加斯盛大開幕。據(jù)悉,本次展覽吸引3900余家企業(yè)參展。CES作為一年一度世界上最大、影響最為廣泛的消費(fèi)類電子技術(shù)展,國際知名的傳統(tǒng)消費(fèi)類電子廠商和IT核心廠商均將其視為公司最先進(jìn)技術(shù)理念和產(chǎn)品發(fā)布的重要平臺?! ×硗?,CES2018最佳創(chuàng)新獎獲獎名單也體現(xiàn)出消費(fèi)電子技術(shù)未來的發(fā)展趨勢。例如智能...
據(jù)外媒報(bào)道,近日,沃爾沃公布了一款創(chuàng)新型車載攝像頭,面向駕駛者,通過面部識別,監(jiān)測駕駛員的血糖水平,還能根據(jù)不同駕駛員對車內(nèi)環(huán)境進(jìn)行個(gè)性化調(diào)整,提供更為安全與舒適的駕駛體驗(yàn)。沃爾沃首席數(shù)字官Atif Rafiq表示,該攝像頭技術(shù)很先進(jìn),可以通過瞳孔監(jiān)測駕駛者的血糖水平,在發(fā)現(xiàn)健康問題時(shí)通知醫(yī)院和駕駛員的親人。安裝有該攝像頭的XC90車型可以...
MSP430模數(shù)轉(zhuǎn)換模塊--ADC12MSP430單片機(jī)的ADC12模塊是一個(gè)12位精度的A/D轉(zhuǎn)換模塊,他具有高速度,通用性等特點(diǎn)。大部分都內(nèi)置了ADC模塊.而有些不帶ADC模塊的片子,也可通過利用內(nèi)置的模擬比較器來實(shí)現(xiàn)AD的轉(zhuǎn)換。在系列產(chǎn)品中,我們可以通過以下列表來簡單地認(rèn)識他們的ADC功能實(shí)現(xiàn)。 系列型號 ADC功能實(shí)現(xiàn) 轉(zhuǎn)換精度 MSP430X1XX2 比較器實(shí)現(xiàn) ...
  得益于各地積極有效的疫情防控措施,元旦期間,我國餐飲、零售、旅游市場迎來新年第一輪熱潮,服務(wù)消費(fèi)更是加快回暖。   元旦,人們自然少不了線下“狂歡”,迎接新年,一掃2020年的不易。但,狂歡的同時(shí)也加劇了各個(gè)場景下的服務(wù)壓力,因此,越來越多的服務(wù)機(jī)器人融入場景,助力元旦假期。   一、送餐機(jī)器人   元旦期間,全國各地都迎來了...

史海拾趣

問答坊 | AI 解惑

DSP求學(xué)歷程

1. 接觸DSP 在參加過一次社會上多的盡乎到了泛濫地步的\"DSPxxx\"培訓(xùn)班之后,我\"自信\"已經(jīng)具備DSP工程師資格,便欣喜若狂跑道書店買了一本名為\"DSP xxx應(yīng)用\"的書,作者叫xxx,并且是這個(gè)領(lǐng)域的牛人,這本書確實(shí)是很出色的書籍。但是當(dāng)時(shí),對 ...…

查看全部問答∨

請教方波轉(zhuǎn)正弦波濾波器的設(shè)計(jì)

我想將方波(關(guān)于x軸對稱,即正負(fù)值各半個(gè)周期)轉(zhuǎn)成正弦波(或類似正弦波),我現(xiàn)在的方法是對方波加濾波器進(jìn)行多次濾波,但是我發(fā)現(xiàn)輸出的波形在x軸的上方,并不是關(guān)于x軸對稱。那么我要如何才能得到像標(biāo)準(zhǔn)正弦波那樣嚴(yán)格關(guān)于x軸對稱的波形呢?因?yàn)?...…

查看全部問答∨

數(shù)字電視和機(jī)頂盒要不要集成在一起?

這個(gè)問題,比較大,爭議很多。…

查看全部問答∨

關(guān)于晶振?

看datasheet時(shí)經(jīng)常會遇到晶振的問題,上網(wǎng)查了些資料感覺還是很迷茫,說的太理論了,希望高手給予解答,謝謝 1,晶振有什么作用? 2,晶振和時(shí)序有什么關(guān)系? 3,為什么需要有不同的晶振在一個(gè)板子上? 4,在程序中發(fā)現(xiàn)可以用定時(shí)器根據(jù)不同的晶振調(diào)整波特 ...…

查看全部問答∨

寫給同齡電子專業(yè)大學(xué)生(非經(jīng)驗(yàn))

      最近總算是走出了迷茫,所以可以靜下心來去寫寫自己的打算。長期以來自己都是在看別人的文章,然后轉(zhuǎn)載,評論,的卻學(xué)到了許多的過來人的經(jīng)驗(yàn)。這幾天每天都要將郭天祥寫得那片文章看幾遍,每次看完之后都會更加堅(jiān) ...…

查看全部問答∨

【 信號處理】基于FPGA的RFID系統(tǒng)解碼模塊設(shè)計(jì)

本文要介紹的解碼模塊是基于ISO/IEC15693標(biāo)準(zhǔn)設(shè)計(jì)的,實(shí)現(xiàn)了從帶干擾的返回信號(此信號已經(jīng)去掉載波)中精確的提取標(biāo)簽信息的功能。此設(shè)計(jì)直接影響識別的準(zhǔn)確性。   [ 本帖最后由 hangsky 于 2012-1-27 13:52 編輯 ]…

查看全部問答∨

EE Logic 成本估計(jì)

今天閑著,把邏輯分析儀上要用到的芯片搜了搜價(jià)格。同時(shí)也把板子發(fā)出去打板了。 芯片大致參考價(jià)格如下: FPGA                     40 - 80¥(根據(jù)具體型號,價(jià)格也不太 ...…

查看全部問答∨

【TI首屆低功耗設(shè)計(jì)大賽】msp430fr5969 第二貼+開箱例程

本帖最后由 君羽落 于 2014-9-14 16:57 編輯 很榮幸這個(gè)比賽是第一批入圍的,板子來的比入圍通知還快~感謝EEWORLD! 拿到板子也有一段時(shí)間了,剛拿到板子那會兒正準(zhǔn)備電賽呢,所以也沒怎么測試,試了下開箱Demo,這塊板子的開箱例程有GUI交互的 ...…

查看全部問答∨

labview串口采集數(shù)據(jù)問題

我的串口采集程序,我用串口調(diào)試助手發(fā)送數(shù)據(jù)輸入的字符串是AAAA57EA393F35EAAA82 我采集到的就變成了393F35EAAA82AAAA57EA 有高手知道修改程序嗎,急求 …

查看全部問答∨
小廣播
設(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