free性丰满hd毛多多,久久综合给合久久狠狠狠97色69 ,欧美成人乱码一区二区三区,国产美女久久久亚洲综合,7777久久亚洲中文字幕

0
問答首頁 最新問題 熱門問題 等待回答標(biāo)簽廣場
我要提問

電子百科

51單片機(jī)

51單片機(jī)

51單片機(jī)的特點(diǎn)

  •   1、有優(yōu)異的性價比。

      2、集成度高、體積小、有很高的可靠性。

      3、控制功能強(qiáng)。

      3、擴(kuò)展性能好,非常容易構(gòu)成各種應(yīng)用系統(tǒng)。

51單片機(jī)S系列與C系列區(qū)別

  •   兩者主要的區(qū)別是AT89S51支持ISP(In System Programming,即“在線可編程”)。而AT89C51無此功能。

      以下描述更加詳細(xì):

      很多初學(xué)51單片機(jī)的網(wǎng)友會有這樣的問題:AT89S51是什么?書上和網(wǎng)絡(luò)教程上可都是8051,89C51等!沒聽說過有89S51?!

      這里,初學(xué)者要澄清單片機(jī)實(shí)際使用方面的一個產(chǎn)品概念,MCS-51單片機(jī)是美國INTE公司于1980年推出的產(chǎn)品,典型產(chǎn)品有 8031(內(nèi)部沒有程序存儲器,實(shí)際使用方面已經(jīng)被市場淘汰)、8051(芯片采用HMOS,功耗是630mW,是89C51的5倍,實(shí)際使用方面已經(jīng)被市場淘汰)和8751等通用產(chǎn)品,一直到現(xiàn)在, MCS-51內(nèi)核系列兼容的單片機(jī)仍是應(yīng)用的主流產(chǎn)品(比如目前流行的89S51、89C51等),各高校及專業(yè)學(xué)校的培訓(xùn)教材仍與MCS-51單片機(jī)作為代表進(jìn)行理論基礎(chǔ)學(xué)習(xí)。

      有些文獻(xiàn)甚至也將8051泛指MCS-51系列單片機(jī),8051是早期的最典型的代表作,由于MCS-51單片機(jī)影響極深遠(yuǎn),許多公司都推出了兼容系列單片機(jī),就是說MCS-51內(nèi)核實(shí)際上已經(jīng)成為一個8位單片機(jī)的標(biāo)準(zhǔn)。

      其他的公司的51單片機(jī)產(chǎn)品都是和MCS-51內(nèi)核兼容的產(chǎn)品而以。同樣的一段程序,在各個單片機(jī)廠家的硬件上運(yùn)行的結(jié)果都是一樣的,如ATMEL的89C51(已經(jīng)停產(chǎn))、89S51, PHILIPS(菲利浦),和WINBOND(華邦)等,我們常說的已經(jīng)停產(chǎn)的89C51指的是ATMEL公司的 AT89C51單片機(jī),同時是在原基礎(chǔ)上增強(qiáng)了許多特性,如時鐘,更優(yōu)秀的是由Flash(程序存儲器的內(nèi)容至少可以改寫1000次)存儲器取帶了原來的ROM(一次性寫入),AT89C51的性能相對于8051已經(jīng)算是非常優(yōu)越的了。

      不過在市場化方面,89C51受到了PIC單片機(jī)陣營的挑戰(zhàn),89C51最致命的缺陷在于不支持ISP(在線更新程序)功能,必須加上ISP功能等新功能才能更好延續(xù)MCS-51的傳奇。89S51就是在這樣的背景下取代89C51的,現(xiàn)在,89S51目前已經(jīng)成為了實(shí)際應(yīng)用市場上新的寵兒,作為市場占有率第一的Atmel目前公司已經(jīng)停產(chǎn)AT89C51,將用AT89S51代替。89S51在工藝上進(jìn)行了改進(jìn),89S51采用0.35新工藝,成本降低,而且將功能提升,增加了競爭力。89SXX可以像下兼容89CXX等51系列芯片。同時,Atmel不再接受89CXX的定單,大家在市場上見到的89C51實(shí)際都是Atmel前期生產(chǎn)的巨量庫存而以。如果市場需要,Atmel當(dāng)然也可以再恢復(fù)生產(chǎn)AT89C51。

      89S51相對于89C51增加的新功能包括:

      -- 新增加很多功能,性能有了較大提升,價格基本不變,甚至比89C51更低!

      -- ISP在線編程功能,這個功能的優(yōu)勢在于改寫單片機(jī)存儲器內(nèi)的程序不需要把芯片從工作環(huán)境中剝離。是一個強(qiáng)大易用的功能。

      -- 最高工作頻率為33MHz,大家都知道89C51的極限工作頻率是24M,就是說S51具有更高工作頻率,從而具有了更快的計算速度。

      -- 具有雙工UART串行通道。

      -- 內(nèi)部集成看門狗計時器,不再需要像89C51那樣外接看門狗計時器單元電路。

      -- 雙數(shù)據(jù)指示器。

      -- 電源關(guān)閉標(biāo)識。

      -- 全新的加密算法,這使得對于89S51的**變?yōu)椴豢赡埽绦虻谋C苄源蟠蠹訌?qiáng),這樣就可以有效的保護(hù)知識產(chǎn)權(quán)不被侵犯。

      -- 兼容性方面:向下完全兼容51全部字系列產(chǎn)品。比如8051、89C51等等早期MCS-51兼容產(chǎn)品。也就是說所有教科書、網(wǎng)絡(luò)教程上的程序(不論教科書上采用的單片機(jī)是8051還是89C51還是MCS-51等等),在89S51上一樣可以照常運(yùn)行,這就是所謂的向下兼容。

      比較結(jié)果:就如同INTEL的P3向P4升級一樣,雖然都可以跑Windows98,不過速度是不同的。從AT89C51升級到AT89S51 ,也是同理。和S51比起來,C51就要遜色一些,實(shí)際應(yīng)用市場方面技術(shù)的進(jìn)步是永遠(yuǎn)向前的。

      ********上面這些就是AT89S51的由來********

      下面是初學(xué)網(wǎng)友對51系列的選型的常見問題

      1問:網(wǎng)友常見問題:請問現(xiàn)在學(xué)習(xí)51系列單片機(jī)應(yīng)該選擇AT89C51還是89S51?

      答:89C51和89S51內(nèi)核相同,89S51針對89C51的明顯的幾個升級如下 ;

      1.程序存儲器寫入方式:二者的寫入程序的方式不同,89C51只支持并行寫入,同時需要VPP燒寫高壓。89S51則支持ISP在線可編程寫入技術(shù)!串行寫入、速度更快、穩(wěn)定性更好,燒寫電壓也僅僅需要4~5V即可。

      2.電源范圍:89S5*電源范圍寬達(dá)4~5.5V,而89C5*系列在低于4.8V和高于5.3V的時候則無法正常工作。

      3.工作頻率:目前89S1*的性能遠(yuǎn)高于89C5*,89S5*系列支持最高高達(dá)33MHZ的工作頻率,而89C51工作頻率范圍最高只支持到24M。

      4.市場價格:由于89C51已經(jīng)全面停產(chǎn),所以在市場價格方面,庫存的89C5*的批發(fā)價格要比89S5*貴將近一倍!

      5.兼容型:89S5*向下兼容89C5*,就是說用89S5*可以替代89C5*使用,同樣的程序,運(yùn)行結(jié)果相同。就是說89S5*也同樣兼容目前所有的教科書范例程序。

      6.加密功能:89S5*系列全新的加密算法,這使得對于89S51的**變?yōu)椴豢赡?,程序的保密性大大加?qiáng),這樣就可以有效的保護(hù)知識產(chǎn)權(quán)不被侵犯。

      7.抗干擾性:內(nèi)部集成看門狗計時器,不再需要像89C51那樣外接看門狗計時器單元電路。

      8.燒寫壽命更長:89S5*標(biāo)稱的1000次,實(shí)際最少是1000次~10000次,這樣更有利初學(xué)者反復(fù)燒寫,減低學(xué)習(xí)成本。綜合上面的一些區(qū)別,個人認(rèn)為89C51的停止使用只是時間問題而已,就象當(dāng)年的8031。

      2問:采用89C2051開發(fā)制造產(chǎn)品是不是要比用89S51更好?因為2051看起來體積比較小。

      答:這個問題并不能一概而論,主要的區(qū)別如下:

      1.功能差別:因為2051不是標(biāo)準(zhǔn)的51內(nèi)核,所以205*的程序不能直接移植到51上。由于205*是精簡型,所以P口變得很少,這樣一來就只能用來做一些小的簡單產(chǎn)品,可利用資源比較緊張。實(shí)際上,做產(chǎn)品的話用205*是不一定合算的,除非是非常簡單的產(chǎn)品。

      2.市場價格:由于89C2051的產(chǎn)量不是非常大,所以市場價格方面89C2051的批發(fā)價格和89S51比較接近!相對性能價格比就比較低。

      3.產(chǎn)品體積:除非對產(chǎn)品的體積有苛刻的要求,否則二者的PCB面積相差不多,因為40腳的51芯片也有PLCC44小體積封裝。

