普中科技-51單片機(視頻配套完整版)_第1頁
普中科技-51單片機(視頻配套完整版)_第2頁
普中科技-51單片機(視頻配套完整版)_第3頁
普中科技-51單片機(視頻配套完整版)_第4頁
普中科技-51單片機(視頻配套完整版)_第5頁
已閱讀5頁,還剩73頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、一、led燈相關知識 led light emitting diode,即發光二極管,是一種半 導體固體發光器件,它是利 用固體半導體芯片作為發光 材料,當兩端加上正向電壓,半導體中的載流子發生復 合引起光子發射而產生光。led可以直接發出紅、黃、 藍、綠、青、橙、紫、白色的光。 led燈應用有以下幾個特點: 1.多變幻:led光源可利用led紅、綠、藍三基色 原理,在計算機技術控制下實現色彩和圖案的多變化, 是一種可隨意控制的“動態光源”。 2.壽命長:led 光源無燈絲、工作電壓低,使用壽 命可達5萬到10萬小時,也就是5年到10年時間。 3.利環保:生產中無有害元素、使用中不發出有害物

2、質、無輻射。 4.高節能:led耗電相當低,一般來說led的工作電 壓是2-3.6v。工作電流是20-30ma。這就是說:它消耗的 電能不超過0.1w。 普中科技 單片機開發儀視頻教程 二、開發試驗的led原理圖 三、排線連接方法 看視頻圖像 四、相關的知識點 1、啟動文件startup.a51:它包含目標板啟動代碼,在每個工程中加入這個文件。 只要復位,該文件則立即執行,其功能包括:1.定義內部ram大小、外部ram小、可 重入堆棧位置。2.清除內部、外部或者以此頁為單元的外部存儲器。3.按存儲模式初使 化重入堆棧及堆棧指針。4.初始化8051硬件堆棧指針。5.向main( )函數交控制權

3、2、頭文件 #include定義了51的所有寄存器,尖括號表示在安裝目錄 下找reg51.h文件,雙引號表示在當前工程目錄下找reg51.h文件。 3、子函數:c語言的執行從main函數開始,每個函數體是相互獨立,被 main函數 調用的函數都是子函數,子函數與子函數也可以相互調用 4、for循環格式: for(表達式 1;表達式 2; 表達式 3) 語句; 5、16進制數,以0 x開頭的表示16進制 ,如: 0 xff 0 x12 0 x00. 8進制數,用數字0開頭的數是八進制 如:023表示八進制的 23 10進制數,日常生活中用到的數字,如: 100 ,200, 30 等 五、程序示例

4、 普中科技 單片機開發儀視頻教程 普中科技 單片機開發儀視頻教程 輕觸開關是一種電子開關,使用時,輕輕按開關按鈕就可使開關接通,當松開手時, 開關斷開,其內部結構是靠金屬彈片受力彈動來實現通斷。輕觸開關由于體積小重量 輕在家用電器方面得到廣泛的應用,如:影音產品、.數碼產品、遙控器、通訊產品、家 用電器、安防產品、玩具、電腦產品、健身器材等等。但輕觸開關也有它不足的地方, 頻繁的按動會使金屬彈片疲勞失去彈性而失效。因此現在很多電器的按鈕都使用導電 橡膠或鍋仔開關,比如電腦鍵盤,遙控器,手機等。 關于五腳輕觸開關的腳位接法:兩個引腳為一組,四角是為了焊接的更加穩固,第五 個引腳是為接地線用的。

5、普中科技 單片機開發儀視頻教程 三、排線連接方法 看視頻圖像 普中科技 單片機開發儀視頻教程 普中科技 單片機開發儀視頻教程 普中科技 單片機開發儀視頻教程 繼電器(英文名:relay):可以理解為繼承控制,它 是一種電子控制器件。通常應用于自動控制電路中, 它實際上是用較小的電流去控制較大電流的一種自 動開關。故在電路中起著自動調節、安全保護、轉 換電路等作用。 蜂鳴器有2種:1.壓電式蜂鳴器 2.電磁式蜂鳴器 1. 壓電式蜂鳴器主要由多諧振蕩器、壓電蜂鳴片、 阻抗匹配器及共鳴箱、外殼等組成。 2電磁式蜂鳴器由振蕩器、電磁線圈、磁鐵、振 動膜片及外殼等組成。接通電源后,振蕩器產生的 音頻信號

6、電流通過電磁線圈,使電磁線圈產生磁場。 振動膜片在電磁線圈和磁鐵的相互作用下,周期性 地振動發聲。 關于有源蜂鳴器和無源蜂鳴器的區別:這里的“源” 不是指電源。而是指震蕩源。 也就是說,有源蜂 鳴器內部帶震蕩源,所以只要一通電就會叫。無源 蜂鳴器沒有振蕩源需要驅動的音頻電流才能發聲 。 繼電器模擬示意圖 普中科技 單片機開發儀視頻教程 二、開發實驗儀中的原理圖 繼電器原理圖蜂鳴器原理圖 hc6800em3型號的原理圖 普中科技 單片機開發儀視頻教程 hc6800型號的原理圖 uln2003 是高耐壓、大電流達林頓陣列,由七個硅npn 達林頓管組成。 uln2003 的每一對達林頓都串聯一個2.

7、7k的基極電阻,在5v 的工作電壓下它能與ttl 和cmos 電路直接相連,可以直接處理原先需要標準邏輯緩沖器來處理的數據。 uln2003 工作電壓高,工作電流大,灌電流可達500ma,并且能夠在關態時承受 50v 的電壓,輸出還可以在高負載電流并行運行。 高壓大電流達林頓晶體管陣列系列產品,具有電流增益高、工作電壓高、溫度范圍 寬、帶負載能力強等特點,適應于各類要求高速大功率驅動的系統(更詳細的技術參數 參考uln2003數據手冊) 普中科技 單片機開發儀視頻教程 1:cpu脈沖輸入端,端口對應一個信號輸出端16。 2:cpu脈沖輸入端。 3:cpu脈沖輸入端。 4:cpu脈沖輸入端。 5

