《《片機基本結構》課件》由會員分享,可在線閱讀,更多相關《《片機基本結構》課件(37頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、單片機原理及應用2單片機基本結構(2)(51單片機并口及并口應用)(51單片機晶振和復位)(工作狀態(tài)和時序) 1 51單片機的并行接口n 51單片機I/O具有4組,每組8位,共32位并行接口,按“第二功能”不同,結構也稍有不同。n P0口:并口/數(shù)據(jù)地址總線n P1口:并行接口n P2口:并口/地址高8位n P3口:并口,每個引腳還有不同功能:RXD;TXD;INT0;INT1;T0;T1;WR;RD 標準并行接口電路框圖引腳鎖存器RD數(shù)據(jù)WR方向 DIR (需要設定方向)三態(tài)門 51單片機P1口引腳鎖存器讀寄存器數(shù)據(jù)WR QQ VCCRT 讀引腳 51單片機P0口引腳鎖存器讀寄存器數(shù)據(jù)WR
2、QQ VCCT 多路器MUX地址/數(shù)據(jù)控制(H)讀引腳 51單片機P2口引腳鎖存器RD數(shù)據(jù)WR QQ VCCT 多路器MUX地址/數(shù)據(jù)控制(H)R讀引腳 51單片機P3口引腳鎖存器RD數(shù)據(jù)WR QQ VCCT第二輸出功能 第二輸入功能讀引腳 51單片機并口應用小結n并口基本功能:n作為輸出口用時,直接和外設相連;n作為輸入口時,有讀端口和讀引腳兩種工作方式;n讀端口時實際上并不從外部讀入數(shù)據(jù),而只是把端口鎖存器中內容對如到內部總線,對引腳時才真正地把從外部加到引腳上的數(shù)據(jù)讀入到內部總線; n對引腳時,要先通過指令,把端口鎖存器置1,然后再實行讀引腳操作。 四個通道特性上的差別主要是通道0、通道
3、1、通道2、通道3都還有第二功能,而通道1則只能用作I/O口:n通道0還可作為低8位地址總線和8位數(shù)據(jù)總線使用;n通道2的第二功能是作為高8位地址總線使用;n通道3的每一位都有各自的第二功能。 n并口第二功能隨指令變化:1.使用MOVX/MOVC指令時,P0/P2口自動切換到“地址、數(shù)據(jù)”方式2. P3口第二功能是“直通”的,可以直接輸出:WR、RD、TXD,直接輸入:INT0、INT1、T0、T1、RXD。由程序和電路直接相應(預先設定功能,采用相應指令) 其他:n通道0作為I/O輸出時,需要上拉電阻。驅動MOS電路時,阻值為4.7K歐姆,驅動LED顯示器時為470歐姆;n通道0作為數(shù)據(jù)/地
4、址線工作時,不需要上拉電阻; 并口輸出應用舉例VCCR2kPx.x OUT VCC220LED繼電器 單片機連接光耦合器件 2 89C51晶振電路電容:2033pf(常:30pf)晶體:1.216MHZ(常:12M)XTL1XTL2 XTL1XTL2外接時鐘不接 3 MCS-51單片機的工作方式n復位方式下面細講n程序執(zhí)行方式n單步執(zhí)行方式:需要用到中斷,在“中斷系統(tǒng)”中討論n掉電和節(jié)電方式:在“串行接口”波特率設定中講n編程和校驗方式:指固化程序和讀出已經(jīng)固化的程序功能,本課程不作討論。 復位電路 上電復位時序時間t上電電容充電復位結束,單片機工作 大于24個晶振周期寬度(復位期)Vcc電容
5、電壓RES引腳電壓 復位后寄存器狀態(tài)n PC0000 程序從0000開始執(zhí)行,ROM的這個地址也稱為“復位地址”n PSW=0 其中RS0,RS1=0,默認主程序使用寄存器組0n SP=07 堆棧從RAM的07地址開始,一般需要更改堆棧棧底值n P0P3=FFH 引腳輸出高電平n IE=0X000000B 所有中斷被關閉n IP=0X000000B 所有中斷無優(yōu)先級 n TMOD=00 定時器T0,T1模式0n TCON=00 定時器不工作.n SCON=00 串行口默認使用方式0n PCON=0XXX0000B 無電源管理,無波特率2倍設置n其他如ACC;DPTR;TH0;TL0;TH1;T
6、L1;SBUF等可以不關心。 在復位后,程序計數(shù)器PC的值是0000H,這表明程序的第一條指令必須存入內存的0000H單元,程序才可能在復位后,直接運行。 復位不影響RAM的內容。 自動上電復位。 單片機的基本工作方式。n執(zhí)行的程序可以放在內部ROM、外部ROM或者同時放在內外ROM中。n真正的程序一般不可能從0000H開始存放,因此需要在0000H單元可是存放一條轉移指令,從而使程序跳轉到真正的程序入口地址。 單步執(zhí)行方式n按一次鍵,執(zhí)行一條指令。n可以利用MCS-51的中斷控制來實現(xiàn)。n一般用于調試。 掉電和節(jié)電方式n在掉電方式下,片上的時鐘振蕩電路停止工作,CPU也停止各種活動。n在節(jié)電
7、方式下,內部時鐘并不停止工作,只是去CPU的路徑被門電路切斷,但仍然供應中斷電路、定時器和串行口??僧a(chǎn)生中斷來結束節(jié)電方式。 n CPU的所有工作都是在時鐘信號控制下進行的。n CPU發(fā)出的控制信號有兩類:一類是用于CPU內部的;另一類通過控制總線送到片外。4. MCS-51單片機的時序 4.1 機器周期和指令周期n在討論時序時,以機器周期作為單位。n MCS-51的一個機器周期包括12個振蕩周期(時鐘周期),分為6個S狀態(tài):S1S6。每個狀態(tài)又分為兩拍,稱為P1和P2。 n每條指令都由一個或幾個機器周期組成,在MCS-51Hong,有單周期指令、雙周期指令和四周期指令。 指令時序振蕩周期AL
8、E輸出狀態(tài)周期讀操作碼(無效)讀第二字節(jié) ADD A,#dataS1 S2 S3 S4 S5 S6讀操作碼S1 S2 S3 S4 S5 S6讀操作碼(單周期)機器周期 時序要點:n一個指令周期1,2或者4個機器周期n一個機器周期12個晶振周期n一個機器周期輸出兩個ALE脈沖即:n ALE的輸出頻率fALE(1/6)fOSCn如果使用晶振頻率為12MHZ,則fALE 2MHZ,指令執(zhí)行時間1,2,4微秒。 4.2 MCS-51指令的取指/執(zhí)行時序 4.3訪問外部ROM和外部RAM的時序 對MCS-51系統(tǒng)的存儲器擴展,有以下幾點需要注意:(1)存儲器芯片。ROM和RAM都有獨立的數(shù)據(jù)線、地址線和
9、若干控制線,而MCS-51芯片則沒有。因此需要鎖存器來形成16位地址。5. MCS-51單片機外部存儲器的擴展 n(2)在擴展外部ROM時,用控制信號PSEN,而在擴展外部RAM時,用控制信號RD和WR。n(3)在選用外接存儲器時,應注意ALE信號與鎖存器選通信號的配合。 地址數(shù)據(jù)擴展電路 A8A15A8A15A8A15 A0A7A0A7A0A7擴展后的地址數(shù)據(jù)時序P0 D0D7 A0A7 D0D7 A0A7 D0D7 A0A7ALEP2373出 74LS373 是一種“透明”的8D鎖存器,當LE引腳為“高”時,輸出輸入。低電平時鎖定數(shù)據(jù)。 Intel 8282 類似,但引腳不一樣。 不能用其它鎖存器代替。 5.1 程序存儲器的擴展 3.5.2 數(shù)據(jù)存儲器的擴展 n 8031和AT29LV040A的連接q 512KB分為8個64KB,使用P1的3根口線來選擇q FLASH既作程序存儲器(PSEN),地址為0000FFFFH(64KB),又作數(shù)據(jù)存儲器(RD和ER),地址為10000FFFFFH(448KB)3.5.3 單片機和FLASH存儲器的連接 n 8031和AM29F016B的連接q AM29F016容量為2MB,地址線21根,分為32K一段,段內使用A0A14。共分為64段,,由P2.7的高脈沖選通74374鎖存器,P0口送段地址A15A20。