51單片機(jī)最小系統(tǒng)

  •   什么是單片機(jī)的最小系統(tǒng)?。砍鯇W(xué)者可能對單片機(jī)最小系統(tǒng)感覺很神秘,其實(shí)單片機(jī)最小系統(tǒng)很簡單,就是能使單片機(jī)工作的最少的器件構(gòu)成的系統(tǒng)。最小系統(tǒng)雖然簡單,但是卻是大多數(shù)控制系統(tǒng)所必不可少的關(guān)鍵部分。

      對于MCS-51 單片機(jī),其內(nèi)部已經(jīng)包含了一定數(shù)量的程序存儲器和數(shù)據(jù)存儲器,在外部只要增加時鐘電路和復(fù)位電路即可構(gòu)成單片機(jī)最小系統(tǒng)。下面對51單片機(jī)最小系統(tǒng)需要的時鐘電路和復(fù)位電路做一下詳細(xì)的說明。

      時鐘電路

      單片機(jī)系統(tǒng)中的各個部分是在一個統(tǒng)一的時鐘脈沖控制下有序地進(jìn)行工作,時鐘電路是單片機(jī)系統(tǒng)最基本、最重要的電路。

      MCS-51 單片機(jī)內(nèi)部有一個高增益反相放大器,引腳XTAL1 和XTAL2 分別是該放大器的輸入端和輸出端,如果引腳XTAL1 和XTAL2 兩端跨接上晶體振蕩器(晶振)或陶瓷振蕩器就構(gòu)成了穩(wěn)定的自激振蕩電路,該振蕩電路的輸出可直接送入內(nèi)部時序電路。MCS-51 單片機(jī)的時鐘可由兩種方式產(chǎn)生,即內(nèi)部時鐘方式和外部時鐘方式。

    51單片機(jī)其工作原理

      (1)內(nèi)部時鐘方式。內(nèi)部時鐘方式即是由單片機(jī)內(nèi)部的高增益反相放大器和外部跨接的晶振、微調(diào)電容構(gòu)成時鐘電路產(chǎn)生時鐘的方法,其工作原理如圖(a)所示。外接晶振(陶瓷振蕩器)時,C1、C2 的值通常選擇為30pF(40pF)左右;C1、C2 對頻率有微調(diào)作用,晶振或陶瓷諧振器的頻率范圍可在1.2MHz ~ 12MHz之間選擇。為了減小寄生電容,更好地保證振蕩器穩(wěn)定、可靠地工作,振蕩器和電容應(yīng)盡可能安裝得與單片機(jī)引腳XTALl 和XTAL2 靠近。由于內(nèi)部時鐘方式外部電路接線簡單,單片機(jī)應(yīng)用系統(tǒng)中大多采用這種方式。內(nèi)部時鐘方式產(chǎn)生的時鐘信號的頻率就是晶振的固有頻率,常用fsoc 來表示。如選擇12MHz 晶振,則fsoc=12×106Hz。

      (2)外部時鐘方式。外部時鐘方式即完全用單片機(jī)外部電路產(chǎn)生時鐘的方 法,外部電路產(chǎn)生的時鐘信號被直接接到單片機(jī)的XTAL1 引,此時XTAL2 開路, 具體電路如圖(b)所示。 在介紹完了MCS-51 單片機(jī)的時鐘電路后,筆者不得不介紹一下CPU 的以及 工作周期問題,因為CPU 的工作周期是基于時鐘信號的,是與時鐘信號密不可分 的。 CPU 在執(zhí)行指令時,都是按照一定順序進(jìn)行的,由于指令的字節(jié)數(shù)不同,取 指所需時間也就不同,即使是字節(jié)數(shù)相同的指令,執(zhí)行操作也會有很大差別,不同的指令的執(zhí)行時間當(dāng)然也不相同,即CPU 在執(zhí)行各個指令時,所需要的節(jié)拍數(shù) 是不同的。為了便于對CPU 時序的理解,人們按指令的執(zhí)行過程定義了幾個名詞, 即時鐘周期、機(jī)器周期和指令周期。 時鐘周期:時鐘周期也稱為振蕩周期,定義為時鐘脈沖頻率(fOSC)的倒數(shù), 是單片機(jī)中最基本的、最小的時間單位。由于時鐘脈沖控制著計算機(jī)的工作節(jié)奏, 對同一型號的單片機(jī),時鐘頻率越高,計算機(jī)的工作速度顯然就會越快。然而, 受硬件電路的限制,時鐘頻率也不能無限提高,對某一種型號的單片機(jī),時鐘頻 率都有一個范圍,如對MCS-51 單片機(jī),其時鐘頻率范圍是0~33MHz。為方便描 述,振蕩周期一般用P(pause)表示。

      機(jī)器周期:完成一個最基本操作(讀或?qū)懀┧枰臅r問稱為機(jī)器周期。 MCS-51 單片機(jī)的機(jī)器周期是固定的,即一個機(jī)器周期由12 個時鐘周期組成。采 用6MHz 的時鐘頻率時,一個機(jī)器周期就是2μs ,采用12MHz 的時鐘頻率時, 一個機(jī)器周期就是1μs 。 指令周期:指令周期是執(zhí)行一條指令所需要的時間,一般由若干個機(jī)器周期 組成,指令不同,后需要的機(jī)器周期數(shù)也不同。對于一些簡單的單字節(jié)指令,分 指令周期可能和機(jī)器周期時間相同;而對于一些比較復(fù)雜的指令,如乘除運(yùn)算則 需要多個機(jī)器周期才能完成,這時指令周期大于機(jī)器周期。 通常,一個機(jī)器周期即可完成的指令稱為單周期指令,兩個機(jī)器周期才能 完成的指令稱為雙周期指令。 MCS-51 單片機(jī)中的大多數(shù)指令都是單周期或雙周 期指令,只有乘、除運(yùn)算為四周期指令。 復(fù)位電路 大規(guī)模集成電路在上電時一般都需要進(jìn)行一次復(fù)位操作,以便使芯片內(nèi)的一 些部件處于一個確定的初始狀態(tài),復(fù)位是一種很重要的操作。器件本身一般不具 有自動上電復(fù)位能力,需要借助外部復(fù)位電路提供的復(fù)位信號才能進(jìn)行復(fù)位操 作。

      MCS-51 單片機(jī)的第9 腳(RST)為復(fù)位引腳,系統(tǒng)上電后,時鐘電路開始工 作,只要RST 引腳上出現(xiàn)大于兩個機(jī)器周期時間的高電平即可引起單片機(jī)執(zhí)行 復(fù)位操作。有兩種方法可以使MCS-51 單片機(jī)復(fù)位,即在RST 引腳加上大于兩個 機(jī)器周期時間的高電平或WDT 計數(shù)溢出。單片機(jī)復(fù)位后,PC=0000H,CPU 從程序 存儲器的0000H 開始取指執(zhí)行。復(fù)位后,單片機(jī)內(nèi)部各SFR 的值也復(fù)位。單片 機(jī)的外部復(fù)位電路有上電自動復(fù)位和按鍵手動復(fù)位兩種。 (1)上電復(fù)位電路。最簡單的上電復(fù)位電路由電容和電阻串聯(lián)構(gòu)成,如圖下(a) 所示。

      上電瞬間,由于電容兩端電壓不能突變,RST 引腳電壓端為VR 為VCC,隨著 對電容的充電, RST 引腳的電壓呈指數(shù)規(guī)律下降,如圖(b)所示。經(jīng)過時間t1 后,VR 降為高電平所需電壓的下限3.6V,隨著對電容充電的進(jìn)行,VR 最后將接 近0V。為了確保單片機(jī)復(fù)位,t1 必須大于兩個機(jī)器周期的時間,機(jī)器周期取決 于單片機(jī)系統(tǒng)采用的晶振頻率,圖(a)中,R 不能取得太小,典型值10kΩ;t1 與RC 電路的時間常數(shù)有關(guān),由晶振頻率和R 可以算出C 的取值。

      (2)上電復(fù)位和按鍵復(fù)位組合電路 上圖(c)為上電復(fù)位和按鍵復(fù)位組合電路,R2 的阻值一般很小,只有幾十 歐姆,當(dāng)然也可以直接短接。當(dāng)按下復(fù)位按鍵后,電容迅速通過R2 放電,放電 結(jié)束時的VR 為(R1*Vcc)/(R1+R2),由于R1 遠(yuǎn)大于R2,VR 非常接近VCC,使 RST 引腳為高電平,松開復(fù)位按鍵后,過程與上電復(fù)位相同。 以上兩種是最基本的復(fù)位電路,在51 單片機(jī),多采用上電復(fù)位和按鍵復(fù)位 組合電路,筆者也建議采用這種復(fù)位電路。

    上電復(fù)位和按鍵復(fù)位組合電路

      在時鐘電路和復(fù)位電路設(shè)計完畢后,我們的單片機(jī)最小系統(tǒng)就做好了,現(xiàn)在單片機(jī)就可以正常工作了。

