欧洲免费无码视频在线,亚洲日韩av中文字幕高清一区二区,亚洲人成人77777网站,韩国特黄毛片一级毛片免费,精品国产欧美,成人午夜精选视频在线观看免费,五月情天丁香宗合成人网

薈聚奇文、博采眾長、見賢思齊
當前位置:公文素材庫 > 報告體會 > 心得體會 > MCS-51單片機學習及其心得

MCS-51單片機學習及其心得

網(wǎng)站:公文素材庫 | 時間:2019-05-29 07:17:00 | 移動端:MCS-51單片機學習及其心得

MCS-51單片機學習及其心得

MCS-51單片機學習及其心得

機械電子工程學院09電子(2)班曹小迪201*10330236

201*-201*上學年我們專業(yè)開設了MCS-51單片機的原理及接口技術這么專業(yè)課程,對于電子專業(yè)學生的我們是非常有必要的。單片機是一切自動智能電子產(chǎn)品必須具備的一個不可或缺的控制中樞系統(tǒng)。通俗點講就是電子產(chǎn)品的“大腦”。所以學習單片機對于做電子設計的我們來說有著遠的意義。

MCS51是指由美國INTEL公司(對了,就是大名鼎鼎的INTEL)生產(chǎn)的一系列單片機的總稱,這一系列單片機包括了好些品種,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的產(chǎn)品,該系列其它單片機都是在8051的基礎上進行功能的增、減、改變而來的,所以人們習慣于用8051來稱呼MCS51系列單片機,而8031是前些年在我國最流行的單片機,所以很多場合會看到8031的名稱。

MSC-51的基本組成:

運算器

一、MCS51的CPU由運算器和控制器組成。

運算器以完成二進制的算術/邏輯運算部件ALU為核心,再加上暫存器TMP、累加器ACC、寄存器B、程序狀態(tài)標志寄存器PSW及布爾處理器。累加器ACC是一個八位寄存器,它是CPU中工作最頻繁的寄存器。在進行算術、邏輯運算時,累加器ACC往往在運算前暫存一個操作數(shù)(如被加數(shù)),而運算后又保存其結果(如代數(shù)和)。寄存器B主要用于乘法和除法操作。標志寄存器PSW也是一個八位寄存器,用來存放運算結果的一些特征,如有無進位、借位等。其每位的具體含意如下所示:控制器

控制器是CPU的神經(jīng)中樞,它包括定時控制邏輯電路、指令寄存器、譯碼器、地址指針DPTR及程序計數(shù)器PC、堆棧指針SP等。這里程序計數(shù)器PC是由16位寄存器構成的計數(shù)器。要單片機執(zhí)行一個程序,就必須把該程序按順序預先裝入存儲器ROM的某個區(qū)域。單片機動作時應按順序一條條取出指令來加以執(zhí)行。因此,必須有一個電路能找出指令所在的單元地址,該電路就是程序計數(shù)器PC。當單片機開始執(zhí)行程序時,給PC裝入第一條指令所在地址,它每取出一條指令(如為多字節(jié)指令,則每取出一個指令字節(jié)),PC的內容就自動加1,以指向下一條指令的地址,使指令能順序執(zhí)行。只有當程序遇到轉移指令、子程序調用指令,或遇到中斷時,PC才轉到所需要的地方去。8051CPU指定的地址,從ROM相應單元中取出指令字節(jié)放在指令寄存器中寄存,然后,指令寄存器中的指令代碼被譯碼器譯成各種形式的控制信號,這些信號與單片機時鐘振蕩器產(chǎn)生的時鐘脈沖在定時與控制電路中相結合,形成按一定時間節(jié)拍變化的電平和時鐘,即所謂控制信息,在CPU內部協(xié)調寄存器之間的數(shù)據(jù)傳輸、運算等操作。存儲器