8、:cpu脈沖輸入端。 6:cpu脈沖輸入端。 7:cpu脈沖輸入端。 8:接地 9:該腳是內部7個續流二極管負極的公共端,各二極管的正極分別接各達林頓管的集 電極。用于感性負載時,該腳接負載電源正極,實現續流作用。如果該腳接地,實際 上就是達林頓管的集電極對地接通。 譯碼器:是一種具有“翻譯”功能的邏輯電路,它是組合邏輯電路中的一個重要的 器件,這種電路能將輸入二進制代碼的各種狀態,按照其原意翻譯成對應的輸出信號。 有一些譯碼器設有一個和多個使能控制輸入端,又成為片選端,用來控制允許譯碼或 禁止譯碼。 譯碼器可以分為:變量譯碼和顯示譯碼兩類。 變量譯碼:一般是一種較少輸入變為較多輸出的器件,一

9、般分為2n譯碼和 8421bcd碼譯碼兩類。hc6800開發儀的譯碼器為變量譯碼器。 顯示譯碼:主要解決二進制數顯示成對應的十、或十六進制數的轉換功能, 一般其可分為驅動led和驅動lcd兩類。 74138譯碼器:是一種3線8線譯碼器 ,三個輸入端abc共有8種狀態組合 (000111),可譯出8個輸出信號y0y7。這種譯碼器設有三個使能輸入 端,當g2a與g2b均為0,且g1為1時,譯碼器處于工作狀態時,對應的輸出 為低電平。 普中科技 單片機開發儀視頻教程 譯碼器的相關知識: 普中科技 單片機開發儀視頻教程 真值表 通過真值表可以看到74hc138的八個輸出引腳,任何時刻要么全為高電平1,

10、此時芯片處于不工作狀 態,要么只有一個為低電平0,其余7個輸出引腳全為高電平1。如果出現兩個輸出引腳同時為0的情 況,說明該芯片已經損壞。 普中科技 單片機開發儀視頻教程 原理圖和連接邏輯圖 原理圖連接邏輯圖 當一個選通端(g1)為高電平,另兩個選通端(/(g2a)和/(g2b))為低電平時,可將地 址端(a、b、c)的二進制編碼在一個對應的輸出端以低電平譯出 ,利用g1、/(g2a)和 /(g2b)可級聯擴展成4線16線譯碼器或5線-32線譯碼器 例程演示 接線演示 課后思考 74hc138接成的4線16線譯碼器 普中科技 單片機開發儀視頻教程 普中科技 單片機開發儀視頻教程 一、數碼管相關

11、知識: led數碼管(led segment displays)是由多個發光二極管封裝在一起組成“8” 字型的器件,引線已在內部連接完成,只需引出它們的各個筆劃,公共電極。 led數碼管常用的段數一般為7段,有的另加一個小數點 。led數碼管根據led 的接法不同,分為共陰和共陽兩類 。 數碼管使用的電流:靜態時,推薦使用10-15ma;動態時,動態掃描時,平均 電流為4-5ma,峰值電流可達到50-60ma 普中科技 單片機開發儀視頻教程 二、原理圖: 普中科技 單片機開發儀視頻教程 三、接線演示: 看視頻演示 四、例程演示: 以數碼管(靜態顯示)的c語言作為例程演示 關于數碼管顯示字模:

12、共陽極字模: 0 1 2 3 4 5 6 7 8 9a b c d e f 0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x77,0 x7c,0 x39,0 x5e,0 x79,0 x71; 0 xc0, 0 xf9, 0 xa4, 0 xb0, 0 x99, 0 x92, 0 x82 ,0 xf8, 0 x80, 0 x90, 0 x88, 0 x83, 0 xc6, 0 xa1 0 x86 , 0 x8e; 共陰極字模: 0 1 2 3 4 5 6 7 8 9 a b c d e f 0 x3f,0 x06,0

13、x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x77,0 x7c,0 x39,0 x5e,0 x79,0 x71; 普中科技 單片機開發儀視頻教程 自增自減運算符 +i 使用i值之前,使i的值加1,再使用i的值 i+ 使用完i值后,再使i值加1 i- 使用完i值后,再使i的值減1, -i 使用i值之前使i的值減1,再使用i的值 1.對于普通獨立的語句 i+; 等效于 i=i+1; +i; 等效于 i=i+1; 2. 用于賦值語句 3. 用在判斷條件表達式 i = 0; while(i+) printf(i=%dn,i); if(i=3) bre

14、ak; printf(i=%dn,i); 則執行過程為 先把i的值拿出來判斷條件,此時while(0) 條件為假,循環體內部的printf 沒有做,但是判斷完條件后,馬上做了i=i+1,則最后輸出 i=1; 符合運算符及表達式 / 取整運算符 % 取余運算符 單片機開發儀視頻教程 i = 0; while(+i) printf(i=%dn,i); if(i=3) break; printf(i=%dn,i); 則執行過程為 先把i的值執行i=i+1,此時i=1; while(1) 條件為真, 然后再做循環體,此時輸出 i=1 if不成立,繼續循環 當i=1時,再判斷循環條件+i,還是先執行i=

15、i+1,此時i=2; while(2) 條件為真,然后再做循環體, 此時輸出 i=2;if不成立,繼續循環 當i=2時,再判斷循環條件+i,還是先執行i=i+1,此時i=3; while(3) 條件為真,然后再做循環體, 此時輸出 i=3;if成立,強制推出循環 普中科技 單片機開發儀視頻教程 數碼管動態顯示方式是單片機中應用最為廣泛的一種顯示方式之一,動態驅動是將所有數碼 管的8個顯示筆劃“a,b,c,d,e,f,g,dp”的同名端連在一起,另外為每個數碼管的公共極com增加位 選通控制電路,位選通由各自獨立的i/o線控制,當單片機輸出字形碼時,所有數碼管都接收到相 同的字形碼,但究竟是哪個