51單片機(jī)主要功能

  •   一個8 位CPU、一個偏內(nèi)振蕩器及時鐘電、128 字節(jié)的片內(nèi)數(shù)據(jù)存儲器、4KB 的 片內(nèi)程序存儲器、可尋址的64KB 字節(jié)外部數(shù)據(jù)存儲器和64KB 字節(jié)外部程序存儲 器的控制電路、21 字節(jié)的專用寄存器、4 個8 位并行I/O 接口、一個全雙工的串 行口、2 個16 位的定時器/計數(shù)器和一個布爾處理機(jī)。在MCS-51 系列單片機(jī)中 具有5 個中斷源和2 個中斷優(yōu)先級,片內(nèi)采用單一總線結(jié)構(gòu)連接。

MCS-51單片機(jī)內(nèi)部結(jié)構(gòu)

  •   8051是MCS-51系列單片機(jī)的典型產(chǎn)品,我們以這一代表性的機(jī)型進(jìn)行系統(tǒng)的講解。

      8051單片機(jī)包含中央處理器、程序存儲器(ROM)、數(shù)據(jù)存儲器(RAM)、定時/計數(shù)器、并行接口、串行接口和中斷系統(tǒng)等幾大單元及數(shù)據(jù)總線、地址總線和控制總線等三大總線,現(xiàn)在我們分別加以說明:

      · 中央處理器:

      中央處理器(CPU)是整個單片機(jī)的核心部件,是8位數(shù)據(jù)寬度的處理器,能處理8位二進(jìn)制數(shù)據(jù)或代碼,CPU負(fù)責(zé)控制、指揮和調(diào)度整個單元系統(tǒng)協(xié)調(diào)的工作,完成運(yùn)算和控制輸入輸出功能等操作。

      · 數(shù)據(jù)存儲器(RAM):

      8051內(nèi)部有128個8位用戶數(shù)據(jù)存儲單元和128個專用寄存器單元,它們是統(tǒng)一編址的,專用寄存器只能用于存放控制指令數(shù)據(jù),用戶只能訪問,而不能用于存放用戶數(shù)據(jù),所以,用戶能使用的的RAM只有128個,可存放讀寫的數(shù)據(jù),運(yùn)算的中間結(jié)果或用戶定義的字型表。

      · 程序存儲器(ROM):

      8051共有4096個8位掩膜ROM,用于存放用戶程序,原始數(shù)據(jù)或表格。

      · 定時/計數(shù)器(ROM):

      8051有兩個16位的可編程定時/計數(shù)器,以實(shí)現(xiàn)定時或計數(shù)產(chǎn)生中斷用于控制程序轉(zhuǎn)向。

      · 并行輸入輸出(I/O)口:

      8051共有4組8位I/O口(P0、 P1、P2或P3),用于對外部數(shù)據(jù)的傳輸。

      · 全雙工串行口:

      8051內(nèi)置一個全雙工串行通信口,用于與其它設(shè)備間的串行數(shù)據(jù)傳送,該串行口既可以用作異步通信收發(fā)器,也可以當(dāng)同步移位器使用。

      · 中斷系統(tǒng):

      8051具備較完善的中斷功能,有兩個外中斷、兩個定時/計數(shù)器中斷和一個串行中斷,可滿足不同的控制要求,并具有2級的優(yōu)先級別選擇。

      · 時鐘電路:

      8051內(nèi)置最高頻率達(dá)12MHz的時鐘電路,用于產(chǎn)生整個單片機(jī)運(yùn)行的脈沖時序,但8051單片機(jī)需外置振蕩電容。

      · 時鐘電路:

      8051內(nèi)置最高頻率達(dá)12MHz的時鐘電路,用于產(chǎn)生整個單片機(jī)運(yùn)行的脈沖時序,但8051單片機(jī)需外置振蕩電容。

      單片機(jī)的結(jié)構(gòu)有兩種類型,一種是程序存儲器和數(shù)據(jù)存儲器分開的形式,即哈佛(Harvard)結(jié)構(gòu),另一種是采用通用計算機(jī)廣泛使用的程序存儲器與數(shù)據(jù)存儲器合二為一的結(jié)構(gòu),即普林斯頓(Princeton)結(jié)構(gòu)。INTEL的MCS-51系列單片機(jī)采用的是哈佛結(jié)構(gòu)的形式,而后續(xù)產(chǎn)品16位的MCS-96系列單片機(jī)則采用普林斯頓結(jié)構(gòu)。