存儲器是單片機的又一個重要組成部分,每個存儲單元對應一個地址,如256個單元共有256個地址,用兩位16進制數(shù)表示,即存儲器的地址(00H~FFH)。存儲器中每個存儲單元可存放一個八位二進制信息,通常用兩位16進制數(shù)來表示,這就是存儲器的內容。存儲器的存儲單元地址和存儲單元的內容是不同的兩個概念,不能混淆。(1)程序存儲器

程序是控制計算機動作的一系列命令,單片機只認識由“0”和“1”代碼構成的機器指令。

(2)數(shù)據(jù)存儲器

單片機的數(shù)據(jù)存儲器由讀寫存儲器RAM組成。其最大容量可擴展到64k,用于存儲實時輸入的數(shù)據(jù)。8051內部有256個單元的內部數(shù)據(jù)存儲器,其中00H~7FH為內部隨機存儲器RAM,80H~FFH為專用寄存器區(qū)。實際使用時應首先充分利用內部存儲器,從使用角度講,搞清內部數(shù)據(jù)存儲器的結構和地址分配是十分重要的。因為將來在學習指令系統(tǒng)和程序設計時會經(jīng)常用到它們。8051內部數(shù)據(jù)存儲器地址由00H至FFH共有256個字節(jié)的地址空間,該空間被分為兩部分,其中內部數(shù)據(jù)RAM的地址為00H~7FH(即0~127)。而用做特殊功能寄存器的地址為80H~FFH。(3)特殊功能寄存器

特殊功能寄存器(SFR)的地址范圍為80H~FFH。在MCS-51中,除程序計數(shù)器PC和四個工作寄存器區(qū)外,其余21個特殊功能寄存器都在這SFR塊中。其中5個是雙字節(jié)寄存器,它們共占用了26個字節(jié)。特殊功能寄存器反映了8051的狀態(tài),實際上是8051的狀態(tài)字及控制字寄存器。

在學習單片機的基本原理組成的時,充分用到了之前學習的專業(yè)基礎課包括:電路基礎、模擬電子技術、數(shù)字電路基礎等課程,從而使我們再一次的對上述課程的鞏固學習,從新的對知識梳理了一遍更加深刻了對知識的印象,了解到了知識串接的重要性。單片機的指令系統(tǒng)

MSC-51單片機有包括:數(shù)據(jù)傳送指令、算數(shù)運算指令、邏輯運算指令、控制轉移指令、位操作指令111條,有立即尋址、直接尋址、寄存器尋址、寄存器間接尋址、相對尋址、變址尋址、位尋址7種尋址方式。在學習單片機的指令系統(tǒng)時候我們學習了一種跟機器打交道的比較實用的匯編語言,在這個學習過程是非常有趣的,你可要通過自己編寫程序區(qū)控制單片機。通過設計可以用單片機制造一些電子產(chǎn)品輸入自己設計的程序是它完成我們所需要的功能。

MCS-單片機作為最早的單片機其結構簡單,容易較好的讓我們初學者入門,而一切所以的后來的單片機的原理都是由MCS-拓展的,所以我們學習MSC-51為我們單片機打下堅實的基礎。

擴展閱讀:MCS51單片機入門學習心得

MSC51單片機入門學習心得

1、Keil&C51基本知識和技巧:

(1)調試時間之前記得調整晶振頻率

(2)程序改過之后要點擊“rebuildalltargetfile”才能更新hex文件(3)新建text文件后要保存為“文件名.c”,然后放進工程(4)引用各串口時記得用大寫(如“P0”)

(5)用STC-ISP燒程序時,當hex文件進行了更新,需要重新“打開程序文件”(6)用sbit可以給單片機上某個指定I/O口進行定義,如“sbitD1=P0^0”(7)對程序進行調試之前需要進行保存和編譯

(8)宏定義#define的格式:#define字符串字符串代表的內容(不需要加分號)(9)如要調用子函數(shù),需在主函數(shù)之前進行聲明,(聲明格式:“函數(shù)類型函數(shù)名(形

