国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

單片機驅(qū)動X25045接口及匯編程序設(shè)計

2013-11-20 11:28
關(guān)鍵詞:看門狗子程序高電平

蘇 暢

(雞西大學(xué),黑龍江 雞西 158100)

1 E2PROM 25045

X25045是美國的Xicor公司生產(chǎn)的標準化8腳串行E2PROM,它將看門狗定時器、E2PROM、電壓監(jiān)控3種基本功能組合在一個封裝內(nèi),采用SPI串行外設(shè)接口方式,降低了硬件設(shè)計成本,提高了系統(tǒng)的可靠性,減少了對印刷電路板的空間要求,降低了系統(tǒng)成本和功耗,是一種比較典型的單片機外圍芯片。X25045外部引腳如圖1所示。

(1)其引腳功能如下。

CS:芯片片選擇輸入端。當(dāng)該引腳保持低電平時X25045工作,該引腳電平變化將復(fù)位看門狗定時器。

SO:串行數(shù)據(jù)輸出端。數(shù)據(jù)在SCK的下降沿輸出到SO引腳上。

SI:串行數(shù)據(jù)輸入端。數(shù)據(jù)或控制字由此引腳串行輸入到X25045。

SCK:串行時鐘輸入端。其上升沿將數(shù)據(jù)或命令寫入,下降沿將數(shù)據(jù)輸出。

WP:寫保護輸入端。當(dāng)它保持低電平時,芯片寫操作被禁止,其他功能正常;當(dāng)它保持高電平時,芯片開放寫操作,其他功能正常。

Vss:電源地引腳。

Vcc:電源電壓輸入引腳。

RESET:單片機復(fù)位輸入引腳(即復(fù)位輸出引腳)漏極開路輸出方式,高電平有效。

(2)控制字與寄存器。

X25045芯片的控制字輸入、數(shù)據(jù)和地址的輸入為八位方式,高位在前低位在后。在進行讀、寫操作前,應(yīng)該先向它發(fā)出控制字,控制字及控制字格式如表1所示。

表1 X25045控制字

(3)狀態(tài)寄存器。

RDSR指令可以訪問的狀態(tài)寄存器。狀態(tài)寄存器可以在任何時間讀、取,即使是在一個寫周期。狀態(tài)寄存器的格式如表2。

表2 狀態(tài)寄存器的格式

發(fā)送WREN、WRDI、RDSR命令時,沒有必要發(fā)送一個字節(jié)的地址或數(shù)據(jù)。

寫控制位(WIP)位表示X25043/45是否繁忙的寫操作。當(dāng)設(shè)置為“1”,一個寫操作正在進行中;當(dāng)設(shè)定為“0”時,沒有寫操作正在進行中。在寫操作過程中,所有其他位被設(shè)置為“1”,該WIP位是只讀狀態(tài)。

寫使能鎖存(WEL)位指示其狀態(tài) “寫允許”鎖存器。當(dāng)設(shè)置為“1”時,鎖存器被設(shè)置;當(dāng)設(shè)置為“0”時,鎖存器被復(fù)位。 WEL位是只讀的并設(shè)置WREN指令和復(fù)位WRDI指令成功完成寫入循環(huán)。

塊保護位(BL0,BL1),這些非易失性控制位由WRSR指令設(shè)置,并允許用戶選擇四個級別的保護。 X25045分為四個1024位段。也就是說,用戶可以讀取段但將無法改變(寫入)所選段內(nèi)的數(shù)據(jù)。BL1和BL0的狀態(tài)控制分區(qū)如表3。

表3 BL1和BL0的狀態(tài)控制分區(qū)

允許設(shè)置看門狗定時器(WD0,WD1)位,如表4中所示的看門狗超時功能。這些非易失性控制位由WRSR指令設(shè)置。

表4 看門狗超時功能

2 AT89系列單片機[1]

AT89C51是ATMEL公司生產(chǎn)的一種單片機,具有4K字節(jié)FLASH存儲器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS 8位特性的微處理器。單片機的可擦除只讀存儲器可以反復(fù)擦除1 000次。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器。AT89C51單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。

VCC:電源引腳。

GND:電源地引腳。

P0口:雙功能引腳,是8位雙向輸入/輸出端口,每個引腳可吸收8個TTL門電路電流。第二功能作為數(shù)據(jù)總線、地址總線使用,當(dāng)作為地址總線使用時是16位地址的低8位,利用分時復(fù)用方式。

P1口:內(nèi)部提供上拉電阻,是8位雙向輸入/輸出端口,P1口能接收輸出4個TTL門電路電流。

P2口:雙功能引腳,內(nèi)部有上拉電阻,是8位雙向輸入/輸出端口,可接收和輸出4個TTL門電路電流。第二功能是16位地址的高8位地址。

P3口:雙功能引腳,P3口管腳內(nèi)部提供上拉電阻,是8位雙向輸入/輸出端口,可吸收和輸出4個TTL門電路電流。

RST:復(fù)位引腳,當(dāng)需要復(fù)位單片機時,只要在RST引腳上持續(xù)輸入兩個機器周期的高電平單片機將被復(fù)位。