16、數碼管會顯示出字形,取決于單片機對位選通com端電路的控制,所以 我們只要將需要顯示的數碼管的選通控制打開,該位就顯示出字形,沒有選通的數碼管就不會亮。 通過分時輪流控制各個數碼管的的com端,就使各個數碼管輪流受控顯示,這就是動態驅動。在 輪流顯示過程中,每位數碼管的點亮時間為12ms,由于人的視覺暫留現象及發光二極管的余輝 效應,盡管各位數碼管并非同時點亮,但只要掃描的速度足夠快,給人的印象就是一組穩定的顯 示數據,不會有閃爍感,動態顯示的效果和靜態顯示是一樣的,能夠節省大量的i/o端口,而且功 耗更低。 一、數碼管動態顯示和573鎖存器相關知識: 普中科技 單片機開發儀視頻教程 二、動態

17、數碼管的內部結構圖 【數碼管參數】【數碼管參數】 1、 8字高度:8字上沿與下沿 的距離。比外型高度小。通常用 英寸來表示。范圍一般為0.25-20 英寸。(1英寸=25.4mm) 2、長*寬*高:長數碼管 正放時,水平方向的長度;寬 數碼管正放時,垂直方向上的 長度; 3、高數碼管的厚度。 4、時鐘點:四位數碼管中, 第二位8與第三位8字中間的二點。 一般用于顯示時鐘中的秒 普中科技 單片機開發儀視頻教程 74hc573的特點:1、三態總線驅動輸出 2、數據全并行存取 3、緩沖控制輸入 4、使能輸入有改善抗擾度的滯后作用 原理說明: 74hc573的八個鎖存器都是透明的d 型鎖存器,當使能(

18、le)為高時,輸出(q )將隨輸入 數據(d)的變化而變化。當使能為低時,輸出將鎖存在已建立的數據電平上。輸出控制 不影響鎖存器的內部工作,即老數據可以保持,甚至當輸出被關閉時,新的數據也可以置 入。這種電路可以驅動大電容或低阻抗負載,可以直接與系統總線接口相連并驅動總線, 特別適用于緩沖寄存器,i/o 通道,雙向總線驅動器和工作寄存器。 oe:3 state output enable input (active low)3態輸出使能輸入(低電平) le:latch enable input 鎖存使能輸入 d0 to d7:data inputs數據輸入 q0 to q7: data out

19、puts數據輸出 573引腳圖 573邏輯圖 普中科技 單片機開發儀視頻教程 三、動態顯示數碼管原理圖: 普中科技 單片機開發儀視頻教程 相關知識: switch/case語句:是一個多分支選擇語句 switch(表達式) /這個表達是可以為任何類型 case 1: 語句1; case 2: 語句2; case 3: 語句3; case 4: 語句4; . . . . case n: 語句n; default: 語句 n+1; 普中科技 單片機開發儀視頻教程 led點陣:它以發光二極管為像素,它用高亮度發光二極管芯陣列組合后,用環氧 樹脂和塑模封裝而成。具有高亮度、功耗低、引腳少、視角大、壽命

20、長、耐濕、耐冷熱、 耐腐蝕等特點。點陣顯示器有單色、雙色和彩色三類,可顯示紅,黃,綠,橙等。led 點陣有44、48、57、58、88、1616、2424、4040等多種; led點陣掃描驅動方式: led點陣采用動態掃描驅動方式工作,由于led管芯大多 為高亮度型,因此某行或某列的單體led驅動電流可選用窄脈沖,但其平均電流應限制 在20ma內多數點陣顯示器的單體led的正向壓降約在2v左右但大亮點10的點陣 顯示器單體led的正向壓降約為6v。大屏幕顯示系統一般是將由多個led點陣組成的小 模塊以搭積木的方式組合而成的,每一個小模塊都有自己的獨立的控制系統,組合在一 起后,只要引入一個總控

21、制器控制各模塊的命令和數據即可,這種方法既簡單而且具有 易擴展、易維修的特點。led點陣顯示系統中各模塊的顯示方式有靜態和動態顯示兩種。 靜態顯示原理簡單、控制方便,但硬件接線復雜,在實際應用中一般采用動態顯示方式, 動態顯示采用掃描的方式工作,由峰值較大的窄脈沖驅動,從上到下逐次不斷地對顯示 屏的各行進行選通,同時又向各列送出表示圖形或文字信息的脈沖信號,反復循環以上 操作,就可顯示各種圖形或文字信息。 一、led點陣的知識: 普中科技 單片機開發儀視頻教程 二、led點陣原理圖: 普中科技 單片機開發儀視頻教程 三、led點陣顯示原理 普中科技 單片機開發儀視頻教程 一、步進電機的相關知識

22、: 步進電機分單極性和雙極性兩種: 單極性步進電機有兩個線圈,但有五條或六條線,也就是 在一個線圈的中間增加了一個抽頭,五條線的也可以看成是六條 線,它是把兩個線圈的兩根中間線并在一起。由于在一個線圈的 中間有了抽頭,電流就可以在一個線圈的一半走不同的流向。但 這時,只是用到電機線圈的一半而已。 雙極性步進電機之所以如此命名,是因為每個繞組都可以兩 個方向通電。因此每個繞組既可以是n極又可以是s極。它又被稱 為單繞組步進電機,其磁極(不是中間抽頭的單一線圈)中的場強 是單極性步進電機的兩倍。雙極性步進電機的每個繞組需要一個 可逆電源,通常由h橋式驅動電路提供。由于雙極性步進電機比單 極性步進電