參類型);”,如“voiddelay(unsignedint);”。記得其后要加分號)

(10)主函數(shù)里面記得先添加一個大循環(huán)while(1){}(11)每當需要放{}的時候記得要成對地放

(12)延時函數(shù)一般用嵌套的for()語句來設計,無限循環(huán)則一般用while()來實現(xiàn)(13)求反碼的技巧:以用8位二進制表示的數(shù)00000001為例,求反碼只需用1111

1111減去00000001,用十六進制表示即為0xff0x01,相減的結果即為00000001(0x01)的反碼

(14)向左循環(huán)移位函數(shù)“_crol_(變量名,移位的位數(shù))”能夠實現(xiàn)二進制數(shù)的循環(huán)左

移,使用該函數(shù)須添加頭文件“”

(15)向右循環(huán)移位函數(shù)“_cror_(變量名,移位的位數(shù))”能夠實現(xiàn)二進制數(shù)的循環(huán)右

移,使用該函數(shù)須添加頭文件“”

(16)char型變量一個字節(jié)(8位二進制),int型變量2個字節(jié)(16位二進制),longint

型4個字節(jié)(32位二進制)

(17)用C51編程的時候出現(xiàn)“warning”的主要原因:定義出來的變量或者函數(shù)在程

序執(zhí)行過程中無法用到,一般出現(xiàn)了warning也要重新修正程序

(18)用keil編程時,不能在變量聲明語句之前加其它語句(C51看作是嚴格的C語

言)

(19)return語句的作用是退出函數(shù)和返回函數(shù)值,一個函數(shù)內部允許有多個return

函數(shù)。如果函數(shù)有返回值,則函數(shù)的類型不能為Void型

(20)在函數(shù)A中被調用的函數(shù)B中的break不能對函數(shù)A產(chǎn)生作用(21)特殊延時函數(shù):voiddelay(){;;},延時時間大約為5us(22)在keil環(huán)境下,需要按兩下backspace才能刪掉一個中文字

2、單片機硬件知識:

(1)單片機復位管腳RST:復位信號輸入端,高電平有效,當輸入不少于2個機器

周期的高電平時,單片機復位,內部的程序指針指向0;單片機正常工作時RST加0.5V的低電平電壓;RST管腳同時還是單片機的備用電源接入端VPD,當Vdd過低時,單片機接上連接在VPD端的備用電源,用來保證單片機RAM內的數(shù)據(jù)不丟失

(2)單片機只在上電之后檢測計算機是否有傳來下載指令,如果有則上電后先從計算機上下載hex文件,然后再運行;單片機上電后則無法對其發(fā)送下載指令(單片機只能在上電之后運行之前進行下載)

(3)關于P3總線:P3總線的每一個管腳除了能作為I/O接口,還有另外一個功能。

8個管腳默認為I/O接口,要改變管腳的功能需要對內部寄存器進行設置

P3總線的第二功能介紹:

P3.0串行輸入口RXDP3.1串行輸出口TXDP3.2外部中斷0INT0P3.3外部中斷1INT1

P3.4定時器0/外部計數(shù)輸入T0&P3.5定時器1/外部計數(shù)輸入T1:能夠對管腳輸入的方波數(shù)(高低電平轉換次數(shù))進行計數(shù)

(4)30管腳ALE/PROG:單片機正常工作時向外輸出周期為六分之一個時鐘周期

的方波,用于檢測單片機是否正常工作

(5)31管腳EA/Vpp:低電平時單片機只訪問外部存儲器,高電平時當單片機內部

存儲器不夠用就訪問外部存儲器

3、數(shù)碼管的顯示:

(1)數(shù)碼管的動態(tài)顯示:利用了人類的視覺停留效應,即一個人正在看某個物體,