51單片機(jī)的串行口擴(kuò)展方法

  •   在研究采場瓦斯積聚模擬試驗臺的過程中,筆者設(shè)計了主從式多機(jī)采控系統(tǒng)結(jié)構(gòu)。主從式多機(jī)控制系統(tǒng)是實(shí)時控制系統(tǒng)中較為普遍的結(jié)構(gòu)形式,它具有可靠性高,結(jié)構(gòu)靈活等優(yōu)點(diǎn)。當(dāng)選用單串口51單片機(jī)構(gòu)成這種主從式多機(jī)系統(tǒng)時,51單片機(jī)一方面可能要和主機(jī)Computer通信,一方面又要和下位機(jī)通信,這時就需要擴(kuò)展串行通道。本文具體介紹了兩種串行通道的擴(kuò)展方法。

      2 串行口的擴(kuò)展方法

      常用的標(biāo)準(zhǔn)51單片機(jī)內(nèi)部僅含有一個可編程的全雙工串行通信接口,具有UART的全部功能。該接口電路不僅能同時進(jìn)行數(shù)據(jù)的發(fā)送和接收,也可作為一個同步移位寄存器使用。當(dāng)以此類型單片機(jī)構(gòu)成分布式多級應(yīng)用系統(tǒng)時,器件本身的串口資源就不夠用了。筆者在實(shí)際開發(fā)中,查閱了有關(guān)資料,總結(jié)出如下兩種常用而有效的串行通道擴(kuò)展方法。

      2.1 基于SP2538的擴(kuò)展方法

      SP2538是專用低功耗串行口擴(kuò)展芯片,該芯片主要是為解決當(dāng)前基于UART串口通信的外圍智能模塊及器件較多,而單片機(jī)或DSP原有的UART串口又過少的問題而推出的。利用該器件可將現(xiàn)有單片機(jī)或DSP的單串口擴(kuò)展至5個全雙工串口。使用方法簡單、高效。

      在應(yīng)用SP2538擴(kuò)展串行通道時,母串口波特率K1=2880*Fosc[_]in,單位是MHz,且Fosc[_]in小于20.0MHz, 在SP2538輸入時鐘Fosc[_]in =20.0MHZ時母串口可自適應(yīng)上位機(jī)的56000bps和57600bps兩種標(biāo)準(zhǔn)波特率輸入。子串口波特率K2=480*Fosc[_]in。

      母串口和所有子串口都是TTL電平接口,可直接匹配其他單片機(jī)或TTL數(shù)字電路,如需連接PC機(jī)則必須增加電平轉(zhuǎn)換芯片如MAX202 、MAX232 等。SP2538具有內(nèi)置的上電復(fù)位電路和可關(guān)閉的看門狗監(jiān)控電路。上位機(jī)寫命令字0x10可實(shí)現(xiàn)喂狗,寫命令字0x15關(guān)閉看門狗,初次上電后看門狗處于激活狀態(tài)或?qū)懨钭?x20激活看門狗監(jiān)控功能。上位機(jī)可通過芯片復(fù)位指令0x35在任何時候讓芯片進(jìn)行指令復(fù)位,也可通過芯片睡眠指令0x55在任何時候讓芯片進(jìn)入微功耗睡眠模式以降低系統(tǒng)功耗。初次上電后芯片不會自行進(jìn)入睡眠模式,但只能由上位機(jī)通過母串口任意發(fā)送一個字節(jié)數(shù)據(jù)將其喚醒,其他子串口不具備這一功能。

      圖(1)是AT89C52單片機(jī)與SP2538的電路連接,圖中,AT89C52的全雙工串口與SP2538的母串口5相連,該串口同時也作為命令/數(shù)據(jù)口。SP2538的ADRI0、ADRI1、ADRI2分別與AT89C52的P2.3、P2.4、P2.5口相連,可用于選擇發(fā)送數(shù)據(jù)是選擇相應(yīng)的串口0~4;ADRO0、ADRO1、ADRO2與P2.0、P2.1、P2.2相連,用于判斷接收的數(shù)據(jù)來自哪一個串口。 SP2538的時鐘頻率選為20.0MHZ,此時母串口5的波特率為57600bps,串口0~4的波特率為9600bps。

      下面是與上述硬件電路相關(guān)的接口程序,該程序用A51匯編語言編制,程序僅說明了中斷方式下對子串口0(TX0、RX0)的操作,其它子串口類似。

      TBLOCK DATA20H

      RBLOCK DATA30H

      LENGTH DATA14H

      …

      TXR[_]REV[_]SEND: CLRES

      JBCRI,RECEIVE

      CLRTI

      MOVA,@R0

      CLRP2.0 ; 寫數(shù)據(jù)到"SBUF"前必須先置欲發(fā)送子串口的地址

      CLRP2.1

      CLRP2.2

      MOVSBUF,A

      DJNZ R2,NEXT

      SJMP $

      NEXT: INCR0

      RETI

      RECEIVE:MOVA,P2

      ANDA,#31H;判斷是否為子串口0

      JNZELSE

      MOVA,SBUF

      MOV@R1,A

      INCR1

      RETI

    AT89C52與SP2538的電路連接

      圖(1) AT89C52與SP2538的電路連接

      2.2 基于Intel8251的串行口擴(kuò)展方法

      上面基于SP2538的串口擴(kuò)展方法可以說是一種串行的擴(kuò)展方法,這里基于Intel8251的擴(kuò)展方法則是一種并行的方法。Intel8251是一種通用的同步/異步發(fā)送器(USART),它的工作方式可以通過編程設(shè)置。能夠以同步或異步串行通信方式工作,能自動完成幀格式。

      Intel8251具有獨(dú)立的接收/發(fā)送器。在異步方式下,用于產(chǎn)生8251內(nèi)部時序的時鐘CLK輸入至少應(yīng)為發(fā)送或接收時鐘的4.5倍。接收/發(fā)送(RXC/TXC)時鐘應(yīng)為波特率的1倍、16倍或64倍(由8251的工作方式字設(shè)定)。

      圖(2)是用Intel8251擴(kuò)展一個串行通道的電路原理,圖中,11.0592MHZ晶振經(jīng)ALE6分頻后于 、組合,產(chǎn)生1.8432MHZ的時鐘頻率,分別作為8251與8253的時鐘輸入,若設(shè)定8251通信波特率為9600bps,波特率因子為16,則需要 153.6KHZ的接收/發(fā)送時鐘頻率,該頻率可由8253的OUT0產(chǎn)生。

      下面的A51程序段說明了如何設(shè)置8253使其產(chǎn)生153.6KHZ的方波,以及如何用8251收/發(fā)數(shù)據(jù):

      設(shè)置8253的程序段:

      MOVA,#36H ; 計數(shù)器0輸出方波控制字

      MOVDPTR,#0FFFFH; 指向控制字寄存器

      MOVX @DPTR,A

      MOVDPTR,#0FFFCH; 指向0計數(shù)器地址

      MOVA,#0DH

      MOVX @DPTR,A

      MOVA,#0

      MOVX DPTR,A

      SETB P1.0

      操作8251的程序段:

      …

      START: MOVDPTR,#7FFFH;8251控制、命令口地址

      MOVA,#5EH;一個停止位,奇校驗,8位數(shù)據(jù),異步*16

      MOVX @DPTR,A;寫入方式字

      MOVA,#15H

      MOVX @DPTR,A;命令字,啟動發(fā)送和接收器

      …

      LOOP: SJMP LOOP ;等待8251中斷

      8251[_]INT: ;現(xiàn)場保護(hù)

      MOVDPTR,#7FFFH

      MOVA,@DPTR

      JBACC.0,TX[_]INT

      JBACC.1,RX[_]INT

      INT[_]EXIT: ;恢復(fù)現(xiàn)場

      RETI

      發(fā)送數(shù)據(jù)

      TX[_]INT:MOVDPTR,#7FFEH ;8251數(shù)據(jù)口地址

      MOVA,20H

      MOVX @DPTR,A

      …

      AJMP INT[_]EXIT

      接收數(shù)據(jù)

      RX[_]INT:MOVDPTR,#7FFEH

      MOVX A,@DPTR

      MOV30H,A

      …

      AJMP INI[_]EXIT

    用8251擴(kuò)展串行通道的硬件電路原理

      圖(2)用8251擴(kuò)展串行通道的硬件電路原理

      3 結(jié)束語

      以單片機(jī)為核心的多級分布式系統(tǒng)的應(yīng)用越來越廣泛,上面討論的兩種串行口的擴(kuò)展方法為此類多串口應(yīng)用領(lǐng)域提供了一個良好的解決方案。筆者在實(shí)際中采用基于SP2538的擴(kuò)展方法,設(shè)計了采場瓦斯積聚模擬試驗臺的多級分布式采控系統(tǒng),效果良好。