23、機的輸出力矩大,因此總是應用于空間有限的設計中。 這也是軟盤驅動器的磁頭步進機械系統的驅動之所以采用雙極性 步進電機的原因。 單極性驅動電路 h橋式驅動電路 普中科技 單片機開發儀視頻教程 單極性步進電機的節拍有(5線4為例) 單四拍: a-b-c-d 雙四拍: ab-bc-cd-da 單雙8拍:a-ab-b-bc-c-cd-d-da(半步工作方式) 雙極性步進電機的節拍(4線2相為例) 單四拍: a/ - b - a - b/ 雙四拍: a/b - ab - ab/ - a/b/ 單雙8拍:a/ a/b b ab a ab/ b/ a/b/ 步進電機運行有三種步進方式:單拍、雙拍、半拍方式。

24、 單拍方式:它是指每次僅給一個繞組通電,使轉子旋轉,并運動到轉子永磁體與具有相 反極性的繞組對齊的位置。 雙拍方式:它同時給兩個繞組通電,這樣就使轉子旋轉,并在永磁體到達兩個通電繞組的 中間位置點時平衡。雙拍方式的優點是比單拍方式多獲得41.4的輸出力矩,不過代價是需 要花費后者兩倍的能量,因為它有兩相繞組同時通電。 半拍方式:它工作時則讓兩個繞組通電與單個繞組通電方式交替地進行。半拍方式的輸 出力矩比雙拍方式小,隨設計不同,在1530之間變化,不過它可以獲得雙拍方式兩 倍的步進分辨率(每圈兩倍的步數)。 普中科技 單片機開發儀視頻教程 三、步進電機的原理圖 hc6800em3原理圖 hc68

25、00原理圖 普中科技 單片機開發儀視頻教程 專業步進驅動芯片原理圖 普中科技 單片機開發儀視頻教程 四、實驗的接線演示: 看視頻演示 五、例程演示: 1.單雙八拍1的c語言作為例程演示 hc6800 hc6800em3 80c51 提供了5個中斷源: 2個外部中斷int0(p3.2)和int1(p3.3), 2個片內定時器/計數器t0(p3.4)和t1(p3.5)的溢出中斷tf0和tf1, 1個片內串行口的發送或接收中斷請求源ti或ri。 ie0 tf0 ie1 tf1 ti ri px0 pt0 px1 pt1 ps ex0 et0 ex1 et1 es 1 0 1 0 1 0 1 0 1

26、0 高優先級中斷申請 自然優先級 rx p3.1 tx p3.0 t1 p3.5 int1 int0 t0 p3.4 ea ie ip tcon scon 位 d7 d6 d5 d4 d3 d2 d1 d0 功能 tf1 tr1 tf0 tr0 ie1 it1 ie0 it0 位 ea es et1 ex1 et0 ex0 地址afh ach abh aah a9h a8h ip ps pt1 px1 pt0 px0 地址 bch bbh bah b9h b8h 定時器定時器/計數器控制寄存器計數器控制寄存器tcon 中斷允許控制寄存器中斷允許控制寄存器ie 優先級控制寄存器優先級控制寄存器i

27、p it0:itn0的觸發方式控制位,由軟件設置。 it0=0時,int0為低電平觸發方式 it0=1時,int0為負跳變觸發方式。 ie0:int0中斷請求標志位。當int0引腳 上出現中斷請求信號時,由硬件置位ie0 在cpu響應中斷后,再由硬件將ie0清0 it0 = 0 it1 = 0 it0 = 1 it1 = 1 ea:cpu中斷允許標志位,1:開發所有,0:禁止 es:串行口允許中斷位,1:允許,0:禁止 et1:定時器1允許中斷位,1:允許,0:禁止 ex1:外部中斷1允許中斷位,1:允許,0:禁止 ps:串行口中斷優先級控制位 pt1:定時器t1中斷優先級控制位 px1:外部

28、中斷1中斷優先級控制位 pt0:定時器t0中斷優先級控制位 px0:外部中斷0中斷優先級控制位 1:設置中斷 為高優先級 0:設置中斷 為低優先級 中斷系統結構圖中斷系統結構圖 普中科技 單片機開發儀視頻教程 中斷源中斷源同級內部自然優先級同級內部自然優先級 外部中斷外部中斷0 定時器定時器0 外部中斷外部中斷1 定時器定時器t1 串行口串行口 最高級最高級 最低級最低級 中斷向量入口地址中斷向量入口地址 0003h 000bh 0013h 001bh 0023h 5個中斷源分別設置成不同的優先級。如果都被設置成同一優先級,這5個中斷源因硬件 的組成不同而形成不同的內部序號,從而構成了不同的自

29、然優先級。每個中斷源,有對 應的中斷服務程序,這些程序有固定的存放位置,當產生相應的中斷后,就可以跳到相 應的位置執行中斷程序。這個位置就在中斷向量的入口地址。每個位置只有8個字節的 程序存儲空間,但是中斷程序很多都會超過8個字節。在匯編語言中,用ljmp跳轉指令, 把實際處理的中斷程序放到rom的任何位置。而在c語言編程中,c語言編譯器自行處 理,不需要我們考慮。 5個中斷源的自然優先級和中斷入口地址個中斷源的自然優先級和中斷入口地址 普中科技 單片機開發儀視頻教程 中斷服務程序函數的格式: 返回類型返回類型 函數名函數名(參數參數) interruput n 嚴格完整格式: 返回類型返回類