如果這個物體消失了,但能夠在1mS(0.001S)內重新出現(xiàn),則人眼會覺得物體沒有消失過。則在設計數(shù)碼管動態(tài)顯示時,只要保證每位數(shù)碼管都能在消失后0.01s內重新出現(xiàn)。(每位數(shù)碼管的發(fā)光時間應該盡量長,保證有足夠的發(fā)光亮度)

(2)在數(shù)碼管的動態(tài)顯示中,先改變段選再改變位選能夠有效提高各段數(shù)碼管的清

晰度

3、定時器:

工作模式寄存器TMOD

控制寄存器TCON

(1)

定時器/計數(shù)器計數(shù)一次的時間約為0.0000011S(2)定時器的工作特征:每12個時鐘周期計數(shù)一次;計數(shù)完成后執(zhí)行一次定時器

中斷,定時器中斷其執(zhí)行的一般是對計時器的重新賦值;

(3)打開定時/計數(shù)器中斷的語句是“ET0/ET1=1;”,打開總中斷的語句是“EA=1;”(4)定時器無法啟動的原因:

1、沒有打開總中斷(EA沒有置1)2、沒有打開定時器中斷(IE沒有置1)

3、沒有設定定時器的工作方式(以上原因屬于定時器初始化失。;4、沒有給計數(shù)變量count賦初值;5、沒有打開定時器(TR沒有置1)

(5)需要定時器/計數(shù)器計數(shù)N次,則給定時器/計數(shù)器賦的初值應該是65536-N(6)使用定時器定時比較麻煩,而且定時器的數(shù)量有限,通常在需要精確定時的情

況下才用

(7)定時器中不能處理進行太多的數(shù)據(jù)處理,否則會影響定時的準確性(8)工作模式寄存器(TMOD):

1、GATE:當GATE=0時,TR置1即可啟動定時器;當GATE=1時,則需要在外部引腳信號INT=1的條件下把TR置1才能啟動定時器2、C/T:定時器/計數(shù)器選擇位,C/T=1時為計數(shù)方式,C/T=0時為定時方式

3、M0M1:工作方式選擇位,一般選擇M1=0,M0=1,此時定時器工作在16位定時器方式

(9)控制寄存器(TCON):

1、TR:定時器運行控制位,當GATE=0時,TR=1啟動定時器,TR=0關閉定時器

2、TF:定時器溢出標志位(與外部中斷有關)3、IE:外部中斷請求標志位

5、中斷:

(1)中斷的兩種觸發(fā)方式1、電平觸發(fā),中斷發(fā)生在低電平,除非重新回到高

電平,否則單片機無法返回中斷;2、CP脈沖上升/下降沿觸發(fā),中斷在CP脈沖的上升/下降沿觸發(fā),中斷響應完之后程序自動返回中斷繼續(xù)執(zhí)行主程序

(2)外部中斷的使用方法(以外部中斷0為例):首先必須打開CPU中斷和外部中

斷,具體在主程序中寫入“EA=1;EX0=1;”;然后編寫中斷后要執(zhí)行的程序,格式為“void函數(shù)名()interrupt0”;設置外部中斷觸發(fā)方式,“IT0=1;”代表脈沖邊沿觸發(fā),“IT0=0”代表電平觸發(fā);IT0,EX0,EA的默認值都為0

(3)8051支持的5個中斷源分別為外部中斷0、定時器0溢出中斷、外部中斷1、

定時器1溢出中斷和串口中斷。對應的中斷號為0、1、2、3、4;

(4)中斷函數(shù)不需要在主函數(shù)之前聲明6、獨立鍵盤:

(1)使用獨立鍵盤的技巧:如果需要系統(tǒng)按一下按鍵執(zhí)行一次指令,則應設定為按

下按鍵后進入死循環(huán),松開按鍵后才執(zhí)行指令,則按鍵按下的時間不會影響到執(zhí)行指令的次數(shù),避免了系統(tǒng)的錯誤工作;同樣是針對按一下按鍵執(zhí)行一次指令的系統(tǒng),按下按鍵后和松開按鍵后設定約10毫秒的延時能夠消除由于振蕩而造成的錯誤執(zhí)行

(2)消抖一般是延時10ms,是否要進行消抖需要結合具體情況進行分析7、IIC總線:(1)

I^2C總線由兩條線組成:SCL(時間線)和SDA(數(shù)據(jù)線),當SCL為低電平時,SDA的高低電平才能發(fā)生變化,SCL為高電平時SDA上的數(shù)據(jù)被讀取,此時SDA上的數(shù)據(jù)應該保持穩(wěn)定

(2)

(3)(4)(5)(6)(7)(8)

(起始信號與終止信號)

在起始信號后必須傳送一個從機的地址(7位),第8位是數(shù)據(jù)的傳送方向位(發(fā)送T/接收R),0代表主機發(fā)送數(shù)據(jù),1代表主機接收數(shù)據(jù)

當接收器要處理內部中斷,無法繼續(xù)接收數(shù)據(jù)時,可以先把SCL拉低使發(fā)送器暫停工作,等到可以繼續(xù)接收數(shù)據(jù)時再釋放SCL

用IIC總線傳送數(shù)據(jù)時,stop信號和start信號之間應該有一定的時間間隔。時間間隔太短機器有可能反應不過來

IIC總線進行數(shù)據(jù)傳送時,時鐘信號為高電平期間,數(shù)據(jù)線上的數(shù)據(jù)必須保持穩(wěn)定

養(yǎng)成良好習慣,數(shù)據(jù)總線不用的時候要將其釋放

IIC總線空閑時,SCL和SDA兩根線均為高電平;各器件與SCL、SDA的關系都是線“與”的關系

IIC主機進行讀操作時,步驟是:起始信號從機地址+0(主機發(fā)送數(shù)據(jù))應答從機內部存儲單元地址應答再次發(fā)送起始信號從機地址+1(主機讀取數(shù)據(jù))應答讀取指定存儲單元中的數(shù)據(jù)非應答終止信號(使用IIC總線的關鍵是嚴格按照操作步驟進行操作!)IIC主機發(fā)出終止信號之后要隔一段時間才能重新發(fā)送起始信號傳送數(shù)據(jù)時從數(shù)據(jù)的最高位開始傳送

數(shù)據(jù)傳送進行到應答位時,要保證應答位時鐘脈沖出現(xiàn)后和消失前SDA保持穩(wěn)定低電平

當主機接收數(shù)據(jù)時,它收到最后一個數(shù)據(jù)字節(jié)后,必須向從機發(fā)出一個結束傳送的信號。這個信號是由對從機的“非應答”來實現(xiàn)的。然后,從機釋放SDA線,以允許主機產(chǎn)生終止信號。

無論是讀數(shù)據(jù)還是寫數(shù)據(jù),讀/寫完一個字節(jié)之后必須添加應答信號

(9)(10)(11)(12)

(13)

8、繼電器:

繼電器的作用是利用小電流控制大電流,相當于一個電控開關。常用的繼電器有五個引腳,其中兩個通電后繼電器進入“常閉”狀態(tài)。不通電時繼電器處于“常開”狀態(tài)。

9、時鐘芯片DS1302:

用BCD碼來存儲數(shù)據(jù),BCD碼的高4位對應一個十進制數(shù)的十位,低4位對應十進制數(shù)的個位

友情提示:本文中關于《MCS-51單片機學習及其心得》給出的范例僅供您參考拓展思維使用,MCS-51單片機學習及其心得:該篇文章建議您自主創(chuàng)作。

來源:網(wǎng)絡整理 免責聲明:本文僅限學習分享,如產(chǎn)生版權問題,請聯(lián)系我們及時刪除。


MCS-51單片機學習及其心得》由互聯(lián)網(wǎng)用戶整理提供,轉載分享請保留原作者信息,謝謝!
鏈接地址:http://www.7334dd.com/gongwen/673005.html
相關文章