欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      單片機(jī)io口控制實(shí)驗(yàn)報(bào)告(樣例5)

      時(shí)間:2020-11-05 12:21:56下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《單片機(jī)io口控制實(shí)驗(yàn)報(bào)告》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《單片機(jī)io口控制實(shí)驗(yàn)報(bào)告》。

      第一篇:單片機(jī)io口控制實(shí)驗(yàn)報(bào)告

      單片機(jī)實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)名稱:

      I/O 口控制

      名:

      張昊 學(xué)

      號:

      110404247 班

      級:

      通信 2 班 時(shí)

      間:

      2013.11.19

      南京理工大學(xué)紫金學(xué)院電光系

      一、實(shí)驗(yàn)?zāi)康?span id="civfthv" class="content_title3">1、學(xué)習(xí)I/O 口的使用。

      2、學(xué)習(xí)延時(shí)子程序的編寫和使用。

      3、掌握單片機(jī)編程器的使用和芯片燒寫方法。

      二、

      實(shí)驗(yàn)原理

      1、廣告流水燈實(shí)驗(yàn) (1)

      做單一燈的左移右移,八個(gè)發(fā)光二極管 L1~L8 分別接在單片機(jī)的P1.0~P1.7 接口上,輸出“0”的時(shí)候,發(fā)光二極管亮,開始時(shí)P1.0->P1.1->P1.2->P1.3->...->P1.7->P1.6->...P1.0 亮,重復(fù)循環(huán)。

      (2)

      系統(tǒng)板上硬件連線:把“單片機(jī)系統(tǒng)”A2 區(qū)的 J61 接口的 P1.0~P1.6端口與 D1 區(qū)的 J52 接口相連。要求:P1.0 對應(yīng)著 L1,P1.1 對應(yīng)L2,……,P1.7 對應(yīng)著 L8。

      P1 口廣告流水燈實(shí)驗(yàn)原理圖如下

      程序設(shè)計(jì)流程:流程圖如下

      2、模擬開關(guān)實(shí)驗(yàn) (1)

      監(jiān)視開關(guān) K1(接在 P3.0 端口上),用發(fā)光二極管 L1(接在單片機(jī)P1.0 端口上)顯示開關(guān)狀態(tài),如果開關(guān)合上,L1 亮,開關(guān)打開,L1 熄火。

      (2)

      系統(tǒng)板上硬件連線:把“單片機(jī)系統(tǒng)”A2 區(qū)的 P1.0 端口用導(dǎo)線連接到 D1 區(qū)的 LED1 端口上;把“單片機(jī)系統(tǒng)”A2 區(qū)的 P3.0 端口用導(dǎo)線連接到 D1 區(qū)的 KEY1 端口上; 實(shí)驗(yàn)原理圖如下圖

      程序設(shè)計(jì)流程

      二、實(shí)驗(yàn)內(nèi)容

      1、流水燈

      #include sbit p10=P1^0;sbit p11=P1^1;sbit p12=P1^2;sbit p13=P1^3;sbit p14=P1^4;sbit p15=P1^5;sbit p16=P1^6;sbit p17=P1^7;

      unsigned char count=0;bit flag;void main(){ 開始 開關(guān)閉合否 L1 滅 L1 亮

      P1=0xff;TMOD=0x01;TH0=55536/256;TL0=55536%256;EA=1;ET0=1;TR0=1;while(1){ p10=0;while(flag==0);flag=0;p10=1;p11=0;while(flag==0);flag=0;p11=1;p12=0;while(flag==0);flag=0;p12=1;p13=0;while(flag==0);flag=0;p13=1;p14=0;while(flag==0);flag=0;p14=1;p15=0;while(flag==0);flag=0;p15=1;p16=0;while(flag==0);flag=0;p16=1;p17=0;while(flag==0);flag=0;p17=1;} } void t0_srv()interrupt 1 { TH0=55536/256;TL0=55536%256;count++;if(count==10){ flag=1;

      count=0;} } 2、模擬開關(guān)

      #include sbit p30=P3^0;sbit p10=P1^0;void main(){

      while(1){ if(p30==0)

      p10=0;else

      p10=1;} }

      三、小結(jié)與體會

      通過本次實(shí)驗(yàn)學(xué)會了 I/O 口的使用,學(xué)會了延時(shí)子程序的編寫和使用以及掌握了單片機(jī)編程器的使用和芯片燒寫方法。通過 Proteus ISIS 和 Keil uvision軟件的互相配合,使得單片機(jī)在電腦上的仿真輕松便捷。通過本次試驗(yàn),利用簡單的試驗(yàn),2 種軟件以及硬件的使用。

      第二篇:51單片機(jī)IO口工作原理

      51單片機(jī)I/O口工作原理

      一、P0端口的結(jié)構(gòu)及工作原理 P0端口8位中的一位結(jié)構(gòu)圖見下圖:

      由上圖可見,P0端口由鎖存器、輸入緩沖器、切換開關(guān)、一個(gè)與非門、一個(gè)與門及場效應(yīng)管驅(qū)動電路構(gòu)成。再看圖的右邊,標(biāo)號為P0.X引腳的圖標(biāo),也就是說P0.X引腳可以是P0.0到P0.7的任何一位,即在P0口有8個(gè)與上圖相同的電路組成。

      下面,我們先就組成P0口的每個(gè)單元部份跟大家介紹一下:

      先看輸入緩沖器:在P0口中,有兩個(gè)三態(tài)的緩沖器,在學(xué)數(shù)字電路時(shí),我們已知道,三態(tài)門有三個(gè)狀態(tài),即在其的輸出端可以是高電平、低電平,同時(shí)還有一種就是高阻狀態(tài)(或稱為禁止?fàn)顟B(tài)),大家看上圖,上面一個(gè)是讀鎖存器的緩沖器,也就是說,要讀取D鎖存器輸出端Q的數(shù)據(jù),那就得使讀鎖存器的這個(gè)緩沖器的三態(tài)控制端(上圖中標(biāo)號為?讀鎖存器?端)有效。下面一個(gè)是讀引腳的緩沖器,要讀取P0.X引腳上的數(shù)據(jù),也要使標(biāo)號為?讀引腳?的這個(gè)三態(tài)緩沖器的控制端有效,引腳上的數(shù)據(jù)才會傳輸?shù)轿覀儐纹瑱C(jī)的內(nèi)部數(shù)據(jù)總線上。

      D鎖存器:構(gòu)成一個(gè)鎖存器,通常要用一個(gè)時(shí)序電路,時(shí)序的單元電路在學(xué)數(shù)字電路時(shí)我們已知道,一個(gè)觸發(fā)器可以保存一位的二進(jìn)制數(shù)(即具有保持功能),在51單片機(jī)的32根I/O口線中都是用一個(gè)D觸發(fā)器來構(gòu)成鎖存器的。大家看上圖中的D鎖存器,D端是數(shù)據(jù)輸入端,CP是控制端(也就是時(shí)序控制信號輸入端),Q是輸出端,Q非是反向輸出端。

      對于D觸發(fā)器來講,當(dāng)D輸入端有一個(gè)輸入信號,如果這時(shí)控制端CP沒有信號(也就是時(shí)序脈沖沒有到來),這時(shí)輸入端D的數(shù)據(jù)是無法傳輸?shù)捷敵龆薗及反向輸出端Q非的。如果時(shí)序控制端CP的時(shí)序脈沖一旦到了,這時(shí)D端輸入的數(shù)據(jù)就會傳輸?shù)絈及Q非端。數(shù)據(jù)傳送過來后,當(dāng)CP時(shí)序控制端的時(shí)序信號消失了,這時(shí),輸出端還會保持著上次輸入端D的數(shù)據(jù)(即把上次的數(shù)據(jù)鎖存起來了)。如果下一個(gè)時(shí)序控制脈沖信號來了,這時(shí)D端的數(shù)據(jù)才再次傳送到Q端,從而改變Q端的狀態(tài)。

      多路開關(guān):在51單片機(jī)中,當(dāng)內(nèi)部的存儲器夠用(也就是不需要外擴(kuò)展存儲器時(shí),這里講的存儲器包括數(shù)據(jù)存儲器及程序存儲器)時(shí),P0口可以作為通用的輸入輸出端口(即I/O)使用,對于8031(內(nèi)部沒有ROM)的單片機(jī)或者編寫的程序超過了單片機(jī)內(nèi)部的存儲器容量,需要外擴(kuò)存儲器時(shí),P0口就作為?地址/數(shù)據(jù)?總線使用。那么這個(gè)多路選擇開關(guān)就是用于選擇是做為普通I/O口使用還是作為?數(shù)據(jù)/地址?總線使用的選擇開關(guān)了。大家看上圖,當(dāng)多路開關(guān)與下面接通時(shí),P0口是作為普通的I/O口使用的,當(dāng)多路開關(guān)是與上面接通時(shí),P0口是作為?地址/數(shù)據(jù)?總線使用的。

      輸出驅(qū)動部份:從上圖中我們已看出,P0口的輸出是由兩個(gè)MOS管組成的推拉式結(jié)構(gòu),也就是說,這兩個(gè)MOS管一次只能導(dǎo)通一個(gè),當(dāng)V1導(dǎo)通時(shí),V2就截止,當(dāng)V2導(dǎo)通時(shí),V1截止。

      與門、與非門:這兩個(gè)單元電路的邏輯原理我們在第四課數(shù)字及常用邏輯電路時(shí)已做過介紹,不明白的同學(xué)請回到第四節(jié)去看看。

      前面我們已將P0口的各單元部件進(jìn)行了一個(gè)詳細(xì)的講解,下面我們就來研究一下P0口做為I/O口及地址/數(shù)據(jù)總線使用時(shí)的具體工作過程。

      1、作為I/O端口使用時(shí)的工作原理

      P0口作為I/O端口使用時(shí),多路開關(guān)的控制信號為0(低電平),看上圖中的線線部份,多路開關(guān)的控制信號同時(shí)與與門的一個(gè)輸入端是相接的,我們知道與門的邏輯特點(diǎn)是“全1出1,有0出0”那么控制信號是0的話,這時(shí)與門輸出的也是一個(gè)0(低電平),與讓的輸出是0,V1管就截止,在多路控制開關(guān)的控制信號是0(低電平)時(shí),多路開關(guān)是與鎖存器的Q非端相接的(即P0口作為I/O口線使用)。

      P0口用作I/O口線,其由數(shù)據(jù)總線向引腳輸出(即輸出狀態(tài)Output)的工作過程:當(dāng)寫鎖存器信號CP

      有效,數(shù)據(jù)總線的信號→鎖存器的輸入端D→鎖存器的反向輸出Q非端→多路開關(guān)→V2管的柵極→V2的漏極到輸出端P0.X。前面我們已講了,當(dāng)多路開關(guān)的控制信號為低電平0時(shí),與門輸出為低電平,V1管是截止的,所以作為輸出口時(shí),P0是漏極開路輸出,類似于OC門,當(dāng)驅(qū)動上接電流負(fù)載時(shí),需要外接上拉電阻。

      下圖就是由內(nèi)部數(shù)據(jù)總線向P0口輸出數(shù)據(jù)的流程圖(紅色箭頭)。

      P0口用作I/O口線,其由引腳向內(nèi)部數(shù)據(jù)總線輸入(即輸入狀態(tài)Input)的工作過程:

      數(shù)據(jù)輸入時(shí)(讀P0口)有兩種情況

      1、讀引腳

      讀芯片引腳上的數(shù)據(jù),讀引腳數(shù)時(shí),讀引腳緩沖器打開(即三態(tài)緩沖器的控制端要有效),通過內(nèi)部數(shù)據(jù)總線輸入,請看下圖(紅色簡頭)。

      2、讀鎖存器

      通過打開讀鎖存器三態(tài)緩沖器讀取鎖存器輸出端Q的狀態(tài),請看下圖(紅色箭頭):

      在輸入狀態(tài)下,從鎖存器和從引腳上讀來的信號一般是一致的,但也有例外。例如,當(dāng)從內(nèi)部總線輸出低電平后,鎖存器Q=0,Q非=1,場效應(yīng)管T2開通,端口線呈低電平狀態(tài)。此時(shí)無論端口線上外接的信號是低電乎還是高電平,從引腳讀入單片機(jī)的信號都是低電平,因而不能正確地讀入端口引腳上的信號。又如,當(dāng)從內(nèi)部總線輸出高電平后,鎖存器Q=1,Q非=0,場效應(yīng)管T2截止。如外接引腳信號為低電平,從引腳上讀入的信號就與從鎖存器讀入的信號不同。為此,8031單片機(jī)在對端口P0一P3的輸入操作上,有如下約定:為此,8051單片機(jī)在對端口P0一P3的輸入操作上,有如下約定:凡屬于讀-修改-寫方式的指令,從鎖存器讀入信號,其它指令則從端口引腳線上讀入信號。

      讀-修改-寫指令的特點(diǎn)是,從端口輸入(讀)信號,在單片機(jī)內(nèi)加以運(yùn)算(修改)后,再輸出(寫)到該端口上。下面是幾條讀--修改-寫指令的例子。

      這樣安排的原因在于讀-修改-寫指令需要得到端口原輸出的狀態(tài),修改后再輸出,讀鎖存器而不是讀引腳,可以避免因外部電路的原因而使原端口的狀態(tài)被讀錯(cuò)。

      P0端口是8031單片機(jī)的總線口,分時(shí)出現(xiàn)數(shù)據(jù)D7一D0、低8位地址A7一AO,以及三態(tài),用來接口存儲器、外部電路與外部設(shè)備。P0端口是使用最廣泛的I/O端口。

      2、作為地址/數(shù)據(jù)復(fù)用口使用時(shí)的工作原理

      在訪問外部存儲器時(shí)P0口作為地址/數(shù)據(jù)復(fù)用口使用。

      這時(shí)多路開關(guān)?控制?信號為?1?,?與門?解鎖,?與門?輸出信號電平由“地址/數(shù)據(jù)”線信號決定;多路開關(guān)與反相器的輸出端相連,地址信號經(jīng)“地址/數(shù)據(jù)”線→反相器→V2場效應(yīng)管柵極→V2漏極輸出。例如:控制信號為1,地址信號為“0”時(shí),與門輸出低電平,V1管截止;反相器輸出高電平,V2管導(dǎo)通,輸出引腳的地址信號為低電平。請看下圖(蘭色字體為電平):

      反之,控制信號為“1”、地址信號為“1”,“與門”輸出為高電平,V1管導(dǎo)通;反相器輸出低電平,V2管截止,輸出引腳的地址信號為高電平。請看下圖(蘭色字體為電平):

      可見,在輸出“地址/數(shù)據(jù)”信息時(shí),V1、V2管是交替導(dǎo)通的,負(fù)載能力很強(qiáng),可以直接與外設(shè)存儲器相連,無須增加總線驅(qū)動器。

      P0口又作為數(shù)據(jù)總線使用。在訪問外部程序存儲器時(shí),P0口輸出低8位地址信息后,將變?yōu)閿?shù)據(jù)總線,以便讀指令碼(輸入)。

      在取指令期間,“控制”信號為“0”,V1管截止,多路開關(guān)也跟著轉(zhuǎn)向鎖存器反相輸出端Q非;CPU自動將0FFH(11111111,即向D鎖存器寫入一個(gè)高電平?1?)寫入P0口鎖存器,使V2管截止,在讀引腳信號控制下,通過讀引腳三態(tài)門電路將指令碼讀到內(nèi)部總線。請看下圖

      如果該指令是輸出數(shù)據(jù),如MOVX

      @DPTR,A(將累加器的內(nèi)容通過P0口數(shù)據(jù)總線傳送到外部RAM中),則多路開關(guān)“控制”信號為?1?,“與門”解鎖,與輸出地址信號的工作流程類似,數(shù)據(jù)據(jù)由“地址/數(shù)據(jù)”線→反相器→V2場效應(yīng)管柵極→V2漏極輸出。

      如果該指令是輸入數(shù)據(jù)(讀外部數(shù)據(jù)存儲器或程序存儲器),如MOVX A,@DPTR(將外部RAM某一存儲單元內(nèi)容通過P0口數(shù)據(jù)總線輸入到累加器A中),則輸入的數(shù)據(jù)仍通過讀引腳三態(tài)緩沖器到內(nèi)部總線,其過程類似于上圖中的讀取指令碼流程圖。

      通過以上的分析可以看出,當(dāng)P0作為地址/數(shù)據(jù)總線使用時(shí),在讀指令碼或輸入數(shù)據(jù)前,CPU自動向P0口鎖存器寫入0FFH,破壞了P0口原來的狀態(tài)。因此,不能再作為通用的I/O端口。大家以后在系統(tǒng)設(shè)計(jì)時(shí)務(wù)必注意,即程序中不能再含有以P0口作為操作數(shù)(包含源操作數(shù)和目的操作數(shù))的指令。

      二、P1端口的結(jié)構(gòu)及工作原理

      P1口的結(jié)構(gòu)最簡單,用途也單一,僅作為數(shù)據(jù)輸入/輸出端口使用。輸出的信息有鎖存,輸入有讀引腳和讀鎖存器之分。P1端口的一位結(jié)構(gòu)見下圖.由圖可見,P1端口與P0端口的主要差別在于,P1端口用內(nèi)部上拉電阻R代替了P0端口的場效應(yīng)管T1,并且輸出的信息僅來自內(nèi)部總線。由內(nèi)部總線輸出的數(shù)據(jù)經(jīng)鎖存器反相和場效應(yīng)管反相后,鎖存在端口線上,所以,P1端口是具有輸出鎖存的靜態(tài)口。

      由上圖可見,要正確地從引腳上讀入外部信息,必須先使場效應(yīng)管關(guān)斷,以便由外部輸入的信息確定引腳的狀態(tài)。為此,在作引腳讀入前,必須先對該端口寫入l。具有這種操作特點(diǎn)的輸入/輸出端口,稱為準(zhǔn)雙向I/O口。8051單片機(jī)的P1、P2、P3都是準(zhǔn)雙向口。P0端口由于輸出有三態(tài)功能,輸入前,端口線已處于高阻態(tài),無需先寫入l后再作讀操作。

      P1口的結(jié)構(gòu)相對簡單,前面我們已詳細(xì)的分析了P0口,只要大家認(rèn)真的分析了P0口的工作原理,P1口我想大家都有能力去分析,這里我就不多論述了。

      單片機(jī)復(fù)位后,各個(gè)端口已自動地被寫入了1,此時(shí),可直接作輸入操作。如果在應(yīng)用端口的過程中,已向P1一P3端口線輸出過0,則再要輸入時(shí),必須先寫1后再讀引腳,才能得到正確的信息。此外,隨輸入指令的不同,H端口也有讀鎖存器與讀引腳之分。

      三、P2端口的結(jié)構(gòu)及工作原理: P2端口的一位結(jié)構(gòu)見下圖:

      由圖可見,P2端口在片內(nèi)既有上拉電阻,又有切換開關(guān)MUX,所以P2端口在功能上兼有P0端口和P1端口的特點(diǎn)。這主要表現(xiàn)在輸出功能上,當(dāng)切換開關(guān)向下接通時(shí),從內(nèi)部總線輸出的一位數(shù)據(jù)經(jīng)反相器和場效應(yīng)管反相后,輸出在端口引腳線上;當(dāng)多路開關(guān)向上時(shí),輸出的一位地址信號也經(jīng)反相器和場效應(yīng)管反相后,輸出在端口引腳線上。

      對于8031單片機(jī)必須外接程序存儲器才能構(gòu)成應(yīng)用電路(或者我們的應(yīng)用電路擴(kuò)展了外部存儲器),而P2端口就是用來周期性地輸出從外存中取指令的地址(高8位地址),因此,P2端口的多路開關(guān)總是在進(jìn)行切換,分時(shí)地輸出從內(nèi)部總線來的數(shù)據(jù)和從地址信號線上來的地址。因此P2端口是動態(tài)的I/O端口。輸出數(shù)據(jù)雖被鎖存,但不是穩(wěn)定地出現(xiàn)在端口線上。其實(shí),這里輸出的數(shù)據(jù)往往也是一種地址,只不過是外部RAM的高8位地址。

      在輸入功能方面,P2端口與P0和H端口相同,有讀引腳和讀鎖存器之分,并且P2端口也是準(zhǔn)雙向口。

      可見,P2端口的主要特點(diǎn)包括: ①不能輸出靜態(tài)的數(shù)據(jù);

      ②自身輸出外部程序存儲器的高8位地址;

      ②執(zhí)行MOVX指令時(shí),還輸出外部RAM的高位地址,故稱P2端口為動態(tài)地址端口。

      即然P2口可以作為I/O口使用,也可以作為地址總線使用,下面我們就不分析下它的兩種工作狀態(tài)。

      1、作為I/O端口使用時(shí)的工作過程

      當(dāng)沒有外部程序存儲器或雖然有外部數(shù)據(jù)存儲器,但容易不大于256B,即不需要高8位地址時(shí)(在這種情況下,不能通過數(shù)據(jù)地址寄存器DPTR讀寫外部數(shù)據(jù)存儲器),P2口可以I/O口使用。這時(shí),“控制”信號為“0”,多路開關(guān)轉(zhuǎn)向鎖存器同相輸出端Q,輸出信號經(jīng)內(nèi)部總線→鎖存器同相輸出端Q→反相器→V2管柵極→V2管9漏極輸出。

      由于V2漏極帶有上拉電阻,可以提供一定的上拉電流,負(fù)載能力約為8個(gè)TTL與非門;作為輸出口前,同樣需要向鎖存器寫入“1”,使反相器輸出低電平,V2管截止,即引腳懸空時(shí)為高電平,防止引腳被鉗位在低電平。讀引腳有效后,輸入信息經(jīng)讀引腳三態(tài)門電路到內(nèi)部數(shù)據(jù)總線。

      2、作為地址總線使用時(shí)的工作過程

      P2口作為地址總線時(shí),“控制”信號為?1?,多路開關(guān)車向地址線(即向上接通),地址信息經(jīng)反相器→V2管柵極→漏極輸出。由于P2口輸出高8位地址,與P0口不同,無須分時(shí)使用,因此P2口上的地址信息(程序存儲器上的A15~A8)功數(shù)據(jù)地址寄存器高8位DPH保存時(shí)間長,無須鎖存。

      四、P3端口的結(jié)構(gòu)及工作原理

      P3口是一個(gè)多功能口,它除了可以作為I/O口外,還具有第二功能,P3端口的一位結(jié)構(gòu)見下圖。

      由上圖可見,P3端口和Pl端口的結(jié)構(gòu)相似,區(qū)別僅在于P3端口的各端口線有兩種功能選擇。當(dāng)處于第一功能時(shí),第二輸出功能線為1,此時(shí),內(nèi)部總線信號經(jīng)鎖存器和場效應(yīng)管輸入/輸出,其作用與P1端口作用相同,也是靜態(tài)準(zhǔn)雙向I/O端口。當(dāng)處于第二功能時(shí),鎖存器輸出1,通過第二輸出功能線輸出特定的內(nèi)含信號,在輸入方面,即可以通過緩沖器讀入引腳信號,還可以通過替代輸入功能讀入片內(nèi)的特定第二功能信號。由于輸出信號鎖存并且有雙重功能,故P3端口為靜態(tài)雙功能端口。P3口的特殊功能(即第二功能): 使P3端品各線處于第二功能的條件是:

      1、串行I/O處于運(yùn)行狀態(tài)(RXD,TXD);

      2、打開了處部中斷(INT0,INT1);

      3、定時(shí)器/計(jì)數(shù)器處于外部計(jì)數(shù)狀態(tài)(T0,T1)

      4、執(zhí)行讀寫外部RAM的指令(RD,WR)

      在應(yīng)用中,如不設(shè)定P3端口各位的第二功能(WR,RD信叼的產(chǎn)生不用設(shè)置),則P3端口線自動處于第一功能狀態(tài),也就是靜態(tài)I/O端口的工作狀態(tài)。在更多的場合是根據(jù)應(yīng)用的需要,把幾條端口線設(shè)置為第二功能,而另外幾條端口線處于第一功能運(yùn)行狀態(tài)。在這種情況下,不宜對P3端口作字節(jié)操作,需采用位操作的形式。

      端口的負(fù)載能力和輸入/輸出操作:

      P0端口能驅(qū)動8個(gè)LSTTL負(fù)載。如需增加負(fù)載能力,可在P0總線上增加總線驅(qū)動器。P1,P2,P3端口各能驅(qū)動4個(gè)LSTTL負(fù)載。

      前已述及,由于P0-P3端口已映射成特殊功能寄存器中的P0一P3端口寄存器,所以對這些端口寄存器的讀/寫就實(shí)現(xiàn)了信息從相應(yīng)端口的輸入/輸出。例如: MOV A,P1 ;把Pl端口線上的信息輸入到A MoV P1,A ;把A的內(nèi)容由P1端口輸出 MOV P3,#0FFH ;使P3端口線各位置l

      第三篇:單片機(jī)實(shí)驗(yàn)報(bào)告

      目錄

      第一章單片機(jī)簡介....................................................2 第二章

      實(shí)驗(yàn)要求..................................................3 第三章實(shí)驗(yàn)設(shè)備......................................................3 第四章實(shí)驗(yàn)安排......................................................4 第五章實(shí)驗(yàn)內(nèi)容......................................................4

      LED燈實(shí)驗(yàn).......................................................4 步進(jìn)馬達(dá)試驗(yàn)....................................................5 獨(dú)立按鍵控制LED實(shí)驗(yàn)............................................7 矩陣鍵盤實(shí)驗(yàn)....................................................9 靜態(tài)數(shù)碼管實(shí)驗(yàn).................................................12 動態(tài)數(shù)碼管實(shí)驗(yàn).................................................14 NE555脈沖發(fā)生器實(shí)驗(yàn)(定時(shí)/計(jì)數(shù)器).............................16 RS232串口通信實(shí)驗(yàn)(接收與發(fā)送)..................................21 第六章收獲體會.....................................................25

      單片機(jī)實(shí)驗(yàn)報(bào)告

      第一章單片機(jī)簡介

      單片機(jī)也被稱為微控制器(Microcontroller),是因?yàn)樗钤绫挥迷诠I(yè)控制領(lǐng)域。單片機(jī)由芯片內(nèi)僅有CPU的專用處理器發(fā)展而來。最早的設(shè)計(jì)理念是通過將大量外圍設(shè)備和CPU集成在一個(gè)芯片中,使計(jì)算機(jī)系統(tǒng)更小,更容易集成進(jìn)復(fù)雜的而對體積要求嚴(yán)格的控制設(shè)備當(dāng)中。INTEL的Z80是最早按照這種思想設(shè)計(jì)出的處理器,從此以后,單片機(jī)和專用處理器的發(fā)展便分道揚(yáng)鑣。單片機(jī)是靠程序運(yùn)行的,并且可以修改。通過不同的程序?qū)崿F(xiàn)不同的功能,尤其是特殊的獨(dú)特的一些功能,這是別的器件需要費(fèi)很大力氣才能做到的,有些則是花大力氣也很難做到的。一個(gè)不是很復(fù)雜的功能要是用美國50年代開發(fā)的74系列,或者60年代的CD4000系列這些純硬件來搞定的話,電路一定是一塊大PCB板!但是如果要是用美國70年代成功投放市場的系列單片機(jī),結(jié)果就會有天壤之別!只因?yàn)閱纹瑱C(jī)的通過你編寫的程序可以實(shí)現(xiàn)高智能,高效率,以及高可靠性!

      單片機(jī)誕生于20世紀(jì)70年代末,經(jīng)歷了SCM、MCU、SoC三大階段。

      1.SCM即單片微型計(jì)算機(jī)(Single Chip Microcomputer)階段,主要是尋求最佳的單片形態(tài)嵌入式系統(tǒng)的最佳體系結(jié)構(gòu)?!皠?chuàng)新模式”獲得成功,奠定了SCM與通用計(jì)算機(jī)完全不同的發(fā)展道路。在開創(chuàng)嵌入式系統(tǒng)獨(dú)立發(fā)展道路上,Intel公司功不可沒。

      2.MCU即微控制器(Micro Controller Unit)階段,主要的技術(shù)發(fā)展方向是:不斷擴(kuò)展?jié)M足嵌入式應(yīng)用時(shí),對象系統(tǒng)要求的各種外圍電路與接口電路,突顯其對象的智能化控制能力。它所涉及的領(lǐng)域都與對象系統(tǒng)相關(guān),因此,發(fā)展MCU的重任不可避免地落在電氣、電子技術(shù)廠家。從這一角度來看,Intel逐漸淡出MCU的發(fā)展也有其客觀因素。在發(fā)展MCU方面,最著名的廠家當(dāng)數(shù)Philips公司。

      Philips公司以其在嵌入式應(yīng)用方面的巨大優(yōu)勢,將MCS-51從單片微型計(jì)算機(jī)迅速發(fā)展到微控制器。因此,當(dāng)我們回顧嵌入式系統(tǒng)發(fā)展道路時(shí),不要忘記Intel和Philips的歷史功績。

      3.單片機(jī)是嵌入式系統(tǒng)的獨(dú)立發(fā)展之路,向MCU階段發(fā)展的重要因素,就是尋求

      單片機(jī)實(shí)驗(yàn)報(bào)告

      應(yīng)用系統(tǒng)在芯片上的最大化解決;因此,專用單片機(jī)的發(fā)展自然形成了SoC化趨勢。隨著微電子技術(shù)、IC設(shè)計(jì)、EDA工具的發(fā)展,基于SoC的單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)會有較大的發(fā)展。因此,對單片機(jī)的理解可以從單片微型計(jì)算機(jī)、單片微控制器延伸到單片應(yīng)用系統(tǒng)。

      MCS51系列微控制器應(yīng)用廣泛,在家電、汽車甚至航空等領(lǐng)域都有其活躍的身影。然而,普通51系列微控制器內(nèi)部資源有限,像我用Proteus構(gòu)建微控制器虛擬實(shí)驗(yàn)室選用的AT89C52只有三個(gè)定時(shí)器、一個(gè)全雙工的串行口和中斷控制,并且其數(shù)據(jù)處理能力有限,不適合對大量數(shù)據(jù)進(jìn)行復(fù)雜分析和運(yùn)算。

      因此,在不重新選型(可選用SoC)的前提下,為實(shí)現(xiàn)我們所需要的功能,就需要進(jìn)行外圍擴(kuò)展。針對微控制器的特點(diǎn),我們首先考慮串行擴(kuò)展,因?yàn)槲⒖刂破鞯腎/O引腳有限,并行擴(kuò)展一則外圍芯片面積比較大,二則對抑制EMI不利。

      第二章 實(shí)驗(yàn)要求

      1.學(xué)習(xí)Keil C51集成開發(fā)工具的操作及調(diào)試程序的方法,包括:仿真調(diào)試與脫機(jī)運(yùn)行間的切換方法

      2.熟悉TD-51單片機(jī)系統(tǒng)板及實(shí)驗(yàn)系統(tǒng)的結(jié)構(gòu)及使用

      3.進(jìn)行MCS51單片機(jī)指令系統(tǒng)軟件編程設(shè)計(jì)與硬件接口功能設(shè)

      4. 學(xué)習(xí)并掌握Keil C51軟件聯(lián)機(jī)進(jìn)行單片機(jī)接口電路的設(shè)計(jì)與編程調(diào)試

      5.完成指定MCS51單片機(jī)綜合設(shè)計(jì)題

      第三章實(shí)驗(yàn)設(shè)備

      1.HC600S-51單片機(jī)開發(fā)板 2.Keil C51 3.普中自動下載軟件

      第四章 實(shí)驗(yàn)安排

      1.LED燈實(shí)驗(yàn)

      單片機(jī)實(shí)驗(yàn)報(bào)告

      2.步進(jìn)馬達(dá)試驗(yàn)

      3.獨(dú)立按鍵控制LED實(shí)驗(yàn) 4.矩陣鍵盤實(shí)驗(yàn) 5.靜態(tài)數(shù)碼管實(shí)驗(yàn) 6.動態(tài)數(shù)碼管實(shí)驗(yàn)

      7.NE555脈沖發(fā)生器實(shí)驗(yàn)(定時(shí)/計(jì)數(shù)器)8.RS232串口通信實(shí)驗(yàn)(接收與發(fā)送)

      第五章 實(shí)驗(yàn)內(nèi)容

      一、LED燈實(shí)驗(yàn)

      1.基本要求

      利用位移循環(huán)指令實(shí)現(xiàn)LED燈的閃爍 2.實(shí)驗(yàn)內(nèi)容

      在Keil C51中進(jìn)行程序的編寫設(shè)計(jì)并生成.HEX文件,按照下圖連接電路后將HC600S-51單片機(jī)開發(fā)板接通電源,按下開關(guān),錄入。打開普中錄入生成.HEX文件,加載程序,觀察實(shí)驗(yàn)結(jié)果,如果不正確對程序進(jìn)行改進(jìn)后重復(fù)此操作。實(shí)驗(yàn)結(jié)束后先斷電源再拆線,將元器件歸位后離開。3.接線圖

      4.電路原理圖

      單片機(jī)實(shí)驗(yàn)報(bào)告

      5.程序

      #include #define uint unsigned int void d(uint x){uint n;for(;x>0;x--){for(n=0;n<123;n++){;} }}

      main(){unsigned int i;while(1)

      {for(i=0,P0=1;i<4;i++){d(500);P0=(P0<<2);}}}

      二、步進(jìn)馬達(dá)試驗(yàn)

      1.基本要求

      編程實(shí)現(xiàn)馬達(dá)的正反轉(zhuǎn),調(diào)速等功能 2.實(shí)驗(yàn)內(nèi)容

      在Keil C51中進(jìn)行程序的編寫設(shè)計(jì)并生成.HEX文件,按照下圖連接電路后將HC600S-51單片機(jī)開發(fā)板接通電源,按下開關(guān),錄入。打開普中錄入生成.HEX文件,加載程序,觀察實(shí)驗(yàn)結(jié)果,如果不正確對程序進(jìn)行改進(jìn)后重復(fù)此操作。實(shí)驗(yàn)結(jié)束后先斷電源再拆線,將元器件歸位后離開。3.接線圖(圖一)

      單片機(jī)實(shí)驗(yàn)報(bào)告

      圖一 圖二

      4.電路原理圖

      上圖圖二 5.程序

      #include “reg52.h” #define speed 2 sbit PH1 = P1^0;

      //定義管腳 sbit PH2 = P1^1;sbit I01 = P1^2;sbit I11 = P1^3;sbit I02 = P1^4;sbit I12 = P1^5;

      void delay(int time);

      void Go(){ //A

      PH1 = 0;//PH1為0 則A線圈為反向電流

      I01 = 0;I11 = 0;

      //以最大電流輸出

      PH2 = 0;//PH2為0 則B線圈為反向電流

      I02 = 1;I12 = 1;

      //輸出0 delay(speed);//圈為反向電流

      I01 = 1;//輸出0 I11 = 1;

      PH2 = 1;//PH2為1 則B線圈為正向電流

      I02 = 0;//以最大電流輸出

      I12 = 0;

      delay(speed);//B PH1 = 1;

      //PH1為1 則A線圈為

      正向電流

      I01 = 0;

      //以最大電流輸出

      I11 = 0;

      PH2 = 1;//PH2為1 則B線圈為正

      向電流

      I02 = 1;//輸出0 I12 = 1;

      delay(speed);

      PH1 = 1;

      //PH1為1 則A線圈為正向電流

      I01 = 1;I11 = 1;

      PH2 = 0;

      //PH2為0 則B線圈為反向電流

      I02 = 0;I12 = 0;delay(speed);}

      void delay(int time){

      int i,j;

      for(j=0;j <= time;j++)

      for(i =0;i <= 120;i++);}

      void main(){

      while(1)

      {

      Go();//步進(jìn)電機(jī)運(yùn)行

      } }

      單片機(jī)實(shí)驗(yàn)報(bào)告

      三、獨(dú)立按鍵控制LED實(shí)驗(yàn)

      1.基本要求

      通過編程控制8個(gè)獨(dú)立按鍵分別控制8個(gè)LED燈的開關(guān) 2.實(shí)驗(yàn)內(nèi)容

      在Keil C51中進(jìn)行程序的編寫設(shè)計(jì)并生成.HEX文件,按照下圖連接電路后將HC600S-51單片機(jī)開發(fā)板接通電源,按下開關(guān),錄入。打開普中錄入生成.HEX文件,加載程序,觀察實(shí)驗(yàn)結(jié)果,如果不正確對程序進(jìn)行改進(jìn)后重復(fù)此操作。實(shí)驗(yàn)結(jié)束后先斷電源再拆線,將元器件歸位后離開。3.接線圖(圖一)

      圖一 圖二

      4.電路原理圖 上圖圖二 5.程序

      #include #include #define GPIO_KEY P1 //獨(dú)立鍵盤用

      P1口

      #define uchar unsigned char #define uint unsigned int

      void Delayms(unsigned int c);

      //延時(shí)10ms uchar Key_Scan();void main(void){

      unsigned char ledValue, keyNum;

      ledValue = 0x01;

      while(1)

      {

      keyNum = Key_Scan();//掃描鍵

      switch(keyNum)

      {

      case(0xFE):

      //返回按

      鍵K1的數(shù)據(jù)

      ledValue = 0x01;

      break;

      單片機(jī)實(shí)驗(yàn)報(bào)告

      case(0xFD):

      ledValue = 0x02;

      break;case(0xFB):

      ledValue = 0x04;

      break;case(0xF7):

      ledValue = 0x08;

      break;case(0xEF):

      ledValue = 0x10;

      break;case(0xDF):

      ledValue = 0x20;

      break;case(0xBF):

      ledValue = 0x40;

      break;case(0x7F):

      ledValue = 0x80;

      //返回按鍵K2的數(shù)據(jù)

      //返回按鍵K3的數(shù)據(jù)

      //返回按鍵K4的數(shù)據(jù)

      //返回按鍵K5的數(shù)據(jù)

      //返回按鍵K6的數(shù)據(jù)

      //返回按鍵K7的數(shù)據(jù)

      //返回按鍵K8的數(shù)據(jù)

      break;default:

      break;

      }

      GPIO_LED = ledValue;//點(diǎn)亮LED燈

      }

      }

      uchar Key_Scan(void)//鍵盤掃描函數(shù) { uchar i,n=0xff;

      if(P1==0xff)goto Scan_r;//無鍵按

      下,返回

      goto Scan_r;Scan_1:

      while(P1!=0xff);//等待鍵釋放

      Delayms(10);Scan_r:

      return n;}

      void Delayms(uint x){

      uint n;

      for(;x>0;x--)

      {

      for(n=0;n<123;n++)

      {;}

      } }

      四、矩陣鍵盤實(shí)驗(yàn)

      1.基本要求

      編程由16個(gè)矩陣按鍵控制數(shù)碼管顯示相應(yīng)的數(shù)值 2.實(shí)驗(yàn)內(nèi)容

      在Keil C51中進(jìn)行程序的編寫設(shè)計(jì)并生成.HEX文件,按照下圖連接電路后將HC600S-51單片機(jī)開發(fā)板接通電源,按下開關(guān),錄入。打開普中錄入生成.HEX文件,加載程序,觀察實(shí)驗(yàn)結(jié)果,如果不正確對程序進(jìn)行改進(jìn)后重復(fù)此操作。實(shí)驗(yàn)結(jié)束后先斷電源再拆線,將元器件歸位后離開。

      3.接線圖

      單片機(jī)實(shí)驗(yàn)報(bào)告

      見下圖圖一

      圖一 圖二

      4.電路原理圖

      見上圖圖二 5.程序

      #include #define uchar unsigned char #define uint unsigned int #define uint unsigned int #define GPIO_LED P0

      uchar ScanKey(void);void Delayms(uint x);main(){ unsigned char ledValue;uchar i;ledValue = 0x01;loop: i = ScanKey();

      switch(i)

      { case 0xee:

      ledValue = ~0x3F;

      break;

      case 0xde:

      ledValue = ~0x06;

      break;

      case 0xbe:

      ledValue = ~0x5B;

      break;

      case 0x7e:

      ledValue = ~0x4F;

      break;

      case 0xed:

      ledValue = ~0x66;

      break;

      case 0xdd:

      ledValue = ~0x6D;

      break;

      單片機(jī)實(shí)驗(yàn)報(bào)告

      case 0xbd:

      ledValue = ~0x7D;

      break;

      case 0x7d:

      ledValue = ~0x07;

      break;

      case 0xeb:

      ledValue = ~0x7F;

      break;

      case 0xdb:

      ledValue = ~0x6F;

      break;

      case 0xbb:

      ledValue = ~0x77;

      break;

      case 0x7b:

      ledValue = ~0x7C;

      break;

      case 0xe7:

      ledValue = ~0x39;

      break;

      case 0xd7:

      ledValue = ~0x5E;

      break;

      case 0xb7:

      ledValue = ~0x79;

      break;

      case 0x77:

      ledValue = ~0x71;

      break;

      }

      GPIO_LED = ledValue;i=0;goto loop;}

      void Delayms(uint x){uint n;for(;x > 0;x--)

      { for(n=0;n<123;n++)

      {;}

      } }

      uchar ScanKey(void)//鍵盤掃描函數(shù) { uchar i,n=0xff;

      P1=0xf0;

      if(P1==0xf0)goto Scan_r;//無鍵按下,返回

      for(i=0,P1=0xfe;i<4;i++)

      { if((P1&0xf0)!=0xf0)

      { Delayms(10);

      if((P1&0xf0)!=0xf0)

      { n=

      P1;

      goto

      Scan_1;}

      }

      P1=(P1<<1)+1;

      //掃描下

      一行

      } goto Scan_r;Scan_1:

      單片機(jī)實(shí)驗(yàn)報(bào)告

      P1=0xf0;while((P1&0xf0)!=0xf0);//等待鍵

      釋放

      Delayms(10);

      Scan_r:

      P1=0xff;return n;} }

      五、靜態(tài)數(shù)碼管實(shí)驗(yàn)

      1.基本要求

      編程使數(shù)碼管顯示字符0-F 2.實(shí)驗(yàn)內(nèi)容

      在Keil C51中進(jìn)行程序的編寫設(shè)計(jì)并生成.HEX文件,按照下圖連接電路后將HC600S-51單片機(jī)開發(fā)板接通電源,按下開關(guān),錄入。打開普中錄入生成.HEX文件,加載程序,觀察實(shí)驗(yàn)結(jié)果,如果不正確對程序進(jìn)行改進(jìn)后重復(fù)此操作。實(shí)驗(yàn)結(jié)束后先斷電源再拆線,將元器件歸位后離開。3.接線框圖(圖一)

      圖一

      單片機(jī)實(shí)驗(yàn)報(bào)告

      圖二

      4.電路原理圖

      見上圖圖二 5.程序

      #include #define uchar unsigned char #define uint unsigned int void Delayms(uint x);uchar code LED7Code[]=

      {~0x3F,~0x06,~0x5B,~0x4F,~0x66,~0x6D, ~0x7D,~0x07,~0x7F,~0x6F,~0x77,~0x7C,~0x39,~0x5E,~0x79,~0x71};main(){

      unsigned int LedNumVal;//定義變量 while(1)

      {

      // 將字模送到P0口顯示

      LedNumVal++;

      P0 = LED7Code[LedNumVal%16];

      Delayms(1000);

      //調(diào)用延時(shí)程序

      }

      }

      單片機(jī)實(shí)驗(yàn)報(bào)告

      void Delayms(uint x){uint n;for(;x > 0;x--)

      { for(n=0;n<123;n++)

      {;}

      } }

      六、動態(tài)數(shù)碼管實(shí)驗(yàn)

      1.基本要求

      編程實(shí)現(xiàn)8個(gè)數(shù)碼管的動態(tài)掃描。通過P22、P23、P24控制3-8譯碼器來對數(shù)碼管進(jìn)行位選,通過P0口經(jīng)過573的驅(qū)動控制數(shù)碼管的段選,通過P13控制573的使能端,為低電平時(shí)573才會有輸出。2.實(shí)驗(yàn)內(nèi)容

      在Keil C51中進(jìn)行程序的編寫設(shè)計(jì)并生成.HEX文件,按照下圖連電路后將HC600S-51單片機(jī)開發(fā)板接通電源,按下開關(guān),錄入。打開普中錄入生成.HEX文件,加載程序,觀察實(shí)驗(yàn)結(jié)果,如果不正確對程序進(jìn)行改進(jìn)后重復(fù)此操作。實(shí)驗(yàn)結(jié)束后先斷電源再拆線,將元器件歸位后離開。3.接線圖(圖一)

      圖一 圖二

      單片機(jī)實(shí)驗(yàn)報(bào)告

      圖三

      4.電路原理圖

      見上圖圖

      二、圖三 5.程序

      #define uint unsigned int void Dsplay();void Delayms(uint x);uchar mDS[6];uchar code cDsCode[]=

      {0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xf8,0x80,0x90};

      void main(){ uchar i;

      for(i=0;i<6;i++)mDS[i]=i+1;

      loop:

      Dsplay();

      goto loop;}

      void Dsplay()//動態(tài)掃描顯示

      {uchar i;

      for(i=0,P2=0x01;i<6;i++)

      { P1=cDsCode[mDS[i]];//輸出段

      Delayms(1000);

      P2=P2<<1;

      //選通下一位

      }

      P2=0x00;

      //關(guān)閉位選通 }

      void Delayms(uint x){uint n;for(;x > 0;x--)

      { for(n=0;n<123;n++)

      {;}

      } }

      七、NE555脈沖發(fā)生器實(shí)驗(yàn)(定時(shí)/計(jì)數(shù)器)

      1.基本要求

      2.實(shí)驗(yàn)內(nèi)容

      在Keil C51中進(jìn)行程序的編寫設(shè)計(jì)并生成.HEX文件,按照下圖連接電路后將HC600S-51單片機(jī)開發(fā)板接通電源,按下開關(guān),錄入。打開普中錄入生成.HEX文件,加載程序,觀察實(shí)驗(yàn)結(jié)果,如果不正確對程序進(jìn)行改進(jìn)后重復(fù)此操作。實(shí)驗(yàn)結(jié)束后先斷電源再拆線,將元器件歸位后離開。3.接線圖

      4.電路原理圖

      5.程序

      #include #include“l(fā)cd.h” #define uchar unsigned char #define uint unsigned int #define ulong unsigned long uchar code EN_CHAR1[16]={“

      CYMOMETER

      ”};uchar code EN_CHAR2[16]={“FREQ:

      HZ”};

      單片機(jī)實(shí)驗(yàn)報(bào)告

      void TIMER_Configuration();//初始化定時(shí)器 ulong Freq;

      //用來存放要顯示的頻率值 ulong TimeCount;//用于計(jì)算1S鐘的

      void main(){ uchar i, freqValue[6];

      LcdInit();TIMER_Configuration();for(i=0;i<16;i++){

      LcdWriteData(EN_CHAR1[i]);}

      LcdWriteCom(0xc0);//第二行顯示

      for(i=0;i<16;i++){

      LcdWriteData(EN_CHAR2[i]);}

      while(1){

      if(TR0==0)

      //當(dāng)計(jì)數(shù)器停下的時(shí)候,表明計(jì)數(shù)完畢

      {

      Freq = Freq + TL1;

      //讀取TL的值

      Freq = Freq +(TH1 * 256);//讀取TH的值

      LcdWriteCom(0xc8);

      //--求頻率的個(gè)十百千萬十萬位--//

      freqValue[0]='0'+Freq%1000000/100000;

      freqValue[1]='0'+Freq%100000/10000;

      freqValue[2]='0'+Freq%10000/1000;

      freqValue[3]='0'+Freq%1000/100;

      freqValue[4]='0'+Freq%100/10;

      freqValue[5]='0'+Freq%10;

      for(i=0;i<5;i++)//從最高位開始查找不為0的數(shù)開始顯示(最低位為0顯示0)

      {

      if(freqValue[i]==0x30)

      {

      freqValue[i]=0x20;//若為0則賦值空格鍵

      }

      else

      單片機(jī)實(shí)驗(yàn)報(bào)告

      {

      break;

      }

      }

      for(i=0;i<6;i++)

      {

      LcdWriteData(freqValue[i]);

      }

      Freq=0;//將計(jì)算的頻率清零

      TH1=0;//將計(jì)數(shù)器的值清零

      TL1=0;

      TR0=1;//開啟定時(shí)器

      TR1=1;//開啟計(jì)數(shù)器

      } } }

      void TIMER_Configuration(){ TMOD=0x51;TH0=0x3C;TL0=0xB0;ET0=1;ET1=1;EA=1;TR0=1;TR1=1;} void Timer0()interrupt 1 { TimeCount++;if(TimeCount==20)//計(jì)時(shí)到1S {

      TR0=0;

      TR1=0;

      TimeCount=0;

      }

      //--12MHZ設(shè)置定時(shí)50ms的初值--// TH0=0x3C;TL0=0xB0;} void Timer1()interrupt 3 {

      單片機(jī)實(shí)驗(yàn)報(bào)告

      //--進(jìn)入一次中斷,表明計(jì)數(shù)到了65536--// Freq=Freq+65536;

      }

      #include“l(fā)cd.h”

      void Lcd1602_Delay1ms(uint c)

      //誤差 0us {

      uchar a,b;for(;c>0;c--){

      for(b=199;b>0;b--)

      {

      for(a=1;a>0;a--);

      }

      }

      } #ifndef LCD1602_4PINS //當(dāng)沒有定義這個(gè)LCD1602_4PINS時(shí) void LcdWriteCom(uchar com)

      //寫入命令 { LCD1602_E = 0;

      //使能

      LCD1602_RS = 0;

      //選擇發(fā)送命令

      LCD1602_RW = 0;

      //選擇寫入

      LCD1602_DATAPINS = com;

      //放入命令

      Lcd1602_Delay1ms(1);//等待數(shù)據(jù)穩(wěn)定

      LCD1602_E = 1;

      //寫入時(shí)序

      Lcd1602_Delay1ms(5);

      //保持時(shí)間

      LCD1602_E = 0;} #else

      void LcdWriteCom(uchar com)

      //寫入命令 { LCD1602_E = 0;//使能清零

      LCD1602_RS = 0;//選擇寫入命令

      LCD1602_RW = 0;//選擇寫入

      LCD1602_DATAPINS = com;// Lcd1602_Delay1ms(1);LCD1602_E = 1;//寫入時(shí)序

      Lcd1602_Delay1ms(5);LCD1602_E = 0;Lcd1602_Delay1ms(1);

      單片機(jī)實(shí)驗(yàn)報(bào)告

      LCD1602_DATAPINS = com << 4;//發(fā)送低四位

      Lcd1602_Delay1ms(1);

      LCD1602_E = 1;//寫入時(shí)序

      Lcd1602_Delay1ms(5);LCD1602_E = 0;} #endif #ifndef LCD1602_4PINS

      void LcdWriteData(uchar dat)

      //寫入數(shù)據(jù) { LCD1602_E = 0;//使能清零

      LCD1602_RS = 1;//選擇輸入數(shù)據(jù)

      LCD1602_RW = 0;//選擇寫入

      LCD1602_DATAPINS = dat;//寫入數(shù)據(jù)

      Lcd1602_Delay1ms(1);

      LCD1602_E = 1;

      //寫入時(shí)序

      Lcd1602_Delay1ms(5);

      //保持時(shí)間

      LCD1602_E = 0;} #else void LcdWriteData(uchar dat)

      //寫入數(shù)據(jù) { LCD1602_E = 0;//使能清零

      LCD1602_RS = 1;

      //選擇寫入數(shù)據(jù)

      LCD1602_RW = 0;

      //選擇寫入

      LCD1602_DATAPINS = dat;

      Lcd1602_Delay1ms(1);LCD1602_E = 1;//寫入時(shí)序

      Lcd1602_Delay1ms(5);LCD1602_E = 0;LCD1602_DATAPINS = dat << 4;//寫入低四位

      Lcd1602_Delay1ms(1);LCD1602_E = 1;//寫入時(shí)序

      Lcd1602_Delay1ms(5);LCD1602_E = 0;} #endif #ifndef LCD1602_4PINS void LcdInit()

      //LCD初始化子程序 { LcdWriteCom(0x38);//開顯示

      單片機(jī)實(shí)驗(yàn)報(bào)告

      LcdWriteCom(0x0c);//開顯示不顯示光標(biāo)

      LcdWriteCom(0x06);//寫一個(gè)指針加1 LcdWriteCom(0x01);//清屏

      LcdWriteCom(0x80);//設(shè)置數(shù)據(jù)指針起點(diǎn) } #else void LcdInit()

      //LCD初始化子程序 { LcdWriteCom(0x32);//將8位總線轉(zhuǎn)為4位總線

      LcdWriteCom(0x28);//在四位線下的初始化

      LcdWriteCom(0x0c);//開顯示不顯示光標(biāo)

      LcdWriteCom(0x06);//寫一個(gè)指針加1 LcdWriteCom(0x01);//清屏

      LcdWriteCom(0x80);//設(shè)置數(shù)據(jù)指針起點(diǎn) } #endif

      八、RS232串口通信實(shí)驗(yàn)(接收與發(fā)送)

      1.基本要求

      a.通過實(shí)驗(yàn)了解串口的基本原理及使用,理解并掌握對串口進(jìn)行初始化; b.使用串口調(diào)試助手(Baud 9600、數(shù)據(jù)位

      8、停止位

      1、效驗(yàn)位無)做為上位機(jī)來做收發(fā)試驗(yàn);

      c.利用串口調(diào)試助手中字符串輸入進(jìn)行數(shù)據(jù)發(fā)送,接受窗口顯示收到的數(shù)據(jù)。2.實(shí)驗(yàn)內(nèi)容

      在Keil C51中進(jìn)行程序的編寫設(shè)計(jì)并生成.HEX文件,按照下圖連接電路后將HC600S-51單片機(jī)開發(fā)板接通電源,按下開關(guān),錄入。打開普中錄入生成.HEX文件,加載程序,觀察實(shí)驗(yàn)結(jié)果,如果不正確對程序進(jìn)行改進(jìn)后重復(fù)此操作。實(shí)驗(yàn)結(jié)束后先斷電源再拆線,將元器件歸位后離開。3.接線圖

      單片機(jī)實(shí)驗(yàn)報(bào)告

      4.電路原理圖

      5.程序

      #include #include“l(fā)cd.h” unsigned char ChCode[14] = “Received data:”;void UsartConfiguration();void main(){ unsigned char i, receiveData;LcdInit();for(i=0;i<14;i++){

      LcdWriteData(ChCode[i]);} UsartConfiguration();while(1){

      if(RI == 1)

      //查看是否接收到數(shù)據(jù)

      {

      receiveData = SBUF;//讀取數(shù)據(jù)

      單片機(jī)實(shí)驗(yàn)報(bào)告

      RI = 0;

      //清除標(biāo)志位

      LcdWriteCom(0xC0);

      LcdWriteData('0' +(receiveData / 100));

      // 百位

      LcdWriteData('0' +(receiveData % 100 / 10));// 十位

      LcdWriteData('0' +(receiveData % 10));

      // 個(gè)位

      } } } void UsartConfiguration(){ SCON=0X50;

      //設(shè)置為工作方式1 TMOD=0X20;//設(shè)置計(jì)數(shù)器工作方式2 PCON=0X80;

      //波特率加倍

      TH1=0XF3;

      //計(jì)數(shù)器初始值設(shè)置,注意波特率是4800的TL1=0XF3;TR1=1;

      //打開計(jì)數(shù)器 }

      #include“l(fā)cd.h”

      void Lcd1602_Delay1ms(uint c)

      //誤差 0us {

      uchar a,b;for(;c>0;c--){

      for(b=199;b>0;b--)

      {

      for(a=1;a>0;a--);

      }

      }

      } #ifndef LCD1602_4PINS //當(dāng)沒有定義這個(gè)LCD1602_4PINS時(shí) void LcdWriteCom(uchar com)

      //寫入命令 { LCD1602_E = 0;

      //使能

      LCD1602_RS = 0;

      //選擇發(fā)送命令

      LCD1602_RW = 0;

      //選擇寫入

      LCD1602_DATAPINS = com;

      //放入命令

      Lcd1602_Delay1ms(1);//等待數(shù)據(jù)穩(wěn)定

      LCD1602_E = 1;

      //寫入時(shí)序

      單片機(jī)實(shí)驗(yàn)報(bào)告

      Lcd1602_Delay1ms(5);

      //保持時(shí)間

      LCD1602_E = 0;} #else

      void LcdWriteCom(uchar com)

      //寫入命令 { LCD1602_E = 0;//使能清零

      LCD1602_RS = 0;//選擇寫入命令

      LCD1602_RW = 0;//選擇寫入

      LCD1602_DATAPINS = com;Lcd1602_Delay1ms(1);LCD1602_E = 1;//寫入時(shí)序

      Lcd1602_Delay1ms(5);LCD1602_E = 0;Lcd1602_Delay1ms(1);LCD1602_DATAPINS = com << 4;//發(fā)送低四位

      Lcd1602_Delay1ms(1);LCD1602_E = 1;//寫入時(shí)序

      Lcd1602_Delay1ms(5);LCD1602_E = 0;} #endif

      #ifndef LCD1602_4PINS

      void LcdWriteData(uchar dat)

      //寫入數(shù)據(jù) { LCD1602_E = 0;//使能清零

      LCD1602_RS = 1;//選擇輸入數(shù)據(jù)

      LCD1602_RW = 0;//選擇寫入

      LCD1602_DATAPINS = dat;//寫入數(shù)據(jù)

      Lcd1602_Delay1ms(1);LCD1602_E = 1;

      //寫入時(shí)序

      Lcd1602_Delay1ms(5);

      //保持時(shí)間

      LCD1602_E = 0;} #else void LcdWriteData(uchar dat)

      //寫入數(shù)據(jù) { LCD1602_E = 0;

      //使能清零

      LCD1602_RS = 1;

      //選擇寫入數(shù)據(jù)

      LCD1602_RW = 0;//選擇寫入

      LCD1602_DATAPINS = dat;

      Lcd1602_Delay1ms(1);LCD1602_E = 1;

      //寫入時(shí)序

      Lcd1602_Delay1ms(5);

      單片機(jī)實(shí)驗(yàn)報(bào)告

      LCD1602_E = 0;LCD1602_DATAPINS = dat << 4;//寫入低四位

      Lcd1602_Delay1ms(1);LCD1602_E = 1;

      //寫入時(shí)序

      Lcd1602_Delay1ms(5);LCD1602_E = 0;} #endif

      #ifndef LCD1602_4PINS void LcdInit()

      //LCD初始化子程序 { LcdWriteCom(0x38);//開顯示

      LcdWriteCom(0x0c);//開顯示不顯示光標(biāo)

      LcdWriteCom(0x06);//寫一個(gè)指針加1 LcdWriteCom(0x01);//清屏

      LcdWriteCom(0x80);//設(shè)置數(shù)據(jù)指針起點(diǎn) } #else void LcdInit()

      //LCD初始化子程序 { LcdWriteCom(0x32);//將8位總線轉(zhuǎn)為4位總線

      LcdWriteCom(0x28);//在四位線下的初始化

      LcdWriteCom(0x0c);//開顯示不顯示光標(biāo)

      LcdWriteCom(0x06);//寫一個(gè)指針加1 LcdWriteCom(0x01);//清屏

      LcdWriteCom(0x80);//設(shè)置數(shù)據(jù)指針起點(diǎn) } #endif

      單片機(jī)實(shí)驗(yàn)報(bào)告

      第六章 收獲體會

      本次微控制器綜合設(shè)計(jì)基本上使用了所選微控制器的所有資源,進(jìn)一步熟悉和加深了對中斷、定時(shí)器和串行通信的理解和使用。我覺得軟件實(shí)驗(yàn)就是讓我們初學(xué)者熟悉keil的使用,然后復(fù)習(xí)下匯編的思想和掌握程序的流程,所以軟件實(shí)驗(yàn)可以很快的完成,并且慢慢熟悉調(diào)試的強(qiáng)大功能。硬件設(shè)計(jì)中,仿真讓我很有感觸,感覺蠻好玩的,可以摒棄麻煩的實(shí)驗(yàn)硬件自己在寢室玩而且不受硬件狀態(tài)的限制,即便出錯(cuò)了也不會損壞。當(dāng)然更重要的是這種好習(xí)慣,仿真完后再去在實(shí)驗(yàn)板上驗(yàn)證會比直接要來的確切而且便捷,至少不要老是去插拔線。在做實(shí)驗(yàn)中在同學(xué)指導(dǎo)下我試用C語言來編寫程序,確實(shí)發(fā)現(xiàn)比匯編語言容易編寫也容易理解,以前的實(shí)驗(yàn)還是有參考資料的習(xí)慣,現(xiàn)在什么都開始自己寫感覺還是很有成就感的,當(dāng)然這是基于程序本身就那么幾行很容易編寫,也不是說參考不好??偠灾@學(xué)期的單片機(jī)實(shí)驗(yàn)還是收獲頗豐的。相信在以后的實(shí)驗(yàn)學(xué)習(xí)實(shí)踐工作中都會有個(gè)潛移默化的作用的。

      第四篇:單片機(jī)實(shí)驗(yàn)報(bào)告

      單片機(jī)實(shí)驗(yàn)報(bào)告

      一、實(shí)驗(yàn)?zāi)康?/p>

      1.熟練使用Keil、Protues兩款軟件 2.通過上機(jī)操作,增強(qiáng)個(gè)人動手實(shí)踐能力 3.加深對理論知識的理解

      4.培養(yǎng)運(yùn)用匯編語言進(jìn)行初步編寫程序的能力

      二、實(shí)驗(yàn)內(nèi)容

      1.將片外RAM3050-306FH中數(shù)據(jù)轉(zhuǎn)移至片內(nèi)70-8FH中。

      要求:可以從Keil或Protues上看到RAM的數(shù)據(jù)轉(zhuǎn)移結(jié)果。2.設(shè)計(jì)一個(gè)外部中斷觸發(fā)流水燈系統(tǒng):當(dāng)外部中斷來臨時(shí),啟動流水燈,即令P2口的LED輪流循環(huán)點(diǎn)亮。

      要求:開發(fā)板或Prrotues演示

      3.將片內(nèi)存儲器80H中存放的BCD碼轉(zhuǎn)換為ASCII碼,要求使用表格查詢技術(shù)。

      要求:在Keil或Protues上看到數(shù)據(jù)轉(zhuǎn)換結(jié)果。

      4.各使用中斷方式和查詢方式設(shè)計(jì)一個(gè)方波發(fā)生器,頻率為50HZ。

      要求:Protues使軟件間示波器顯示方波。

      三、實(shí)驗(yàn)程序

      1.將片外RAM3050-306FH中數(shù)據(jù)轉(zhuǎn)移至片內(nèi)70-8FH中

      ORG 0000H AJMP MAIN 上電,轉(zhuǎn)向主程序

      ORG 0030H 主程序入口

      MAIN: MOV DPTR,#3050H 數(shù)據(jù)指針指向地址3050H MOV A,#04H 將立即數(shù)04H送A寄存器

      MOV R0,#20H NEXT: MOVX @DPTR,A INC DPTR 數(shù)據(jù)指針DPTR自加一

      DJNZ R0,NEXT 判斷是否跳轉(zhuǎn)到NEXT或繼續(xù)向下執(zhí)行

      MOV DPTR,#3050H MOV R0,#70H MOV R2,#20H NEXT1: MOVX A,@DPTR MOV @R0,A INC DPTR INC R0 DJNZ R2,NEXT1

      SJMP $ 等待

      END 2.設(shè)計(jì)一個(gè)外部中斷觸發(fā)流水燈系統(tǒng):當(dāng)外部中斷來臨時(shí),啟動流水燈,即令P2口的LED輪流循環(huán)點(diǎn)亮 ORG 0000H SJMP MAIN 上電,轉(zhuǎn)向主程序

      ORG 0003H 外部中斷0向量入口

      AJMP INSER ORG 0030H 主程序入口

      MAIN: SETB EX0 SETB IT0

      SETB EA CPUHERE: SJMP HERE ORG 0200H INSER: MOV R2,#08H MOV A,#01H NEXT: MOV P2,A LCALL DELAY RL A DJNZ R2,NEXT NEXT或繼續(xù)向下執(zhí)行

      RETI DELAY: MOV R3,#0FFH DEL2: MOV R4,#0FFH DEL1: NOP

      允許外部中斷0中斷 選擇邊沿觸發(fā)方式 開中斷 等待中斷 設(shè)置循環(huán)次數(shù) 賦初值,設(shè)置高電平亮 將初值送往P2口 延時(shí) 左移一位

      判斷循環(huán)次數(shù),是否跳轉(zhuǎn)到中斷返回 延時(shí)程序 DJNZ R4,DEL1 DJNZ R3,DEL2 RET END 3.將片內(nèi)存儲器80H中存放的BCD碼轉(zhuǎn)換為ASCII碼,要求使用表格查詢技術(shù) ORG 0000H LJMP MAIN ORG 0030H主程序起始地址 MAIN: MOV 80H,#05H 將立即數(shù)50H轉(zhuǎn)送內(nèi)存單元80H MOV A,80H 將內(nèi)存單元80H中的內(nèi)容送寄存器A MOV DPTR,#TAB MOVC A,@A+DPTR A寄存器內(nèi)容加指針偏移量后送A寄存器 MOV 80H,A RET TAB: DB 30H,31H,32H,33H,34H DB 35H,36H,37H,38H,39H 4.1中斷方式產(chǎn)生50HZ方波

      ORG 0000H

      AJMP MAIN

      ORG 0030H 主程序入口 MAIN: MOV TMOD,#10H 設(shè)置定時(shí)器工作模式為模式1 MOV TH1,#0D8H 裝入T1計(jì)數(shù)初值

      MOV TL1,#0F0H

      SETB ET1 開中斷

      SETB EA CPU開中斷

      SETB TR1 啟動定時(shí)器T1 HERE: SJMP HERE 等待中斷 ORG 001BH T1中斷向量地址

      CLR TF1 將TF1清零

      CPL P2.0 P2.0取反輸出

      MOV TH1,#0D8H 重裝初值

      MOV TH0,#0F0H

      RETI;中斷返回

      END 4.2 查詢方式產(chǎn)生50HZ方波

      ORG 0000H

      AJMP MAIN

      ORG 0030H 主程序入口

      MAIN: MOV TMOD,#10H 設(shè)置定時(shí)器的工作模式為模式1 SETB TR1 啟動定時(shí)器T1 LOOP: MOV TH1,#0D8H 裝入T1計(jì)數(shù)初值

      MOV TH0,#0F0H JNB TF1,$ T1沒有溢出則等待

      CLR TF1

      產(chǎn)生溢出,清標(biāo)志位

      CPL P2.0 P2.0取反輸出

      SJMP LOOP 循環(huán)

      END

      四、實(shí)驗(yàn)結(jié)果截圖

      1.2

      3.4.1

      4.2

      第五篇:單片機(jī)實(shí)驗(yàn)報(bào)告

      實(shí)驗(yàn)

      四、中斷交通燈實(shí)驗(yàn)

      林立強(qiáng)

      1000850116

      一、實(shí)驗(yàn)?zāi)康?/p>

      1、了解MCS-51單片機(jī)的組成、中斷原理,中斷處理過程、外部中斷的中斷方式。

      2、掌握中斷響應(yīng)及處理的編程方法。

      二、實(shí)驗(yàn)原理

      MCS-51的中斷系統(tǒng)中有5個(gè)中斷源:外部中斷INTO,INT1,定時(shí)器/計(jì)數(shù)器TO、T1中斷和串口UART中斷,它們對應(yīng)不同的中斷矢量。如表:

      IE是中斷允許寄存器,其中EXO,ETO,EX1,ET1,ES分別是上述5個(gè)中斷的允許控制位,EA位是中斷總允許位,每個(gè)中斷只有在相應(yīng)中斷允許且總中斷也允許的情況下,才能得到中斷響應(yīng)。80XX51的5個(gè)中斷都可以設(shè)為高低2個(gè)優(yōu)先級,IP是中斷優(yōu)先級寄存器,其中PXO,PTO,PX1,PT1,PS位分別對應(yīng)5個(gè)中斷的優(yōu)先級設(shè)置,置“1”時(shí)設(shè)為高優(yōu)先級中斷,為“0”時(shí)是低優(yōu)先級中斷。在有中斷嵌套要求時(shí),低優(yōu)先級中斷可被高優(yōu)先級所中斷。當(dāng)同一級的中斷同時(shí)到來時(shí),先響應(yīng)中斷矢量排在前面的中斷。

      三、實(shí)驗(yàn)電路

      電路原理圖如下,所需元件為:AT89C51、SW-SPDT、LED-RED、LED-GREEN、LED-YELLOW、RES、TRAFFICLIGHTS

      四、實(shí)驗(yàn)內(nèi)容

      參照實(shí)驗(yàn)電路,設(shè)計(jì)交通燈控制系統(tǒng)。模擬交通信號燈控制:一般情況下正常顯示,東西-南北交替放行,各方向通行時(shí)間為30秒。有救護(hù)車或警車到達(dá)時(shí),兩個(gè)方向交通信號燈全為紅色,以便讓急救車或警車通過,設(shè)通行時(shí)間為10秒,之后交通恢復(fù)正常。用單次脈沖模擬急救車或警車申請外部中斷。

      1、在生成HEX文件后,用Proteus軟件對電路圖進(jìn)行計(jì)算機(jī)仿真;

      2、程序下載到單片機(jī)實(shí)驗(yàn)板上驗(yàn)證;(實(shí)驗(yàn)板數(shù)碼管的驅(qū)動程序見附件)。

      五、程序流程圖

      仿真圖:

      緊急情況:

      源程序:

      ORG 0000H

      AJMP START

      ORG 0023H //串口中斷地址

      AJMP SBR1

      START:MOV TMOD,#00100000B

      //定時(shí)器方式2

      MOV TL1,#0FDH //9600bps/11.0592MHz

      MOV TH1,#0FDH

      SETB TR1

      MOV SCON,#01100000B //方式1

      MOV R0,#20H

      MOV R1,#40H

      ACALL SOUT

      SJMP $

      SBR1: JNB RI,SEND

      ACALL SIN

      SJMP NEXT SEND: ACALL SOUT NEXT: RETI

      SOUT: MOV A,@R0

      MOV C,P

      CPL C

      MOV ACC.7,C

      INC R0

      MOV SBUF,A

      CLR TI

      RET

      SIN: MOV A,SBUF

      MOV C,P

      CPL C

      ANL A,#7FH

      MOV @R1,A

      INC R1

      CLR RI

      RET

      PLAY: MOV A,R7

      MOV B,#10

      RET

      TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H

      // 0

      A B C D E F

      END

      下載單片機(jī)io口控制實(shí)驗(yàn)報(bào)告(樣例5)word格式文檔
      下載單片機(jī)io口控制實(shí)驗(yàn)報(bào)告(樣例5).doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點(diǎn)此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        單片機(jī)實(shí)驗(yàn)報(bào)告

        單片機(jī)實(shí)驗(yàn)一 實(shí)驗(yàn)報(bào)告 課程名稱: 姓名: 系別: 專業(yè): 年級: 學(xué)號: 指導(dǎo)教師: 單片機(jī)原理及應(yīng)用實(shí)驗(yàn) 陳璐 信息系 電氣工程及其自動化 2012級 120712041 李莉 2015 年6 月 25 日......

        單片機(jī)實(shí)驗(yàn)報(bào)告

        51單片機(jī)控制流水燈 目錄 (1)51精簡開發(fā)板簡介 (2)實(shí)驗(yàn)?zāi)康?(3)實(shí)驗(yàn)內(nèi)容 (4)元件 (5)原理圖 (6)實(shí)驗(yàn)步驟 (7)主要功能介紹(8)實(shí)驗(yàn)錯(cuò)誤及分析 (9)調(diào)試及程序 (10)系統(tǒng)測試 (11)實(shí)驗(yàn)心得 一、51精簡......

        單片機(jī)實(shí)驗(yàn)報(bào)告

        實(shí)驗(yàn)一 uVision2 集成開發(fā)環(huán)境的使用 一、 實(shí)驗(yàn)?zāi)康暮鸵蠖?shí)驗(yàn)設(shè)備與儀器三、實(shí)驗(yàn)內(nèi)容四、實(shí)驗(yàn)原理、方法與步驟 五、實(shí)驗(yàn)小結(jié):1.簡述生成應(yīng)用程序的過程。2.記錄程序調(diào)試......

        單片機(jī)實(shí)驗(yàn)報(bào)告

        《單片機(jī)原理及應(yīng)用》 實(shí) 驗(yàn) 報(bào) 告 2017—2018學(xué)年第一學(xué)期 班級: 152 專業(yè): 電子科學(xué)與技術(shù) 姓名: 子路 學(xué)號: 教師: 實(shí)驗(yàn)一:Keil C51 一、實(shí)驗(yàn)?zāi)康?1、熟悉Keil C51單片機(jī)應(yīng)用......

        單片機(jī)實(shí)驗(yàn)報(bào)告4

        單片機(jī)實(shí)驗(yàn)報(bào)告(實(shí)驗(yàn)一) 一、實(shí)驗(yàn)?zāi)康模?1. 掌握stm8的時(shí)鐘切換。 2. 熟悉匯編語言的指令系統(tǒng)。 3. 加深對stm8功能的理解,掌握去其使用方法。 二、實(shí)驗(yàn)儀器: stm8s105c6單片機(jī)......

        單片機(jī)實(shí)驗(yàn)報(bào)告(三)

        實(shí)驗(yàn)報(bào)告書 信息工程系 電氣自動化11班姓名:張青日期:2014.10.14 實(shí)驗(yàn)一:完成AT89S51單片機(jī)與PC機(jī)的RS232串行通信接口電路實(shí)物制作。該部分電路可在實(shí)物電路板Ⅰ上進(jìn)行搭建。......

        單片機(jī)實(shí)驗(yàn)報(bào)告大全

        單片機(jī)原理與應(yīng)用實(shí)學(xué)校:合肥工業(yè)大學(xué) 班級:計(jì)算機(jī)科學(xué)與技術(shù) 學(xué)號: 姓名:驗(yàn)報(bào)告 第一章MC51 單片機(jī)原理及應(yīng)用軟件實(shí)驗(yàn) 實(shí)驗(yàn)1:系統(tǒng)認(rèn)識實(shí)驗(yàn) 1. 實(shí)驗(yàn)?zāi)康?(1)了解ZY15MCU12BC2單片......

        單片機(jī)課程實(shí)驗(yàn)報(bào)告

        《單片機(jī)原理及應(yīng)用》課程實(shí)驗(yàn)報(bào)告 實(shí)驗(yàn)名稱:步進(jìn)電機(jī)綜合控制實(shí)驗(yàn)一、摘要:本實(shí)驗(yàn)利用 8051 單片機(jī)達(dá)到控制步進(jìn)電機(jī)的啟動、停止、正轉(zhuǎn)、 反轉(zhuǎn)、點(diǎn)動、轉(zhuǎn)過指定角度、狀態(tài)顯......