30、型 函數名函數名(參數參數) interruput n using n 其中interruput n 中n對應中斷源的編號,其值從0開始。以80c51為例 n的編號0-4,分別是: 0、外部中斷0 1、定時器0中斷 2 、外部中斷1 3、定時器1中斷 4、串口中斷 using n 中 n 的值是0-3,對應使用4組工作寄存器。 關于51單片機工作寄存器組 為了進行中斷的現場保護,80c51單片機除采用堆棧技術外,還采用了寄存器的方式。 51單片機有4組名稱均為r0-r7的工作寄存器,中斷產生時,可以通過簡單地設置rs0和 rs1來切換工作寄存器組。提高了51單片機現場保護和現場恢復的速度,對于

31、提高cpu 的工作效率和響應中斷的速度是很有利。若在一個實際的應用系統中,不需要四組工 作寄存器,那么這個區域中多余單元可以作為一般的數據緩沖器使用。 高優先級中斷可以中斷正在處理的低優先級程序,因而必須注意寄存器組,分配的方法 是使用using n來制定。 rs1 rs0 類型類型 字節地字節地 0 0 0組寄存器組寄存器 00h07h 0 1 1組寄存器組寄存器 08h0fh 1 0 2組寄存器組寄存器 10h17h 1 1 3組寄存器組寄存器 18h1fh 位 d7 d6 d5 d4 d3 d2 d1 d0 含義 cy ac f0 rs1 rs0 ov p psw程序狀態寄存器 cy:進

32、位標志:進位標志 ac:輔助進、借位:輔助進、借位 f0:用戶標志位:用戶標志位 0v:溢出標志位:溢出標志位 p:奇偶校驗位:奇偶校驗位 普中科技 單片機開發儀視頻教程 80c51單片機內部集成了16位的可編程定時器/計數器,他們分別是定時器/計數 器0(t0)和定時器/計數器1(t1)。他們既可以工作在定時器方式,實現對控制系統的 定時或精準延時控制,又可以工作在計數方式,用于對外部的脈沖事件計數。 與t0和t1相關的寄存器: 1.有2個8位控制寄存器tmod和tcon, 2.有2個16位的計數器th0、tl0、th1、tl1,他們都是16位的加1計數器也就是 增量式計數器。 振蕩器12分

33、配 tl0th0tf0 控制 開 關 t0引腳 定時器 計數器 定時器/計數器結構簡圖 外部晶振 向cpu申 請中斷 進入中斷服 務程序 計滿溢出 普中科技 單片機開發儀視頻教程 位 d7 d6 d5 d4 d3 d2 d1 d0 含義 gate c/t m1 m0 gate c/t m1 m0 控制t1 控制t0 m1m0 方式 00 模式0 01 模式1 10 模式2 11 模式3 定時器模式 與int0無關 與int0有關 工作方式0:13位定時器 / 計數器,最多可計數 2的13次方次。 工作方式1:16位定時器/計數器,最多可計數2的 16次方次,。 工作方式2:8位定時器/計數器,

34、計算次數最多 為2,計算次數最多 為28。 計數器模式 tmod 工作模式控制寄存器 c/t = 0 c/t = 1 gate = 0 gate = 1 由于tmod只能直接字節尋址,所以對t0和t1 的工作方式只能以字節寫入。 功能:用來設置各個定時器/計數器的工作方式,選擇定時器或計數器功能。 門控位 普中科技 單片機開發儀視頻教程 位地址 8f 8e 8d 8c 8b 8a 89 88 功能 tf1 tr1 tf0 tr0 ie1 it1 ie0 it0 1:啟動t0 0:停止t0 1:有t0中斷 0:無t0中斷 1:啟動t1 0:停止t1 1:有t1中斷 0:無t1中斷 tcon 工作

35、狀態控制寄存器(地址 88h ) tcon的低四位和 外部中斷有關 功能:用來控制定時器/計數器的啟停和作為運行狀態的標志等。 什么是中斷? 由于某個事件的發 生,cpu暫停當前正 在執行的程序,轉而 執行處理該事件的一 個程序。該程序執行 完成后,cpu接著執 行被暫停的程序。這 個過程稱為中斷。 tcon寄存器即可字節 尋址也可以位尋址 字節地址為 88h, 位地址為88h8fh 普中科技 單片機開發儀視頻教程 振蕩器12分配 tl0th0tf0 開 關 t0引腳 定時器 計數器 定時器/計數器結構簡圖 & int0 gate tr0 控制 高電平有效 d0d4 d0d7 (工作模式0)

36、13位 d0d7 d0d7 (工作模式1) 16位 d0d7 預置數 (工作模式2) 8位 定時器/計數器的打開或關閉,由gate、軟件 控制位tr和int共同決定。 gate = 0,只要用指令置tr為1即可啟動定時器/計數 器,而不管int的狀態如何。 gate = 1,只要int為高電平且用指令置tr為1時,才 能啟動定時器/計數器 工作模式0:其原因是為了和51機的前輩48 系列兼容而設的一種工作式 工作模式2:自動再裝入時間常數的8位計數 器方式 c/t = 1 c/t = 0 計滿溢出 定時器/計數器4種工作方式 外部晶振 位 d7 d6 d5 d4 d3 d2 d1 d0 含義

37、gate c/t m1 m0 gate c/t m1 m0 位地址 8f 8e 8d 8c 8b 8a 89 88 功能 tf1 tr1 tf0 tr0 ie1 it1 ie0 it0 tmod tcon 普中科技 單片機開發儀視頻教程 振蕩器12分配 th0tf1 開 關 tr1 t0工作在方式3,tl0構成8位計數器可用于定時/ 計數,使用t0的控制位( tr0)和tf0的中斷源。 但是,th0則只能工作在定時器狀態,它借用t1的 tr1和tf1的中斷源。如硬把t1工作在方式3時,t1將處于 關閉狀態。 一般情況下,只有t1以工作方式2運行(當波特率發生器 用)時,才讓t0工作于方式3。因

