<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)關(guān)鍵技術(shù)基礎(chǔ)詳解(一)

          單片機(jī)關(guān)鍵技術(shù)基礎(chǔ)詳解(一)

          作者: 時(shí)間:2016-11-24 來源:網(wǎng)絡(luò) 收藏
          單片機(jī)被廣泛應(yīng)用于工業(yè)控制,家電,消費(fèi)電子,醫(yī)療電子,儀表測(cè)量等領(lǐng)域,為應(yīng)廣大初級(jí)電子工程師/單片機(jī)愛好者之需,電子發(fā)燒友隆重策劃整合推出《解》系列技術(shù)文章,以后會(huì)陸續(xù)推出其他章節(jié),敬請(qǐng)廣大工程師朋友繼續(xù)關(guān)注和留意。


           一、關(guān)于C51單片機(jī)的中斷號(hào)以及中斷向量

          本文引用地址:http://www.ex-cimer.com/article/201611/320946.htm

            1、中斷號(hào)

            

            2、interrupt 和 using 在C51中斷中的使用

            8051 系列 MCU 的基本結(jié)構(gòu)包括:32 個(gè) I/O 口(4 組8 bit 端口);兩個(gè)16 位定時(shí)計(jì)數(shù)器;全雙工串行通信;6 個(gè)中斷源(2 個(gè)外部中斷、2 個(gè)定時(shí)/計(jì)數(shù)器中斷、1 個(gè)串口輸入/輸出中斷),兩級(jí)中斷優(yōu)先級(jí);128 字節(jié)內(nèi)置RAM;獨(dú)立的 64K 字節(jié)可尋址數(shù)據(jù)和代碼區(qū)。中斷發(fā)生后,MCU 轉(zhuǎn)到 5 個(gè)中斷入口處之一,然后執(zhí)行相應(yīng)的中斷服務(wù)處理程序。中斷程序的入口地址被編譯器放在中斷向量中,中斷向量位于程序代碼段的最低地址處,注意這里的串口輸入/輸出中斷共用一個(gè)中斷向量。8051的中斷向量表如下:

            

            二、CPU與單片機(jī)的復(fù)位電路的作用及基本復(fù)位方式

            在上電或復(fù)位過程中,控制CPU的復(fù)位狀態(tài):這段時(shí)間內(nèi)讓CPU保持復(fù)位狀態(tài),而不是一上電或剛復(fù)位完畢就工作,防止CPU發(fā)出錯(cuò)誤的指令、執(zhí)行錯(cuò)誤操作,也可以提高電磁兼容性能。

            無論用戶使用哪種類型的單片機(jī),總要涉及到單片機(jī)復(fù)位電路的設(shè)計(jì)。而單片機(jī)復(fù)位電路設(shè)計(jì)的好壞,直接影響到整個(gè)系統(tǒng)工作的可靠性。許多用戶在設(shè)計(jì)完單片機(jī)系統(tǒng),并在實(shí)驗(yàn)室調(diào)試成功后,在現(xiàn)場卻出現(xiàn)了“死機(jī)”、“程序走飛”等現(xiàn)象,這主要是單片機(jī)的復(fù)位電路設(shè)計(jì)不可靠引起的。

            基本的復(fù)位方式

            單片機(jī)在啟動(dòng)時(shí)都需要復(fù)位,以使CPU及系統(tǒng)各部件處于確定的初始狀態(tài),并從初態(tài)開始工作。89系列單片機(jī)的復(fù)位信號(hào)是從RST引腳輸入到芯片內(nèi)的施密特觸發(fā)器中的。當(dāng)系統(tǒng)處于正常工作狀態(tài)時(shí),且振蕩器穩(wěn)定后,如果RST引腳上有一個(gè)高電平并維持2個(gè)機(jī)器周期(24個(gè)振蕩周期)以上,則CPU就可以響應(yīng)并將系統(tǒng)復(fù)位。單片機(jī)系統(tǒng)的復(fù)位方式有:手動(dòng)按鈕復(fù)位和上電復(fù)位。

            1、手動(dòng)按鈕復(fù)位

            手動(dòng)按鈕復(fù)位需要人為在復(fù)位輸入端RST上加入高電平(圖1)。一般采用的辦法是在RST端和正電源Vcc之間接一個(gè)按鈕。當(dāng)人為按下按鈕時(shí),則Vcc的+5V電平就會(huì)直接加到RST端。手動(dòng)按鈕復(fù)位的電路如所示。由于人的動(dòng)作再快也會(huì)使按鈕保持接通達(dá)數(shù)十毫秒,所以,完全能夠滿足復(fù)位的時(shí)間要求。

            

            圖1

            2、上電復(fù)位

            AT89C51的上電復(fù)位電路如圖2所示,只要在RST復(fù)位輸入引腳上接一電容至Vcc端,下接一個(gè)電阻到地即可。對(duì)于CMOS型單片機(jī),由于在RST端內(nèi)部有一個(gè)下拉電阻,故可將外部電阻去掉,而將外接電容減至1?F。上電復(fù)位的工作過程是在加電時(shí),復(fù)位電路通過電容加給RST端一個(gè)短暫的高電平信號(hào),此高電平信號(hào)隨著Vcc對(duì)電容的充電過程而逐漸回落,即RST端的高電平持續(xù)時(shí)間取決于電容的充電時(shí)間。為了保證系統(tǒng)能夠可靠地復(fù)位,RST端的高電平信號(hào)必須維持足夠長的時(shí)間。上電時(shí),Vcc的上升時(shí)間約為10ms,而振蕩器的起振時(shí)間取決于振蕩頻率,如晶振頻率為10MHz,起振時(shí)間為1ms;晶振頻率為1MHz,起振時(shí)間則為10ms。在圖2的復(fù)位電路中,當(dāng)Vcc掉電時(shí),必然會(huì)使RST端電壓迅速下降到0V以下,但是,由于內(nèi)部電路的限制作用,這個(gè)負(fù)電壓將不會(huì)對(duì)器件產(chǎn)生損害。另外,在復(fù)位期間,端口引腳處于隨機(jī)狀態(tài),復(fù)位后,系統(tǒng)將端口置為全“l”態(tài)。如果系統(tǒng)在上電時(shí)得不到有效的復(fù)位,則程序計(jì)數(shù)器PC將得不到一個(gè)合適的初值,因此,CPU可能會(huì)從一個(gè)未被定義的位置開始執(zhí)行程序。

            

            圖2

            3、積分型上電復(fù)位

            常用的上電或開關(guān)復(fù)位電路如圖3所示。上電后,由于電容C3的充電和反相門的作用,使RST持續(xù)一段時(shí)間的高電平。當(dāng)單片機(jī)已在運(yùn)行當(dāng)中時(shí),按下復(fù)位鍵K后松開,也能使RST為一段時(shí)間的高電平,從而實(shí)現(xiàn)上電或開關(guān)復(fù)位的操作。

            根據(jù)實(shí)際操作的經(jīng)驗(yàn),下面給出這種復(fù)位電路的電容、電阻參考值。

            圖3中:C:=1uF,Rl=lk,R2=10k

            

            圖3 積分型上電復(fù)位電路

          三、單片機(jī)雙機(jī)并行通信中所遇問題

            1 引言

            本系統(tǒng)采用的CPLD為 ATMEL公司生產(chǎn)的ATF1540AS器件,該器件是一種高性能、高密度復(fù)合可編程邏輯器件,簡稱CPLD,它利用ATMEL 的電可擦除存儲(chǔ)器技術(shù),有 64個(gè)邏輯宏單元和68個(gè)I/O端口,很容易和多個(gè)TTL、SSI、MSI、LSI和經(jīng)典的PLDS組合使用。每個(gè)宏單元包括積項(xiàng)和積項(xiàng)多路選擇器、 OR/XOR/CASCADE邏輯、觸發(fā)器、輸出選擇和使能、輸入邏輯陣列五個(gè)部分。ATF1504AS的增強(qiáng)選路開關(guān)增加了可用的門計(jì)數(shù),提高了管腳鎖存設(shè)計(jì)修改的成功率。

            

            圖1 雙機(jī)通信框圖

            2 系統(tǒng)結(jié)構(gòu)

            系統(tǒng)的CPU采用W77E58,由ATF1504AS構(gòu)成通信接口,系統(tǒng)框圖如圖1所示。

            2.1 問題提出

            電腦刺繡機(jī)為達(dá)到良好的人機(jī)界面交互功能,采用上下位機(jī)方式,下位機(jī)主要進(jìn)行繡花動(dòng)作的控制,上位機(jī)主要進(jìn)行花樣的跟蹤。為了實(shí)現(xiàn)繡花的同時(shí)在液晶屏上進(jìn)行繡花跟蹤,單CPU方式存在系統(tǒng)資源透支, CPU處理數(shù)據(jù)將十分困難,于是提出了采用雙CPU的工作方式,但同時(shí)帶來一個(gè)問題—雙CPU的通信問題。

            2.2 解決方案

           ?。?) 采用串行通信方式

            優(yōu)點(diǎn):在由單片機(jī)組成的多機(jī)方式中,串行接口方式是最常用的。串行通信方式接口電路簡單,可以方便實(shí)現(xiàn)長距離傳輸??垢蓴_能力比較好。

            缺點(diǎn):傳輸數(shù)據(jù)慢,不適合實(shí)時(shí)數(shù)據(jù)傳輸。在數(shù)據(jù)傳輸要求高的情況下,容易造成瓶頸堵塞現(xiàn)象。

           ?。?) 采用并行通信方式

            優(yōu)點(diǎn):并行通信傳輸數(shù)據(jù)快,適合進(jìn)行實(shí)時(shí)控制。

            缺點(diǎn):抗干擾能力差,不適合長距離傳輸,最大距離不超過5m。

            由于本系統(tǒng)對(duì)數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性要求比較高,并且上下位機(jī)之間的距離不超過3m,進(jìn)行適當(dāng)?shù)目垢蓴_措施,完全可以達(dá)到系統(tǒng)的要求,所以確定采用并行通信方式。

            2.3 具體措施

           ?。?) 采用ATF1504AS(可編程邏輯器件)進(jìn)行并行通信,減少分立器件所產(chǎn)生的雜散電容而帶來的噪聲干擾。

            (2) 在輸入數(shù)據(jù)端加斯密特電路(74LS14),將外部傳輸線上耦合噪聲濾除掉。從而提高總線接收的抗干擾性能。

           ?。?)采用三態(tài)門驅(qū)動(dòng)方式可以提高總線的抗干擾能力,因?yàn)槿龖B(tài)門有三種狀態(tài)輸出,既所謂的低阻高電平、低阻低電平、高阻態(tài)(禁態(tài))。由于三態(tài)門的輸入具有的三態(tài)性,所以使三態(tài)門的信號(hào)源的負(fù)擔(dān)減輕。有利于提高速度和抗干擾能力。

            3 雙CPU通信原理設(shè)計(jì)

            3.1 雙CPU通信原理圖

            從圖2雙CPU通信原理圖中可以看出,在輸入接口上都接上74LS14斯密特電路和74LS244三態(tài)門驅(qū)動(dòng)器,以提高抗干擾能力。在SRZB、SCYX(上位機(jī))及SRZB、SCYX(下位機(jī))的握手信號(hào)線上接入74LS14斯密特電路,以提高抗干擾能力。

            

            圖2 雙機(jī)通信原理圖

            3.2 ATF1504AS內(nèi)部原理圖

            由于篇幅有限,僅列出上位機(jī)的ATF1504AS的內(nèi)部原理圖如圖3,下位機(jī)的ATF1504AS的內(nèi)部原理圖與此相類似。


          上一頁 1 2 3 下一頁

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();