版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
時(shí)鐘電路單片機(jī)的定時(shí)控制功能是由片內(nèi)的時(shí)鐘電路和定時(shí)電路來完成的,而片內(nèi)的時(shí)鐘產(chǎn)生有兩種方式:內(nèi)部時(shí)鐘方式外部時(shí)鐘方式1.4單片機(jī)時(shí)鐘電路內(nèi)部振蕩器方式外部振蕩器方式1.4.1兩種時(shí)鐘電路片內(nèi)的高增益反相放大器通過XTAL1、XTAL2外接作為反饋元件的片外晶體振蕩器(呈感性)與電容組成的并聯(lián)諧振回路構(gòu)成一個(gè)自激振蕩器,向內(nèi)部時(shí)鐘電路提供振蕩時(shí)鐘。振蕩器的頻率主要取決于晶體的振蕩頻率,一般晶體可在1.2~12MHz之間任選,電容C1、C2可在5~30pF之間選擇,電容的大小對振蕩頻率有微小的影響,可起頻率微調(diào)作用。1、內(nèi)部振蕩方式2、外部時(shí)鐘方式:不同工藝制造的單片機(jī)芯片外部時(shí)鐘電路連接方法芯片類型接法XTAL1XTAL2HMOS接地接片外振蕩脈沖輸入端(帶上拉電阻)CHMOS接片外振蕩脈沖輸入端(帶上拉電阻)懸空1.4.2單片機(jī)的時(shí)鐘周期CPU以不同的方式,通過復(fù)雜的時(shí)序電路執(zhí)行并完成各種不同指令功能。CPU的控制器按照指令的功能發(fā)出一系列在時(shí)間上有一定次序的信號去控制和啟動一部分邏輯電路,完成某種操作。在一定時(shí)刻發(fā)出一定的控制信號去啟動一定的邏輯部件動作,這就是CPU的時(shí)序。1.時(shí)鐘周期通過單片機(jī)的時(shí)鐘電路可以產(chǎn)生系統(tǒng)時(shí)鐘信號。系統(tǒng)時(shí)鐘信號是一切微處理器、微控制器內(nèi)部電路工作的基礎(chǔ)。晶體振蕩器輸出的振蕩脈沖經(jīng)2分頻成為內(nèi)部時(shí)鐘信號,用作單片機(jī)內(nèi)部各功能部件按序協(xié)調(diào)工作的控制信號,其周期稱為時(shí)鐘周期(也稱狀態(tài)周期)。2.機(jī)器周期CPU完成一種基本操作所需要的時(shí)間稱為機(jī)器周期Tcy。MCS-51系列單片機(jī)的的1個(gè)機(jī)器周期包括6個(gè)時(shí)鐘周期。為了敘述方便,以S1~S6分別表示6個(gè)時(shí)鐘周期,以P1、P2表示每個(gè)時(shí)鐘周期的兩節(jié)拍,則1個(gè)機(jī)器周期依次由S1P1、S1P2、S2P1……S6P2等12個(gè)節(jié)拍(每個(gè)節(jié)拍為1個(gè)振蕩周期)組成。機(jī)器周期與振蕩周期的關(guān)系如果系統(tǒng)時(shí)鐘的晶振頻率為fosc=12MHz,則
1Tcy
=12Tosc=12/fosc=12/(12×106)=1μs即:1個(gè)機(jī)器周期的時(shí)間為1μs。3.指令周期基本的機(jī)器周期有取指周期、存儲器讀周期和存儲器寫周期等,各種指令功能都是由這幾種基本機(jī)器周期實(shí)現(xiàn)的。CPU執(zhí)行一條指令所需要的時(shí)間稱為指令周期,它以機(jī)器周期為單位。MCS-51的指令可以分為單周期指令、雙周期指令和四周期指令三種,它們的執(zhí)行時(shí)間依次是1個(gè)、2個(gè)和4個(gè)機(jī)器周期。KeilC集成開發(fā)系統(tǒng)使用案例1單片機(jī)控制右側(cè)發(fā)光二極管亮滅讓最右邊的發(fā)光二極管亮,其它不亮。給P0.0送0,其他位送1,可讓D8亮而其他燈不亮。1.案例程序#include<reg51.h>voidmain(){unsignedintvalue;value=0xfe;P0=value;}2.KeilC51調(diào)試方法與步驟要使用Keil軟件,首先要正確安裝Keil軟件,該軟件的Eval版本可以直接去http://www.下載(1)建立工作項(xiàng)目文件啟動KeilμVison2,如果打開后就有打開的文件,單擊“Project->CloseProject”菜單將其關(guān)閉。單擊“File→New...”,打開一個(gè)新的文件輸入窗口,在這個(gè)窗口里輸入上述源程序。輸入完畢之后,選擇“File-->Save”,給這個(gè)文件取名保存。單擊“Project->NewProject...”,出現(xiàn)對話框,要求給將要建立的工程起一個(gè)名字,這里起名為test,不需要輸入擴(kuò)展名。單擊“保存”按鈕,出現(xiàn)第二個(gè)對話框。CPU選擇窗口標(biāo)準(zhǔn)8051啟動代碼加入工程詢問是否要將標(biāo)準(zhǔn)的8051啟動代碼加入工程,單擊“是”按鈕。添加源程序單擊“SourceGroup1",使其反白顯示,然后單擊鼠標(biāo)右鍵,出現(xiàn)一個(gè)下拉菜單。選中其中的“AddfiletoGroup‘SourceGroup1’”,出現(xiàn)一個(gè)對話框,要求尋找源文件。工程選項(xiàng)的設(shè)置選擇資源窗口中的“Target1”,單擊鼠標(biāo)右鍵,出現(xiàn)快捷菜單,然后選擇“OptionsforTarget‘Target1’”。生成單片機(jī)燒錄文件在彈出的對話框中選擇“output”標(biāo)簽頁,選中該頁的“CreatHEXFile”前面的復(fù)選框,這樣在編譯后就會生成可以用于燒寫的.hex文件。(2)項(xiàng)目編譯、連接“Project→Buildtarget”可以對當(dāng)前工程進(jìn)行連接,產(chǎn)生目標(biāo)代碼。“Project→RebuildAlltargetfiles”將會對當(dāng)前工程中的所有文件(無論是否修改過)重新進(jìn)行編譯,產(chǎn)生目標(biāo)代碼。而如果選擇“Project→Translate....",項(xiàng)則僅對當(dāng)前文件進(jìn)行編譯,不進(jìn)行連接,也就不會產(chǎn)生新的目標(biāo)代碼。編譯、設(shè)置的工具欄按鈕編譯、編譯連接、全部重建、停止編譯和對工程進(jìn)行設(shè)置。編譯后的輸出信息編譯過程中的信息將出現(xiàn)在輸出窗口中的Build頁中,提示獲得了名為mytest.hex的文件,該文件即可被編程器讀入并寫到芯片中。同時(shí)還可看到該程序的代碼量、內(nèi)部RAM的使用量、外部RAM的使用量等一些信息。除此之外還產(chǎn)生了一些其他相關(guān)的文件可被用于Keil的仿真與調(diào)試。(3)程序的仿真與調(diào)試工程進(jìn)行匯編、連接成功以后,按組合鍵[Ctrl十F5】或者選擇“Debug→Start/StopDebugSession”即可進(jìn)入調(diào)試狀態(tài),菜單項(xiàng)中出現(xiàn)了一個(gè)用于仿真運(yùn)行和調(diào)試的工具條。從左到右依次是復(fù)位、運(yùn)行、暫停、單步、過程單步、執(zhí)行完當(dāng)前子程序、運(yùn)行到當(dāng)前行、下一狀態(tài)、打開跟蹤、觀察跟蹤、反匯編窗口、觀察窗口、代碼作用范圍分析、1#串行窗口、內(nèi)存窗口、性能分析、工具按鈕等命令的快捷按鈕。仿真或觀察P0、P2端口的狀態(tài)選擇“Peripherals→I/O-Ports→Port0”和“Peripherals→I/O-Ports→Port2”,在主窗口中會出現(xiàn)P0,P2口的狀態(tài),需要在程序運(yùn)行的時(shí)候改變P0.0(4)在Proteus中仿真運(yùn)行①雙擊桌面上的ISIS7Professional圖標(biāo)或者單擊屏幕左下方的“開始”→“程序”→“Proteus7Professional”→“ISIS7Professional”,出現(xiàn)啟動界面后就進(jìn)入了ProteusISIS集成環(huán)境。②選擇“文件”→“打開設(shè)計(jì)”,在文件打開對話框中打開task1.dsn文件(由教師提前準(zhǔn)備好,本文件在配套光盤“任務(wù)1”文件夾中。(4)在Proteus中仿真運(yùn)行③單擊ProteusISIS集成環(huán)境中下部“仿真工具欄”的最左邊的按鈕(即“運(yùn)行”),則可在設(shè)計(jì)區(qū)察看運(yùn)行結(jié)果,可以看到最右邊的一個(gè)發(fā)光二極管亮了。C51循環(huán)控制語句循環(huán)語句1.while語句while(表達(dá)式){循環(huán)體}事先測試循環(huán),在執(zhí)行語句之前判斷表達(dá)式,因此,循環(huán)可能沒有執(zhí)行循環(huán)體就退出。語句循環(huán)條件?FT【例2-6】使用while語句實(shí)現(xiàn)從1到100的累加。#include<reg52.h>#include<stdio.h>voidmain(){unsignedinti=1;unsignedintsum=0;SCON=0x52;TMOD=0x20;TH1=0xE8;TR1=1;while(i<=100){sum+=1;i++;}printf(“sum=%d\n”,sum);while(1){}}2.for語句for(表達(dá)式1;表達(dá)式2;表達(dá)式3){循環(huán)體}表達(dá)式1為循環(huán)控制變量初始化表達(dá)式,表達(dá)式2為循環(huán)條件表達(dá)式,表達(dá)式3為循環(huán)控制變量增值表達(dá)式?!霸鲋怠眱H僅是指循環(huán)控制變量發(fā)生了變化,不要按其字面意思去理解。表達(dá)式1表達(dá)式2循環(huán)體表達(dá)式3真假for語句的幾點(diǎn)說明①for語句中的控制變量初始化表達(dá)式可以省略,但分號(;)不可省略。②for語句中的循環(huán)條件表達(dá)式可以省略。此時(shí)一般要在循環(huán)體中對循環(huán)條件進(jìn)行判斷并提供退出循環(huán)的措施,否則會導(dǎo)致“死循環(huán)”。③for語句中的循環(huán)控制變量增值表達(dá)式也可以省略。④可以同時(shí)省略for語句中的循環(huán)控制變量初始化表達(dá)式和增量表達(dá)式,這樣的for語句完全等價(jià)于while語句。實(shí)例:常見程序段:inti;for(i=0;i<30000;i++){}自行完成例2-6的功能。3.do…while語句do{循環(huán)體}while(表達(dá)式);注意:在while(表達(dá)式)后面要加分號。語句繼續(xù)循環(huán)?FT4.嵌套的循環(huán)結(jié)構(gòu)實(shí)際應(yīng)用中,經(jīng)常要用到嵌套的循環(huán)結(jié)構(gòu)。在嵌套循環(huán)結(jié)構(gòu)中,內(nèi)層循環(huán)需要置于稱之為外層循環(huán)的另一個(gè)循環(huán)中。3種循環(huán)語句還可以互相嵌套?!纠?-9】P0.0接一個(gè)發(fā)光二極管,P1.0按一個(gè)按鍵,要求當(dāng)按鍵按下時(shí),發(fā)光二極管不停地閃爍,當(dāng)按鍵放開時(shí),停止閃爍。源程序清單:#include<reg51.h>sbitp10=P1^0;sbitp00=P0^0;voidmain(){while(1){while(p10==0)p00=~p00;
}}for(i=50000;i>0;i--);unsignedinti;2.2.4轉(zhuǎn)移語句1.break語句break;在switch語句中,break語句用來使流程跳出switch結(jié)構(gòu),繼續(xù)執(zhí)行switch之后的語句;在for語句中,break語句用來使流程跳出循環(huán)體,接著執(zhí)行循環(huán)后面的語句?!纠?-10】#include<reg51.h>sbitP10=P1^0;sbitP00=P0^0;voidmain(){inti;while(1){P0=~P0;for(i=30000;i>0;i++);
if(P10==0)break;}while(1);}針對例2-9,若與P0.0相連的發(fā)光二極管不停地閃爍,當(dāng)與P1.0相連的按鍵按下時(shí)停止閃爍。2.2.4轉(zhuǎn)移語句2.continue語句continue;continue語句的作用是跳過本次循環(huán)中剩余的循環(huán)體語句,立即進(jìn)行下一次循環(huán)【例2-11】針對例2-9,其功能改變?yōu)楫?dāng)與P1.0相連的K1按下時(shí),發(fā)光二極管暫
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年中職第一學(xué)年(護(hù)理倫理學(xué))護(hù)理職業(yè)道德階段測試題及答案
- 2025年大學(xué)大二(軟件工程)軟件測試技術(shù)綜合測試題及答案
- 2025年高職護(hù)理(護(hù)理技能考核)試題及答案
- 2025年大學(xué)(中藥學(xué))中藥資源學(xué)階段測試題及答案
- 2025年大學(xué)三年級(口腔醫(yī)學(xué)技術(shù))義齒制作工藝試題及答案
- 2025年高職電子(電子測量技術(shù))試題及答案
- 2025年高職機(jī)場鳥擊防范技術(shù)(機(jī)場鳥防基礎(chǔ))試題及答案
- 2025年高職工業(yè)機(jī)器人技術(shù)(工業(yè)機(jī)器人)試題及答案
- 2025年中職體育服務(wù)與管理(體育場館管理)試題及答案
- 2026年湖北國土資源職業(yè)學(xué)院單招綜合素質(zhì)考試備考題庫帶答案解析
- (完整版)物業(yè)管理服務(wù)方案
- 全國中醫(yī)護(hù)理骨干人才培訓(xùn)匯報(bào)
- 胸腔鏡手術(shù)配合及護(hù)理
- 《浙江市政預(yù)算定額(2018版)》(第七冊-第九冊)
- 軍隊(duì)功勛榮譽(yù)表彰登記(報(bào)告)表
- 戶外探險(xiǎn)俱樂部領(lǐng)隊(duì)管理制度
- 移動通信基站天線基礎(chǔ)知識專題培訓(xùn)課件
- 《軍隊(duì)政治工作手冊》出版
- 電子商務(wù)專業(yè)教師教學(xué)創(chuàng)新團(tuán)隊(duì)建設(shè)方案
- 2023年中國海洋大學(xué)環(huán)科院研究生培養(yǎng)方案
- GB/T 16927.1-2011高電壓試驗(yàn)技術(shù)第1部分:一般定義及試驗(yàn)要求
評論
0/150
提交評論