38、為t1的tr1和tf1的中斷源 被定時/計數器0借用了,只能把計數溢出直接送給串行口。 工作模式3 振蕩器12分配 tl0tf0 開 關 t0引腳 p3.4 c/t = 0 定時器 c/t = 1計數器 & p3.2 int0 gate tr0 控制 高電平有效 向cpu申 請中斷 進入中 斷服務 程序 向cpu申 請中斷 進入中 斷服務 程序 計滿溢出 計滿溢出 外部晶振 外部晶振 振蕩器12分配 開 關 t1引腳 定時器 計數器 c/t = 1 c/t = 0 外部晶振 tl1 th1 串行口 重裝 t1的工作方式2 普中科技 單片機開發儀視頻教程 定時器/計數器初值的計算 80c51的t

39、1和t0中的計數器都是增量式的,因此,不能直接將實際要計數的值作為初值放入 計數寄存器中,而是將計數的的最大值減去實際要計數的值放入計數寄存器中。 定時模式計數脈沖是由單片機的晶體振蕩器產生的頻率信號經12分頻得到。因此在設置定時 時間之前,要確定機器的晶振頻率。 開發試驗儀采用的12m的晶振 頻率的計算公式: fosc = 1 / tosc 。 (fosc表示頻率 tosc表示周期) 計數的周期: t = (1/12 000 000)*12 = 1s (12分頻) 計數的次數: 計數的次數 = 定時時間/1s 假設我們定時的時間是 100s 計數的次數 = 100 s / 1s = 100

40、次 如果選用定時器0 工作方式0 :計算出來的初值 = 8192 100 工作方式1: 計算出來的初值 = 65535 100 工作方式2: 計算出來的初值 = 256 100(自動裝載) 工作方式3: 計算出來的初值 = 256 100 普中科技 單片機開發儀視頻教程 四、實驗的接線演示: 看視頻演示 五、例程演示: 1.timer0和 計數器功能的c語言作為例程演示 知識點: 中斷程序的編寫 中斷服務程序函數的格式: 返回值 函數名 interruput n 其中n 對應中斷源的 編號,其值從0開始。以80c51為例 n的編號0-4,分別是: 0 外部中斷0 1 定時器0中斷 2 外部中斷

41、1 3 定時器1中斷 4 串口中斷 普中科技 單片機開發儀視頻教程 矩陣式鍵盤的結構與工作原理: 在鍵盤中按鍵數量較多時,為了減少i/o口的占用,通常將按鍵排列成矩陣形式,在矩陣式鍵盤中,每條水平 線和垂直線在交叉處不直接連通,而是通過一個按鍵加以連接。這樣,一個端口(如p1口)就可以構成4*4=16個 按鍵,比之直接將端口線用于鍵盤多出了一倍,而且線數越多,區別越明顯,比如再多加一條線就可以構成20鍵 的鍵盤,而直接用端口線則只能多出一鍵。因此,在需要的鍵數比較多時,采用矩陣方式來做鍵盤是合理的。 矩陣式鍵盤結構顯然比直接法要復雜一些,識別也要復雜一些。下圖中,我們用程序把行線置低為電平,列

42、 線為高電平。當按鍵沒有按下時,行線和列線狀態不變,一旦有鍵按下,則高電平的某條列線將被低電平的行線 拉低,這樣,通過讀入被拉低列線的狀態就可得知是否有鍵按下了。確定矩陣式鍵盤上哪個鍵被按下是一種“行 掃描法”。行掃描法又稱為逐行(或列)掃描查詢法,是一種最常用的按鍵識別方法, 介紹開發儀鍵盤識別過程如下: 1.判斷鍵盤中有無鍵按下 將全部行線p10-p13 置低電平,列線p14-p17置高電平,然后檢測列線的 狀態。只要有一列的電平為低,則表示鍵盤中有鍵 被按下。若所有列線均為高電平,則鍵盤中無鍵按下。 2.判斷閉合鍵所在的位置 在確認有鍵按下后, 即可進入按鍵檢測的過程。其方法是: 1.把

43、行線置為低電平,列線置位高電平,用程序 檢測4條列線的狀態。 2.停止列線的檢測,把列線置位低電平,行線置 位高電平,用程序檢測3條行線的狀態。 開發試驗儀中的原理圖 普中科技 單片機開發儀視頻教程 spi總線簡介 spi(serial peripheral interface)顧名思義,就是串行外圍設備接口,由摩托 羅拉公司推出的一種高速、全雙工、或多個從設備組成,主設備啟動一個與從設備的 同步通訊,從而完成數據的交換。該總線大量用在eeprom、adc、顯示驅動器之類的慢 速外設器件通信。 spi接口由四種信號構成 1.sdi:串行數據輸入 2.sdo:串行數據輸出 3.sck:串行移位時

44、鐘 4.cs: 從設使能信號 我們開發試驗儀采用的74hc595和74hc165這兩個芯片是遵循sip協議的。它們只用到 spi的3條線,所以只能單向傳輸數據。由于51單片機沒有硬件的spi總線控制器,所以 只能用軟件模擬的方式來實現spi協議通信。 74hc595包括一個8位移位寄存器和一個8位d型鎖存器和三態并行輸出。移位寄存器接收串行數據并提供串行輸出。 移位寄存器和鎖存器都有獨立的時鐘輸入。這個ic還具有異步復位的功能。 rck (12腳):上升沿時移位寄存器的數據進入數據存儲寄存器,下降沿時存儲寄存器數據不變。通常我將rck置為 低電平,當移位結束后,在rck端產生一個正脈沖(5v時

45、,大于幾十納秒就行了,通常都選微秒級),更新顯示數 據。 g (13腳): output enable 高電平時禁止輸出(高阻態)。 普中科技 單片機開發儀視頻教程 qa-qh: 八位并行 輸出端可 以直接控 制數碼管 的8個段 sqh(9腳): 級聯輸出 端。可以 接下一個 595的串行 數據輸入 端 sclr (10腳): 低電平時將移位寄存器的數據清零。通常我將它接vcc。 sck (11腳):上升沿時數據寄存器的數據移位。qa-qb-qc-.-qh; 下降沿移位寄存器數據不變。(脈沖寬度:5v時,大于幾十納秒就行了,我 通常都選微秒級) 普中科技 單片機開發儀視頻教程 595 74hc