學(xué)習(xí)單片機(jī)方法

  •   1、明確學(xué)習(xí)單片機(jī)的目標(biāo),不要為學(xué)單片機(jī)而學(xué),將單片機(jī)理解為一個電子元件,只有在一個系統(tǒng)中單片機(jī)才能實(shí)現(xiàn)它的功能。學(xué)習(xí)單片機(jī)的終極應(yīng)用目的是,為了應(yīng)用,通過使用單片機(jī)和一定的外圍電路,來實(shí)現(xiàn)一個系統(tǒng)。

      2、要有一塊開發(fā)板,可以購買或自己做一塊(單片機(jī)都沒學(xué)會怎么做???可以到網(wǎng)上下載一份單片機(jī)的原理圖自己焊接,先不用了解電路的原理,一邊學(xué)習(xí),以便分析電路。),因為單片機(jī)應(yīng)用時一門實(shí)踐性很強(qiáng)的課程。市場上賣的單片機(jī)實(shí)驗班從50~300不等,我用的那塊是一塊170左右的。單片機(jī)實(shí)驗板最好配有這些功能:流水燈、矩陣鍵盤、7段數(shù)碼管、蜂鳴器、液晶、AD、DA、串口通信等模塊。

      注:單片機(jī)入門簡易學(xué)習(xí)51單片機(jī),因為這個單片機(jī)最經(jīng)典,使用范圍最廣,學(xué)習(xí)資料最多。如果有特殊需求的也可以用其他單片機(jī)進(jìn)行學(xué)習(xí)。不必討論學(xué)習(xí)哪一種單片機(jī),因為單片機(jī)原理基本一樣,不同的只是功能模塊。只要精通一種單片機(jī)之后,學(xué)習(xí)其他單片機(jī)只要花上很少的時間就可以學(xué)會。

      3、要準(zhǔn)備一本C語言教材和一本單片機(jī)原理教材,放在自己的案子上,隨時可以查閱。

      4、準(zhǔn)備一本筆記本,隨時記錄自己的學(xué)習(xí)心得,畢竟”好記心不如爛筆頭“。

      5、要多看多想多問,可以再網(wǎng)上收集一些例程來看,多分析別人的程序,找出不同的地方,分析為什么要這樣。

      6、按照如下順序進(jìn)行單片機(jī)的實(shí)驗,可以方便學(xué)習(xí)。

      單片機(jī)IO口的使用>>單片機(jī)定時器/計數(shù)器的使用>>單片機(jī)中斷系統(tǒng)的使用>>單片機(jī)和PC的通訊(RS232)>>AD轉(zhuǎn)換>>UART、SSI、IIC等通訊總線的使用>>輸出比較、輸入捕捉、PWM輸出等>>USB、ICP/IP協(xié)議等。

      7、多做實(shí)驗,多敲代碼。在網(wǎng)上找一些實(shí)驗來,自己先模仿著做,然后自己設(shè)計出屬于自己的風(fēng)格的產(chǎn)品。

提問者:7vyydyfwef 地點(diǎn):- 瀏覽次數(shù):6137 提問時間:09-02 13:02
我有更好的答案
提 交
撰寫答案
提 交
1 / 3
1 / 3
相關(guān)電子百科
硅膠板
3D晶體管
雙極性晶體管
晶體管時間繼電器
光敏電阻器