ALE/PROG:控制引腳,在單片機訪問外部存儲器時,該引腳輸出地址所存信號,將所存P0口輸出的低8位地址,一遍再下一個機器周期開將P0口作為數(shù)據(jù)總線來使用。

/PSEN:控制引腳,外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。

/EA/VPP:控制引腳,一般情況下將該引腳直接接到VCC上訪問內(nèi)部程序存儲器,內(nèi)部程序存儲器訪問完后單片機將自動轉(zhuǎn)到外部程序存儲器取指令;當(dāng)將該引腳置成低電平時單片機將直接訪問外部程序存儲器,8031系列單片機必須將該引腳接地。

XTAL1:內(nèi)部振蕩電路反相放大器的輸入端,是外接晶體的一個引腳。當(dāng)采用外部振蕩器時此引腳接地。

XTAL2:內(nèi)部振蕩電路反相放大器的輸出端,是外接晶體的另一端,當(dāng)采用外部振蕩器時,此引腳接外部振蕩源。

XTAL1、XTAL2兩個引腳可以接兩個電容C1,C2(20-40pF),和一個晶體振蕩器,晶振經(jīng)常使用6MHz、12MHz和11.0592MHz三種頻率,時鐘發(fā)生器把振蕩頻率分為兩個頻率,產(chǎn)生一個兩相時鐘信號P1和P2供單片機使用,P1在每個狀態(tài)S的前半部分有效,P2在每個狀態(tài)后半部分有效。

3 單片機與X25045芯片接口設(shè)計[2]

由于X25045非易失性芯片是串行控制方式,數(shù)據(jù)輸入輸出也是串行方式,因此,該芯片與單片機接口電路簡單。SO引腳連接單片機P1.0引腳;SI引腳連接單片機P1.1引腳;SCK引腳連接單片機P1.2引腳;CS引腳連接單片機P1.3引腳;RET引腳通過一個10KΩ電阻連接+5V電源;WP引腳的一端通過一個5KΩ電阻連接+5V電源,另一端通過一個按鍵接地。這樣選擇接線方式主要是因為CS信號需要輸入低電平和高電平來控制,而單片機的P0口和P2口是作為數(shù)據(jù)線和地址總線來使用,P3口又全部有第二功能,因此設(shè)計接口電路時采用P1口與X25045芯片接口連接控制。圖2中R1是上拉電阻,必須接上拉電阻。WP信號由開關(guān)S控制,當(dāng)S輸入給WP‘0’時禁止寫入,當(dāng)S斷開時WP得到信號‘1’數(shù)據(jù)可以寫入。WP信號也可以由單片機P1口控制或是直接接高電平表示可以隨意寫入數(shù)據(jù)。單片機接口電路圖如圖2所示。

4 匯編程序設(shè)計

(1)定義端口程序

CS EQU P1.3

SO EQU P1.0

SI EQU P1.1

SCK EQU P1.2

(2)單字節(jié)輸出子程序

說明:將累加器A中數(shù)據(jù)輸出到SI上。

OUTB: MOV R7,#08H

TIAO1: CLR SCK

RLC A

MOV SI,C

SETB SCK

DJNZ R7,TIAO1

RET

(2)單字節(jié)輸入子程序

說明:將SO上的數(shù)據(jù)輸入到累加器A中。

INB: MOV R7,#08H

TIAO2: SETB SCK

NOP

CLR SCK

NOP

MOV C,SO

RLC A

SETB SCK

DJNZ R7,TIAO2

RET

(3)讀狀態(tài)寄存器子程序

說明:狀態(tài)寄存器內(nèi)容讀入A。

READZ: CLR S

MOV A,#05H

ACALL OUTB

ACALL INB

SETB CS

RET

(4)置位寫使能端子程序

WRITES: CLR CS

MOV A,#06H

ACALLOUTB

SETB CS

RET

(5)寫狀態(tài)寄存器子程序

說明:R2口內(nèi)容為寫入狀態(tài)寄存器的數(shù)據(jù)。

WRITEZ: ACALL READZ

CLR F0

JNB ACC.0,TIAO3

SETB F0

RET

TIAO3: ACALL WRIES

CLR CS

MOV A,#01H

ACALL OUTB

MOV A,R2

ACALL OUTB

SETB CS

RET

(6)復(fù)位看門狗子程序

RESKMG: CLR CS

SETB CS

RET

參考文獻:

[1]余永權(quán).ATMEL89系列單片機應(yīng)用技術(shù)[M].北京:北京航空航天大學(xué)出版社,2002.

[2]王幸之.AT89系列單片機原理與接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,2011.

猜你喜歡
看門狗子程序高電平
一種基于FPGA的PWM防錯輸出控制電路
把他叫醒
TS-03C全固態(tài)PDM中波發(fā)射機開關(guān)機控制電路原理及故障分析
淺談物理電路與數(shù)字電路
PDM 1kW中波廣播發(fā)射機保護電路分析
一種采用FPGA實現(xiàn)的通用看門狗電路
淺談子程序在數(shù)控車編程中的應(yīng)用
把它叫醒
把它叫醒
子程序在數(shù)控車加工槽中的應(yīng)用探索