46、595優點: 具有數據存儲寄存器,在移位的過程中,輸出端的數 據可以保持不變,抗干擾強。這在串行速度慢的場合很 有用處,數碼管沒有閃爍感。 注意: 74164和74595功能相仿,都是8位串行輸入轉并行輸出 移位寄存器。74164的驅動電流(25ma)比74595(35ma)的 要小,14腳封裝,體積也小一些。 普中科技 單片機開發儀視頻教程 hc6800em3 原理圖 hc6800原理圖 普中科技 單片機開發儀視頻教程 時序圖1 普中科技 單片機開發儀視頻教程 時序圖2 普中科技 單片機開發儀視頻教程 74hc165是一款高速cmos器件,它的引腳兼容低功耗肖特基ttl(lsttl)系列。它

47、是8位并行讀取或串行輸入移位 寄存器,可在末級得到互斥的串行輸出(qh和qh). serial input為串行輸入端,將數據串行進入到寄存器,在每個時鐘脈沖的上升沿向右移動一位(qa qb qc,等等)。利用這種特性,只要把qh輸出接到下一級的serial input輸入,即可實現并轉串擴展。 shift load為低電平時,將a到h口并行數據同時傳到寄存器中。 shift load為高電平時,并行數據不能傳入寄存器中。 74hc165的時鐘輸入是一個“或非門”結構,clock和clock inhibit功能是等效的可以互換使用,都是上升沿有 效。 當clock和clock inhibit有

48、一個為低電平,并且shift load為高電平時,另一個時鐘可以輸入。當clock和clock inhibit有一個為高電平時,另一個時鐘被禁止。 普中科技 單片機開發儀視頻教程 74hc165 參數 74hc165 基本參數 電壓 2.06.0v 驅動電流 +/-5.2 ma 傳輸延遲 16 ns5v 74hc165 其他特性 最高頻率 56 mhz 邏輯電平 cmos 功耗考量 低功耗或電池供電應用 普中科技 單片機開發儀視頻教程 開發試驗儀的原理圖 相關知識: data: 可尋址片內ram,固定指前面0 x00-0 x7f的128個字節ram,可以用acc直接讀 寫的,速度最快,生成的代

49、碼也最小。 bdata: 可位尋址的片內ram idata: 可尋址片內ram,允許訪問全部內部ram。固定指前面0 x00-0 xff的256個字節的 ram,其中前128和data的128完全相同 pdata:分頁尋址片外ram (movx r0) (256 byte/頁) xdata:可尋址片外ram (64k 地址范圍ffffh) ,一般指外部0 x0000-0 xffff空間, 用dptr訪問 code:程序存儲區 (64k 地址范圍),對應movc dptr 普中科技 單片機開發儀視頻教程 時序圖 普中科技 單片機開發儀視頻教程 普中科技 單片機開發儀視頻教程 i2c(interi

50、ntegrated circuit)總線是一種由philips公司開發的兩線式串行總線,用于 連接微控制器及其外圍設備。i2c總線產生于80年代,最初為音頻和視頻設備開發。 i2c總線是由數據線sda和時鐘線scl構成的串行總線,可發送和接收數據。在cpu與被控ic之 間、ic與ic之間進行雙向傳送,最高傳送速率100kbps。被控制電路均并聯在這條總線上,每個 電路和模塊都有唯一的地址.就像電話機一樣只有撥通各自的號碼才能工作。i2c總線上每一模塊 電路既是主控器(或被控器),又是發送器(或接收器)。 cpu發出的控制信號分為地址碼和控制 碼兩部分,地址碼用來要控制的器件。控制 碼決定控制的

51、內容。這樣,各控制電路雖然 掛在同一條總線上,卻彼此獨立,互不相關。 i2c總線最主要的優點: 1.i2c總線占用的空間非常小,減少了電路板的空間和芯片管腳的數量,降低了互聯成 本,總線的長度可高達25英尺。 2.支持多主控(multimastering), 其中任何能夠進行發送和接收的設備都可以成為主 總線。一個主控能夠控制信號的傳輸和時鐘頻率。當然,在任何時間點上只能有一個 主控。 1.總線空閑狀態:i2c總線的sda和scl兩條信號線同時處于高電平 時,規定為總線的空閑狀態。此時各個器件的輸出級場效應管均處 在截止狀態,即釋放總線,由兩條信號線各自的上拉電阻把電平拉 高。 2.啟動信號:

52、在時鐘線scl保持高電平期間,數據線sda上的電平 被拉低(即負跳變),定義為i2c總線總線的啟動信號,它標志著一 次數據傳輸的開始。 3.停止信號:在時鐘線scl保持高電平期間,數據線sda被釋放, 使得sda返回也是由主控器主動建立的,建立該信號之后,i2c總線 將返回空閑狀態。 4.總線封鎖狀態:在特殊情況下,如果需要禁止所有發生在i2c總 線上的通信活動,封鎖或關閉總線是一種可行途徑,只要掛接于該 總線上的任意一個器件將時鐘線scl鎖定在低電平上即可。 普中科技 單片機開發儀視頻教程 分析i2c總線的時序和幾種信號狀態 普中科技 單片機開發儀視頻教程 5.數據位傳送。 在i2c總線上傳

