① mcs-51單片機的定時/計數器有哪幾種工作方式
有四種工作方式:
方式0,13位定時/計數方式。
方式1,16位的定時/計數方式。
方式2,自動重裝載8位工作方式
方式3,定時/計數器0被拆成2個獨立的定時/計數器來用。其中,tl0可以構成8位的定時器或計數器的工作方式,而th0則只能作為定時器來用。
② 51單片機外部中斷的觸發方式
51單片機的外部中斷有兩種觸發方式可選:電平觸發和邊沿觸發。選擇電平觸發時,單片機在每個機器周期檢查中斷源口線,檢測到低電平,即置位中斷請求標志,向CPU請求中斷。選擇邊沿觸發方式時,單片機在上一個機器周期檢測到中斷源口線為高電平,下一個機器周期檢測到低電平,即置位中斷標志,請求中斷。
這個原理很好理解。但應用時需要特別注意的幾點:
1) 電平觸發方式時,中斷標志寄存器不鎖存中斷請求信號。也就是說,單片機把每個機器周期的S5P2采樣到的外部中斷源口線的電平邏輯直接賦值到中斷標志寄存器。標志寄存器對於請求信號來說是透明的。這樣當中斷請求被阻塞而沒有得到及時響應時,將被丟失。換句話說,要使電平觸發的中斷被CPU響應並執行,必須保證外部中斷源口線的低電平維持到中斷被執行為止。因此當CPU正在執行同級中斷或更高級中斷期間,產生的外部中斷源(產生低電平)如果在該中斷執行完畢之前撤銷(變為高電平)了,那麼將得不到響應,就如同沒發生一樣。同樣,當CPU在執行不可被中斷的指令(如RETI)時,產生的電平觸發中斷如果時間太短,也得不到執行。
2) 邊沿觸發方式時,中斷標志寄存器鎖存了中斷請求。中斷口線上一個從高到低的跳變將記錄在標志寄存器中,直到CPU響應並轉向該中斷服務程序時,由硬體自動清除。因此當CPU正在執行同級中斷(甚至是外部中斷本身)或高級中斷時,產生的外部中斷(負跳變)同樣將被記錄在中斷標志寄存器中。在該中斷退出後,將被響應執行。如果你不希望這樣,必須在中斷退出之前,手工清除外部中斷標志。
3) 中斷標志可以手工清除。一個中斷如果在沒有得到響應之前就已經被手工清除,則該中斷將被CPU忽略。就如同沒有發生一樣。
4) 選擇電平觸發還是邊沿觸發方式,TCON 控制寄存器
設置。應從系統使用外部中斷的目的上去考慮,而不是如許多資料上說的根據中斷源信號的特性來取捨。比如,有的書上說(《Keil C51使用技巧及實戰》),就有類似的觀點。
③ MCS-51有幾種工作方式
MCS-51單片機有空閑和掉電兩種低功耗工作方式。
當CPU執行完置IDL=1的指令後,系統就進入空閑方式。進入空閑方式之後,有兩種方法可以退出。
1一種是任何中斷請求被響應都可以由硬體將IDL位清0而結束空閑方式。
2另一種退出空閑方式的方法是硬體復位。當CPU執行完置PD=1的指令後,系統就進入掉電工作方式。對於一般的單片機來說,退出掉電方式的唯一方法是由硬體復位。
④ MCS-51單片機的串列介面有幾種工作方式請簡述各種方式的功能.
89系列單片機的串列通信有4種工作方式:
方式0是同步移位寄存器方式,幀格式8位,波特率固定為fosc/12。
方式1是8位非同步通信方式,幀格式10位,波特率可變:T溢出率/n(n= :32或16)。
方式2是9位非同步通信方式,幀格式11位,波特率固定: fosc/n(n=32 或16)。
方式3是9位非同步通信方式,幀格式11位,波特率可變:T溢出率(m=32或16)。
方式1、2、3的區別主要表現在幀格式及波特率兩個方面。
(4)mcs51單片機有哪兩種觸發方式擴展閱讀
方式0和方式2的波特率是固定的,都是由單片機時鍾脈沖經相關控制電路處理後獲得。其中方式0的波特率完全取決於系統時鍾頻率fosc的高低,不受其他因素影響;而方式2的波特率還受SMOD(PCON.7)狀態控制。當SMOD=1時,為fosc/32, SMOD=0時為fosc/64。
方式1和方式3的波特率是可變的,通常使用單片機中的定時器T1工作在其方式2 (自動重裝初值方式)作為波特率發生器使用,以產生所需的波特率信號。
K為定時器T1的位數,與其工作方式有關(方式0,K=13; 方式1,K=16;方式2,K=8)。 由波特率計算公式可知,方式1和方式3下波特率受fosc、SMOD、T1工作方式以及T1初值等多種因素影響。
通常是在fosc、SMOD和T1工作方式選定情況下,通過調整T1初值(即調整T1的溢出率)的方式來改變波特率。
⑤ .MCS-51單片機的定時器/計數器有哪幾種操作模式各有什麼特點
方式0為13位計數,由TL0的低5位(高3位未用)和TH0的8位組成。TL0的低5位溢出時向TH0進位,TH0溢出時,置位TCON中的TF0標志,向CPU發出中斷請求。
方式1的計數位數是16位,由TL0作為低8位、TH0作為高8位,組成了16位加1計數器 。
方式2為自動重裝初值的8位計數方式。 工作方式2特別適合於用作較精確的脈沖信號發生器。
方式3隻適用於定時/計數器T0,定時器T1處於方式3時相當於TR1=0,停止計數。 工作方式3將T0分成為兩個獨立的8位計數器TL0和TH0 。
⑥ MCS-51單片機外部中斷的觸發方式如何設定和選擇
1、打開Keil μVision編譯器,新建一個工程,然後保存在硬碟上的位置,然後選擇Atmel-AT89C51單片機為模型,並添加STARTUP.A51文件,然後在當前目錄下新建一個C文件,並將其添加入工作路徑。
⑦ 80c51外部中斷有哪兩種觸發方式
80c51有5個中斷如下:
外部中斷0,入口地址0003h,中斷標志是ie0
定時器0,入口地址000bh,中斷標志是tf0
外部中斷1,入口地址0013h,中斷標志是ie1
定時器1,入口地址001bh,中斷標志是tf1
串口中斷,入口地址0023h,中斷標志是ri或ti。
⑧ 單片機的一些題目 求助
控制步進電機好辦,你要做產品,步進電機一般肯定要用步進電機控制器的,所以發脈沖和方向信號就可以控制其運動了。至於壓力感測器的信號肯定要做AD處理才能接入到單片機了。
⑨ mcs-51單片機的定時/計數器有哪幾種工作方式
mcs-51單片機的定時/計數器有四種工作方式:
方式0:13位定時計數器
方式1:16位定時計數器
方式2:8位重裝載定時計數器
方式3:兩個獨立8位定時器,只有定時器0有,定時器1無此功能
⑩ MCS-51的串列口有哪幾種工作方式
(1)立即定址:操作數就寫在指令中,和操作碼一起放在程序存貯器中。把「#」號放在立即數前面,以表示該定址方式為立即定址,如mov A,#20H。
(2)寄存器定址:操作數放在寄存器中,在指令中直接以寄存器的名來表示操作數地址。如MOV A,R0就屬於寄存器定址,即R0寄存器的內容送到累加器A中。
(3)直接定址:操作數放在單片機的內部RAM某單元中,在指令中直接寫出該單元的地址。如前例的ADD A,70H中的70H。
(4)寄存器間接定址:操作數放在RAM某個單元中,該單元的地址又放在寄存器R0或R1中。 如果RAM的地址大於256,則該地址存放在16位寄存器DPTR(數據指針)中,此時在寄存器名前加@符號來表示這種間接定址。如MOV A,@ R0。
(5)變址定址:指定的變址寄存器的內容與指令中給出的偏移量相加,所得的結果作為操作數的地址。如MOVC A,@A+DPTR。
(6)相對定址:由程序計數器中的基地址與指令中提供的偏移量相加,得到的為操作數的地址。如SJMP rel。
(7)位定址:操作數是二進制中的某一位,其位地址出現在指令中。如SETB bit。
(10)mcs51單片機有哪兩種觸發方式擴展閱讀
MCS51單片機的內部總體結構其基本特性如下:8位CPU、片內振盪器、4k位元組ROM、128位元組RAM、21個特殊功能寄存器、32根I/O線、可定址的64k位元組外部數據、程序存貯空間、2個16位定時器。
計數器中斷結構:具有二個優先順序、五個中斷源、一個全雙工串列口、位定址(即可尋找某位的內容)功能,適於按位進行邏輯運算的位處理器。
除128位元組RAM、4k位元組ROM和中斷、串列口及定時器模塊外,還有4組I/O口P0~P3,餘下的就是CPU的全部組成。
把4kROM換為EEPROM就是8751的結構,如去掉ROM/EEPROM部分即為8031,如果將ROM置換為Flash存貯器或EEPROM,或再省去某些I/O,即可得到51系列的派生品種,如89C51、AT89C2051等單片機。單片機各部分是通過內部的匯流排有機地連接起來的。