53、送的每一位數據都有一個時鐘脈沖相對應(或同 步控制),即在scl串行時鐘的配合下,在sda數據線上逐位地串行 傳送每一位數據。 進行數據傳送時,在scl呈現高電平期間,sda上的電平必須保 持穩定, 只有在scl為低電平期間,才允許sda上的電平改變狀態。 普中科技 單片機開發儀視頻教程 6.應答信號。 i2c總線上的所有數據都是以8位字節傳送的,發送器每發送一 個字節后,就在時鐘脈沖9期間釋放數據線,由接收器反饋一個應 答信號。 應答信號為低電平時,規定為有效應答位(ack簡稱應答位), 表示接收器已經成功地接收了該字節;應答信號為高電平時,規定 為非應答位(nack),一般表示接收器接收該

54、字節沒有成功。 對于反饋有效應答位ack的要求是,接收器在第9個時鐘脈沖之 前的低電平期間將sda線拉低,并且確保在該時鐘的高電平期間為 穩定的低電平。 如果接收器是主控器,則在它收到最后一個字節后,發送一個 nack信號,以通知被控發送器結束數據發送,并釋放sda線,以便 主控接收器發送一個停止信號p, 8.重啟動信號。 在主控器控制總線期間完成了一次數據通信(發送或接收)之后,如果想繼續占用總線再進行一次數 據通信(發送或接收),而又不釋放總線,就需要利用重啟動sr信號時序。 重啟動信號sr既作為前一次數據傳輸的結束,又作為后一次數據傳輸的開始。利用重啟動信號的優點 是,在前后兩次通信之間

55、主控器不需要釋放總線,這樣就不會丟失總線的控制權,即不讓其他主器件節 點搶占總線。 7.插入等待時間。 如果被控器需要延遲下一個數據字節開始傳送的時間,則可以通過把時鐘線scl電平拉低并且保持,使主 控器進入等待狀態。 一旦被控器釋放時鐘線,數據傳輸就得以繼續下去,這樣就使得被控器得到足夠時間轉移已經收到的數據 字節,或者準備好即將發送的數據字節。 帶有cpu的被控器在對收到的地址字節做出應答之后,需要一定的時間去執行中斷服務子程序,來分析或 比較地址碼,其間就把scl線鉗位在低電平上,直到處理妥當后才釋放scl線,進而使主控器繼續后續數據字節 的發送。 普中科技 單片機開發儀視頻教程 普中科

56、技 單片機開發儀視頻教程 一、特性 1.24co2是電可擦除prom,所有通常也叫它eeprom(electrically erasable programmable read-only memory ),采用256*8的組織結構。 2.具有兩線串行i2c接口。 3.電壓可允許低至1.8v,待機電流和工作電流分別為1a和1ma 4.24c02以8個字節為一頁,而24c04/08/16以16個字節為一頁,24c32/64以 32個字節為一頁。 5.自動遞增地址 6.讀取操作可以按字節,隨機和序列讀取數據。 7.擦寫壽命可達100萬次。 8.數據保存100年 9.內部寫周期最大5ms 二、應用范圍

57、 智能儀表 工業控制 家用電器 計算機筆記本電腦 汽車電子 通信設備 24c02的知識 普中科技 單片機開發儀視頻教程 a0、a1和a2是器件地址輸入引腳 24co2 使用這幾個硬件作為硬件地址,總線上可以同時并聯8個 器件。 sda 串行地址和數據輸入/輸出,sda是雙向串行數據傳輸引腳,漏極開路,許外接上拉 電阻到vcc scl 串行時鐘輸入,scl同步數據傳輸,上升沿數據寫入,下降沿數據讀取。 wp 寫保護。wp 引腳提供硬件數據保護,當wp接地時,允許數據正常讀寫操作。當wp接vcc時, 寫保護,只讀。 三、管腳定義及原理圖 普中科技 單片機開發儀視頻教程 當i2c的起始條件建立后,芯

58、片就能夠進行讀寫操作了。這時需要把芯片的器件地址傳給對 應的芯片。eeprom要求是一個8位的器件地址。對于串行的eeprom高四位的地址都是一樣的。 器件地址信息的lsb為讀/寫操作的選擇位,1為讀操作,0寫操作。 當單片機把地址信息發出去后,i2c總線所有器件將接收這個地址信息,這時24c02比較與 器件的地址是否一致,一致24co2將輸出應答0。如果不一致,則返回到待機狀態。待機狀態具 有低功耗待機的特點,條件為:(1)電源上電,(2)接收停止條件及完成任何內部操作。 四、24c02讀寫操作說明 普中科技 單片機開發儀視頻教程 寫操作 1.字節寫:當i2c的起始條件建立后,使芯片能夠進行

59、讀寫操作,給24c02發一個器件地址, 接收到ack應答為0后,再發8位存儲器的地址,接收到這個地址后,eeprom應答為0,再發8 位的數據,eeprom回答為0,接著由主控制器發終止條件來終止寫操作。 2.頁寫:24c02器件按 8字節/頁執行頁寫,也寫的初始化和字節寫相同,只是主器件不會 在第一個數據后發送停止條件,而是在eeprom的ack以后,接著發剩下的7個數據。 eeprom 收到每個數據后都應答0最后仍需要主器件發送停止條件,終止寫操作。接收到每個數據后, 字地址的低3位內部會自動加1,高位地址位不變,維持在當頁內。當內部產生的字地址達到 該頁的邊界地址時,隨后的數據將寫入該頁的頁首,先前的字節將會被覆蓋。 普中科技 單片機開發儀視頻教程 應答查詢流程 3.應答查詢:一旦內部寫周期啟動,eeprom輸入是無效的,此時可啟動應答查詢,發送 起始條件和器件地址(讀寫位為期望的操作)。只有內部寫周期完成,eeprom才應答0. 之后可以繼續讀寫操作。 普中科技 單片機開發儀視頻教程 讀操作 讀操作和寫操作初始化相同,只是器件地址中的讀/寫選擇位應為1.讀操作有三種方式: 當前地址讀

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論