片機(jī)課程設(shè)計(jì)課程設(shè)計(jì)
《片機(jī)課程設(shè)計(jì)課程設(shè)計(jì)》由會員分享,可在線閱讀,更多相關(guān)《片機(jī)課程設(shè)計(jì)課程設(shè)計(jì)(129頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、1 課程設(shè)計(jì)題目 2 目錄 -課程設(shè)計(jì)題目 題目 1 智能電子鐘( LCD顯示) 題目 2 電子時(shí)鐘( LCD顯示) 題目 3 秒表 題目 4 定時(shí)鬧鐘 題目 5 音樂倒數(shù)計(jì)數(shù)器 題目 6 基于數(shù)字溫度傳感器的數(shù)字溫度計(jì) 題目 7 基于熱敏電阻的數(shù)字溫度計(jì) 題目 8 十字路口交通燈控制 題目 9 波形發(fā)生器設(shè)計(jì) 題目 10 電容、電阻參數(shù)單片機(jī)測試系統(tǒng)的設(shè)計(jì) 3 題目 11 數(shù)字 頻率計(jì) 題目 12 8位競賽搶答器的設(shè)計(jì) 題目 13 單詞記憶測試器程序設(shè)計(jì) 題目 14 數(shù)字電壓表設(shè)計(jì) 題目 15 可編程作息時(shí)間控制器設(shè)計(jì) 題目 16 節(jié)日彩燈控制器的設(shè)計(jì) 題目 17 雙機(jī)之間的串行通信設(shè)計(jì) 題
2、目 18 電子琴設(shè)計(jì) 題目 19 數(shù)字音樂盒的設(shè)計(jì) 題目 20 單片機(jī)控制步進(jìn)電機(jī) 題目 21 單片機(jī)控制直流電動機(jī) 4 題目 1 智能電子鐘( LCD顯示) 1. 設(shè)計(jì)要求 以 AT89C51單片機(jī)為核心,制作一個(gè) LCD顯示的智能電子鐘: (1) 計(jì)時(shí):秒、分、時(shí)、天、周、月、年。 (2) 閏年自動判別。 (3) 五路定時(shí)輸出,可任意關(guān)斷(最大可到 16路)。 (4) 時(shí)間、月、日交替顯示。 (5) 自定任意時(shí)刻自動開 /關(guān)屏。 (6) 計(jì)時(shí)精度:誤差 1秒 /月(具有微調(diào)設(shè)置)。 5 (7) 鍵盤采用動態(tài)掃描方式查詢。所有的查詢、設(shè)置功能均 由功能鍵 K1、 K2完成。 2. 工作原理
3、本設(shè)計(jì)采用市場上流行的 時(shí)鐘芯片 DS1302進(jìn)行制作。 DS1302 是 DALLAS公司推出的涓流充電時(shí)鐘芯片,內(nèi)含一個(gè)實(shí)時(shí) 時(shí)鐘 /日歷和 31字節(jié)靜態(tài) RAM,可以通過串行接口與計(jì)算 機(jī)進(jìn)行通信,使得管腳數(shù)量減少。實(shí)時(shí)時(shí)鐘 /日歷電路能 夠計(jì)算 2100年之前 的秒、分、時(shí)、日、星期、月、年的 ,具有閏年調(diào)整的能力。 DS1302時(shí)鐘芯片的 主要功能特性 : 6 (1) 能計(jì)算 2100年之前的年、月、日、星期、時(shí)、分、秒的 信息;每月的天數(shù)和閏年的天數(shù)可自動調(diào)整;時(shí)鐘可設(shè)置 為 24或 12小時(shí)格式。 (2) 31B的 8位暫存數(shù)據(jù)存儲 RAM。 (3) 串行 I/O口方式使得引腳數(shù)
4、量最少。 (4) DS1302與單片機(jī)之間能簡單地采用同步串行的方式進(jìn)行 通信,僅需 3根線。 (5) 寬范圍工作電壓 2.0-5.5V。 (6) 工作電流為 2.0A時(shí),小于 300nA。 (7) 功耗很低,保持?jǐn)?shù)據(jù)和時(shí)鐘信息時(shí)功率小于 1mW。 7 3. 電路設(shè)計(jì)( Proteus軟件仿真通過) 8 4. Proteus仿真 打開元器件單片機(jī)屬性窗口,在 “ Program File”欄中添加上 面編譯好的目標(biāo)代碼文件 “ keil-1.hex”;在 “ Clock Frequency”欄中輸入晶振頻率為 11.0592MHz。 仿真如 下頁圖 所示,其中,浮動窗口中顯示的為 DS1302
5、當(dāng)前時(shí) 鐘狀態(tài) : 9 圖 智能電子鐘仿真效果 10 題目 2 電子時(shí)鐘( LCD顯示) 1. 設(shè)計(jì)要求 以 AT89C51單片機(jī)為核心的時(shí)鐘,在 LCD顯示器上顯示當(dāng)前的時(shí) 間: 使用字符型 LCD顯示器顯示當(dāng)前時(shí)間。 顯示格式為 “ 時(shí)時(shí):分分:秒秒 ” 。 用 4個(gè)功能鍵操作來設(shè)置當(dāng)前時(shí)間。 功能鍵 K1 K4功能如下 。 K1進(jìn)入設(shè)置現(xiàn)在的時(shí)間。 K2設(shè)置小時(shí)。 11 K3設(shè)置分鐘 。 K4確認(rèn)完成設(shè)置。 程序執(zhí)行后工作指示燈 LED閃動,表示程序開始執(zhí)行, LCD顯 示 “ 00: 00: 00”,然后開始計(jì)時(shí)。 2. 實(shí)驗(yàn)原理 題目難點(diǎn)在于鍵盤的指令輸入,由于每個(gè)按鍵都具有相應(yīng)的
6、一種或多種功能,程序中需要大量使用 dowhile或 while循環(huán)結(jié)構(gòu),以檢測是否有按鍵按下。按鍵檢測函數(shù) 的詳解如下(略) 12 3. 參考電路( Proteus軟件仿真通過) 13 4. Proteus仿真 加載目標(biāo)代碼文件 打開元器件單片機(jī)屬性窗口,在 “ Program File”欄中添加上面編譯好的目標(biāo)代碼文件 “ keil-2.hex”;在 “ Clock Frequency”欄中輸入晶振頻 率為 11.0592MHz。 啟動仿真,按下按鍵 1后,可發(fā)現(xiàn) LED停止閃爍,即時(shí)鐘停止 走時(shí),時(shí)鐘停在當(dāng)前時(shí)刻,按下按鍵 2和按鍵 3后,可改變 時(shí)間,按下按鍵 4后,時(shí)鐘復(fù)位到修改后的
7、時(shí)間,時(shí)鐘重 新開始運(yùn)轉(zhuǎn),如 下頁圖 所示。 14 15 題目 3 秒表 1. 設(shè)計(jì)要求 用 AT89C51設(shè)計(jì)一個(gè) 2位的 LED數(shù)碼顯示作為 “ 秒表 ” :顯示 時(shí)間為 0099秒,每秒自動加 1,另設(shè)計(jì)一個(gè) “ 開始 ” 鍵 和一個(gè) “ 復(fù)位 ” 鍵。 2. 實(shí)驗(yàn)原理 題目難點(diǎn)在于通過對鍵盤的掃描對時(shí)鐘的走時(shí) /停止進(jìn)行控 制,項(xiàng)目采用定時(shí)器 T0作為計(jì)時(shí)器,每 10ms發(fā)生一次中斷 ,每 100次中斷加 1s。在此期間,如 “ 開始 ” 按鍵按下, 程序方將 TR0置為 1,從而開啟中斷,時(shí)鐘開始走時(shí);如 “ 16 復(fù)位 ” 按鍵按下,程序?qū)?TR0置為 0,同時(shí)將存儲時(shí)間的變 量清
8、零,從而中斷停止,并實(shí)現(xiàn)復(fù)位。 本題目采用專用 數(shù)碼管顯示控制芯片 MAX7219。 MAX7219是 美國 MAXIM公司生產(chǎn)的串行輸入 /輸出共陰極顯示驅(qū)動器, 該芯片最多可驅(qū)動 8位 7段數(shù)字 LED顯示器或個(gè) LED和條形 圖顯示器。其引腳圖及引腳功能參見有關(guān)參考資料。 17 MAX7219的典型應(yīng)用參考電路 18 3. 電路設(shè)計(jì)( Proteus軟件仿真通過) 19 4. Proteus仿真 加載目標(biāo)代碼文件 打開元器件單片機(jī)屬性窗口,在 “ Program File”欄中添加上面編譯好的目標(biāo)代碼文件 “ keil-2.hex”;在 “ Clock Frequency”欄中輸入晶振頻
9、率 為 11.0592MHz。 啟動仿真,按下按鍵 1后,可發(fā)現(xiàn) led停止閃爍,即時(shí)鐘停止 走時(shí),時(shí)鐘停在當(dāng)前時(shí)刻,按下按鍵 2和按鍵 3后,可改變 時(shí)間,按下按鍵 4后,時(shí)鐘復(fù)位到修改后的時(shí)間,時(shí)鐘重新 開始運(yùn)轉(zhuǎn),如 下頁圖 所示。 20 21 題目 4 定時(shí)鬧鐘 1. 設(shè)計(jì)要求 使用 AT89C51單片機(jī)結(jié)合字符型 LCD顯示器設(shè)計(jì)一個(gè)簡易的定 時(shí)鬧鐘 LCD時(shí)鐘,若 LCD選擇有背光顯示的模塊,在夜晚 或黑暗的場合中也可使用。 定時(shí)鬧鐘的基本功能如下: 顯示格式為 “ 時(shí)時(shí):分分 ” 。 由 LED閃動來做秒計(jì)數(shù)表示。 一旦時(shí)間到則發(fā)出聲響,同時(shí)繼電器啟動,可以擴(kuò)充控 制家電開啟和關(guān)閉
10、。 22 程序執(zhí)行后工作指示燈 LED閃動,表示程序開始執(zhí)行, LCD 顯示 “ 00: 00”,按下 操作鍵 K1 K4動作如下: (1) K1設(shè)置現(xiàn)在的時(shí)間 。 (2) K2顯示鬧鐘設(shè)置的時(shí)間 。 (3) K3設(shè)置鬧鈴的時(shí)間 。 (4) K4鬧鈴 ON/OFF的狀態(tài)設(shè)置,設(shè)置為 ON時(shí)連續(xù)三次發(fā) 出 “ 嘩 ” 的一聲,設(shè)置為 OFF發(fā)出 “ 嘩 ” 的一聲。 設(shè)置當(dāng)前時(shí)間或鬧鈴時(shí)間如下。 (1) K1時(shí)調(diào)整 。 (2) K2分調(diào)整 。 23 (3) K3設(shè)置完成。 (4) K4鬧鈴時(shí)間到時(shí),發(fā)出一陣聲響,按下本鍵可以停止 聲響。 本項(xiàng)目的難點(diǎn)在于 4個(gè)按鍵每個(gè)都具有兩個(gè)功能,以最終實(shí)現(xiàn)
11、菜單化的輸入功能。采用通過逐層嵌套的循環(huán)掃描,實(shí)現(xiàn) 嵌套式的鍵盤輸入。以對小時(shí)的設(shè)置的流程為例,其 流程 如 下頁圖 。 24 25 2. 參考電路( Proteus軟件仿真通過) 26 3. Proteus仿真 加載目標(biāo)代碼文件 打開元器件單片機(jī)屬性窗口,在 “ Program File”欄中添加上面編譯好的目標(biāo)代碼文件 “ keil-3.hex”;在 “ Clock Frequency”欄中輸入晶振頻 率為 12MHz。 啟動仿真, 下頁圖 示為按下 “ 開始 ” 按鍵后的情況,在按下 前,數(shù)碼管無顯示。期間如果按下 “ 復(fù)位 ” 按鍵,則 LED 顯示歸零,走時(shí)停止。 27 28 題目
12、5 音樂倒數(shù)計(jì)數(shù)器 1. 設(shè)計(jì)要求 利用 AT89C51單片機(jī)結(jié)合字符型 LCD顯示器設(shè)計(jì)一個(gè)簡易的倒數(shù) 計(jì)數(shù)器,可用來煮方便面、煮開水或小睡片刻等。做一小 段時(shí)間倒計(jì)數(shù),當(dāng)?shù)褂?jì)數(shù)為 0時(shí),則發(fā)出一段音樂聲響,通 知倒計(jì)數(shù)終了,該做應(yīng)當(dāng)做的事。 定時(shí)鬧鐘的基本功能如下。 字符型 LCD( 16 2)顯示器。 顯示格式為 “ TIME 分分 :秒秒 ” 。 29 用 4個(gè)按鍵操作來設(shè)置當(dāng)前想要倒計(jì)數(shù)的時(shí)間。一旦按下鍵 則開始倒計(jì)數(shù),當(dāng)計(jì)數(shù)為 0時(shí),發(fā)出一陣音樂聲。 程序執(zhí)行后工作指示燈 LED閃動,表示程序開始執(zhí)行,按下 操 作鍵 K1 K4動作如下。 K1可調(diào)整倒計(jì)數(shù)的時(shí)間 1 60分鐘。 K
13、2設(shè)置倒計(jì)數(shù)的時(shí)間為 5分鐘,顯示 “ 0500”。 K3設(shè)置倒計(jì)數(shù)的時(shí)間為 10分鐘,顯示 “ 1000”。 K4設(shè)置倒計(jì)數(shù)的時(shí)間為 20分鐘,顯示 “ 2000”。 復(fù)位后 LCD的畫面應(yīng)能顯示倒計(jì)時(shí)的分鐘和秒數(shù),此時(shí)按 K1鍵 , 30 則在 LCD上顯示出設(shè)置畫面。此時(shí),若: a. 按操作鍵 K2 增加倒計(jì)數(shù)的時(shí)間 1分鐘。 b. 按操作鍵 K3 減少倒計(jì)數(shù)的時(shí)間 1分鐘。 c. 按操作鍵 K4 設(shè)置完成。 鍵盤實(shí)現(xiàn)菜單功能的方法,已在題目 4詳細(xì)說明,不再贅 述。 本題目最大難點(diǎn)是實(shí)現(xiàn)音樂的播放 。作者利用定時(shí)計(jì)數(shù) 器,通過載入不同的計(jì)數(shù)初值,產(chǎn)生頻率不同的方波,輸入 到蜂鳴器( S
14、OUNER)中,使其發(fā)出頻率不同的聲音。本設(shè)計(jì) 中單片機(jī)晶振為 1.0592MHz,通過計(jì)算各音階頻率,可得 1、 2、 3、 4、 5、 6、 7共 7個(gè)音應(yīng)賦給定時(shí)器的初值為 64580、 64684、 64777、 64820、 64898、 64968、 65030。 31 在此基礎(chǔ)上,可將樂曲的簡譜轉(zhuǎn)化為單片機(jī)可以 “ 識別 ” 的 “ 數(shù)組譜 ” ,進(jìn)一步加入對音長、休止符等的控制量后, 可以實(shí)現(xiàn)音樂的播放。 3.電路設(shè)計(jì)( Proteus仿真通過) 本題目制作的帶有 LCD顯示的音樂倒數(shù)計(jì)數(shù)器電路原理圖,如 下頁圖 所示。 32 33 4. Proteus仿真 加載目標(biāo)代碼文件
15、打開元器件單片機(jī)屬性窗口,在 “ Program File”欄中添加上面編譯好的目標(biāo)代碼文件 “ keil-5.hex”;在 “ Clock Frequency”欄中輸入晶振頻率 為 11.0592MHz。 啟動仿真如 下頁圖 所示,當(dāng)鬧鐘到達(dá)時(shí),可以聽見蜂鳴器演 奏的樂曲。再次提示,本題目必須選用蜂鳴器 SOUNDER,否 則不能發(fā)出聲音。 34 35 題目 6 基于數(shù)字溫度傳感器的數(shù)字溫度計(jì) 1. 設(shè)計(jì)要求 利用 數(shù)字溫度傳感器 DS18B20與單片機(jī)結(jié)合來測量溫度。利 用數(shù)字溫度傳感器 DS18B20測量溫度信號,計(jì)算后在 LED數(shù) 碼管上顯示相應(yīng)的溫度值。其溫度測量范圍為 55 125
16、 ,精確到 0.5 。數(shù)字溫度計(jì)所測量的溫度采用數(shù)字 顯示,控制器使用單片機(jī) AT89C51,測溫傳感器使用 DS18B20,用 3位共陽極 LED數(shù)碼管以串口傳送數(shù)據(jù),實(shí)現(xiàn) 溫度顯示。 36 2. 實(shí)驗(yàn)原理 從溫度傳感器 DS18B20可以很容易直接讀取被測溫度值,進(jìn) 行轉(zhuǎn)換即滿足設(shè)計(jì)要求。 DS18B20溫度傳感器 是美國 DALLAS半導(dǎo)體公司最新推出的一 種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件 相比,它能直接讀出被測溫度,并且可根據(jù)實(shí)際要求通過 簡單的編程實(shí)現(xiàn) 9 12位的數(shù)字讀數(shù)方式。 DS18B20的性能如下。 獨(dú)特的單線接口僅需要一個(gè)端口引腳進(jìn)行通信。 多個(gè) DS18
17、B20可以并聯(lián)在串行傳輸?shù)臄?shù)據(jù)線上,實(shí)現(xiàn)多點(diǎn) 組網(wǎng)功能。無須外部器件。 37 可通過數(shù)據(jù)線供電,電壓范圍為 3.0 5.5V。 零待機(jī)功耗。 溫度以 9或 12位的數(shù)字讀數(shù)方式。 用戶可定義報(bào)警設(shè)置。 報(bào)警搜索命令識別并標(biāo)志超過程序限定溫度(溫度報(bào)警條件 )的器件。 負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會因發(fā)熱而燒毀, 但不能正常工作。 采用 3引腳 PR-35封裝或 8引腳 SOIC封裝。 38 3.電路設(shè)計(jì)( Proteus仿真通過) 本項(xiàng)目制作的數(shù)字溫度計(jì)電路原理圖,如下所示: 39 4. Proteus仿真 加載目標(biāo)代碼文件 打開元器件單片機(jī)屬性窗口,在 “ Program File”
18、欄中添加上面編譯好的目標(biāo)代碼文件 “ keil-6.hex”;在 “ Clock Frequency”欄中輸入晶振頻率為 11.0592MHz。 啟動仿真如 下頁圖 所示,其中, DS18B20窗口顯示的為 當(dāng)前環(huán)境溫度,若調(diào)整 DS18B20旁邊的箭頭,可改變環(huán)境溫度 ,可以看到 LED顯示屏上的溫度值發(fā)生相應(yīng)的變化。 40 41 題目 7 基于熱敏電阻的數(shù)字溫度計(jì) 1. 設(shè)計(jì)要求 使用熱敏電阻類的溫度傳感器件利用其感溫效應(yīng),將隨被測溫 度變化的電壓或電流用單片機(jī)采集下來,將被測溫度在顯示 器上顯示出來: 測量溫度范圍 50 110 。 精度誤差小于 0.5 。 LED數(shù)碼直讀顯示。 42
19、2 . 實(shí)驗(yàn)原理 本題目使用 鉑熱電阻 PT100,其阻值會隨著溫度的變化而改變 。 PT后的 100即表示它在 0 時(shí)阻值為 100歐姆,在 100 時(shí)它 的阻值約為 138.5歐姆。廠家提供有 PT100在各溫度下電阻值 值的分度表,在此可以近似取電阻變化率為 0.385/ 。 向 PT100輸入穩(wěn)恒電流,再通過 A/D轉(zhuǎn)換后測 PT100兩端電壓 ,即得到 PT100的電阻值,進(jìn)而算出當(dāng)前的溫度值。 采用 2.55mA的電流源對 PT100進(jìn)行供電,然后用運(yùn)算放大器 LM324搭建的同相放大電路將其電壓信號放大 10倍后輸入到 AD0804中。利用電阻變化率 0.385/ 的特性,計(jì)算出
20、當(dāng)前 溫度值。 43 3.電路設(shè)計(jì)( Proteus仿真通過) 44 4. Proteus仿真 首先加載目標(biāo)代碼文件 打開元器件單片機(jī)屬性窗口,在 “ Program File”欄中添加上面編譯好的目標(biāo)代碼文件 “ keil-7.hex”;在 “ Clock Frequency”欄中輸入晶振頻 率為 12MHz。 啟動仿真如 圖 所示,其中, PT100旁邊的數(shù)字窗口顯示的為 測定的環(huán)境溫度,通過調(diào)整上下溫度,可以實(shí)現(xiàn)對環(huán)境溫 度的改變。值得注意的是,由于本項(xiàng)目使用的核心測溫器 件 PT100對溫度存在一定的響應(yīng)時(shí)間,故啟動程序后一段 時(shí)間測定的溫度才能穩(wěn)定下來。 45 本題目 測溫誤差 主要
21、由以下幾點(diǎn)引發(fā): ADC0804為 8位 ADC芯片,精度有限;程序假定 PT100為完全線性 的器件,而即使是廠家推薦的線性值也會存在一定誤差;運(yùn) 放電路并非絕對線性。如使用 12位 ADC芯片,采用 “ 四線制 ” 的 PT100接法,采用查表法測定溫度值,將極大提高溫度 的測量精度。 46 47 題目 8 十字路口交通燈控制 1. 設(shè)計(jì)要求 設(shè)計(jì)一個(gè)十字路口交通燈控制器。用單片機(jī)控制 LED燈模 擬指示。模擬東西方向的十字路口交通信號控制情況。東西 向通行時(shí)間為 80s,南北向通行時(shí)間為 60s,緩沖時(shí)間為 3s。 2. 實(shí)驗(yàn)原理 本項(xiàng)目為典型的 LED顯示和中斷定時(shí)電路。利用定時(shí)器 T
22、0 產(chǎn)生每 10ms一次的中斷,每 100次中斷為 1s。對兩個(gè)方向分 別顯示紅、綠、黃燈,已經(jīng)相應(yīng)的剩余時(shí)間即可。值得注意 的 48 是,需要意識到, A方向紅燈時(shí)間 =B方向綠燈時(shí)間 +黃燈緩沖 時(shí)間這一常識。 本項(xiàng)目使用的 MAX7219芯片使用方法請參考題目 3。 3.電路設(shè)計(jì)( Proteus仿真通過) 本項(xiàng)目制作的十字路口交通燈控制電路原理圖,如 下頁圖 : 49 50 4.Proteus仿真 51 題目 9 波形發(fā)生器設(shè)計(jì) 1. 設(shè)計(jì)要求 設(shè)計(jì)一個(gè)能產(chǎn)生正弦波、方波、三角波、梯形波、鋸齒 波的波形發(fā)生器。 2. 實(shí)驗(yàn)原理 產(chǎn)生指定波形可以通過 DAC來實(shí)現(xiàn),不同波形產(chǎn)生實(shí)質(zhì) 上是
23、對輸出的二進(jìn)制數(shù)字量進(jìn)行相應(yīng)改變來實(shí)現(xiàn)的。本題目 中, 方波信號 是利用定時(shí)器中斷產(chǎn)生的,每次中斷時(shí),將輸 出的信號按位反即可; 三角波信號 是將輸出的二進(jìn)制數(shù)字信 號依次加 1,達(dá)到 0 xff時(shí)依次減 1,并實(shí)時(shí)將數(shù)字信號經(jīng) D/A 轉(zhuǎn)換得到; 鋸齒波 信號是將輸出的二進(jìn)制數(shù)字信號依次 52 加 1,達(dá)到 0 xff時(shí)置為 0 x00,并實(shí)時(shí)將數(shù)字信號經(jīng) D/A轉(zhuǎn)換得 到的; 梯形波 是將輸出的二進(jìn)制數(shù)字信號依次加 1,達(dá)到 0 xff時(shí) 保持一段時(shí)間,然后依次減 1直至 0 x00,并實(shí)時(shí)將數(shù)字信號經(jīng) D/A轉(zhuǎn)換得到的; 正弦波 是利用 MATLAB將正弦曲線均勻取樣后,得到等間隔 時(shí)刻
24、的 y方向上的二進(jìn)制數(shù)值,然后依次輸出后經(jīng) D/A轉(zhuǎn)換得 到。 3.電路設(shè)計(jì)( Proteus仿真通過) 本波形發(fā)生器的設(shè)計(jì)電路原理圖,如 下頁圖 所示: 53 54 )R2C ( R 1.44f BA 題目 10 電容、電阻參數(shù)單片機(jī)測試系統(tǒng)的設(shè)計(jì) 1. 設(shè)計(jì)要求 設(shè)計(jì)一個(gè)能測量電容、電阻參數(shù)的測試系統(tǒng)。 2 實(shí)驗(yàn)原理 對電阻的測量,可將待測電阻與一標(biāo)準(zhǔn)電阻串聯(lián)后接在 +5V的電源上,根據(jù)串聯(lián)分壓原理,利用 ADC測定電阻兩端電 壓后,即可得到其阻值。對電容的測量,可將其與已知阻值 的電阻 RA和 RB組成基于 NE555的多諧振蕩器如 下頁圖 。其產(chǎn) 生的方波信號頻率為 : 、 55 56
25、 故通過測定方波信號的頻率可以比較精確的測定 C的值 。 測定方 波信號頻率的方法 , 請見 題目 11。 3. 電路設(shè)計(jì)( Proteus仿真通過) 本題目的電容、電阻參數(shù)單片機(jī)測試系統(tǒng)的設(shè)計(jì) 電路原理圖 ,見 下頁。 57 58 4. Proteus仿真 測量電阻仿真如下圖所示,但由于 Proteus中 555芯片模 型存在問題,無法實(shí)現(xiàn)對電容測量的仿真,且仿真時(shí)必須刪 去 555的電路模塊。 59 題目 11 數(shù)字 頻率計(jì) 1. 設(shè)計(jì)要求 設(shè)計(jì)一個(gè)以單片機(jī)為核心的頻率測量裝置。使用 AT89C51單 片機(jī)的定時(shí)器 /計(jì)數(shù)器的定時(shí)和計(jì)數(shù)功能,外部擴(kuò)展 6 位 LED數(shù)碼管,要求累計(jì)每秒進(jìn)入
26、單片機(jī)的外部脈沖個(gè) 數(shù),用 LED數(shù)碼管顯示出來。 (1)被測頻率 fx 110Hz,采用測周法,顯示頻率 . ; fx 110Hz,采用測頻法,顯示頻率 。 (2)利用鍵盤分段測量和自動分段測量。 60 (3)完成單脈沖測量,輸入脈沖寬度范圍是 100s 0.1s。 (4)顯示脈沖寬度要求如下。 Tx 1000s,顯示脈沖寬度 。 Tx 1000s,顯示脈沖寬度 。 2. 實(shí)驗(yàn)原理 測量頻率有測頻法和測周法兩種。 (1)測頻法 ,利用外部電平變化引發(fā)的外部中斷,測算 1s內(nèi) 的波數(shù),從而實(shí)現(xiàn)對頻率的測定; (2)測周法 ,通過測算某兩次電平變化引發(fā)的中斷之間的時(shí) 間,實(shí)現(xiàn)對頻率的測定。簡而言
27、之,測頻法是直接根據(jù)定義測 定頻率,測周法是通過測定周期間接測定頻率。 61 理論上,測頻法適用于較高頻率的測量,測周法適用于較 低頻 率的測量。 經(jīng)過調(diào)校,在測量低頻信號時(shí),本項(xiàng)目中測頻法精度已高 于測 周法,故舍棄測周法,全量程采用測頻法。 3. 電路設(shè)計(jì)( Proteus仿真通過) 以單片機(jī)為核心的頻率計(jì)電路原理圖,如 下頁圖 所示: 62 63 4. Proteus仿真 加載目標(biāo)代碼文件 打開元器件單片機(jī)屬性窗口,在 “ Program File”欄中添加上面編譯好的目標(biāo)代碼文件 “ keil-16.hex”;在 “ Clock Frequency”欄中輸入晶振頻率 為 12MHz。
28、啟動仿真如 后兩頁 圖( a)和 圖( b)所示 : 64 圖( a) 仿真 1 65 圖( b) 仿真 2 66 題目 12 8位競賽搶答器的設(shè)計(jì) 1.設(shè)計(jì)要求 以單片機(jī)為核心,設(shè)計(jì)一個(gè) 8位競賽搶答器:同時(shí)供 8名選手 或 8個(gè)代表隊(duì)比賽,分別用 8個(gè)按鈕 S0 S7表示。 設(shè)置一個(gè)系統(tǒng)清除和搶答控制開關(guān) S,開關(guān)由主持人控制。 搶答器具有鎖存與顯示功能。即選手按按鈕,鎖存相應(yīng)的編號 ,并在優(yōu)先搶答選手的編號一直保持到主持人將系統(tǒng)清除為止。 搶答器具有定時(shí)搶答功能,且一次搶答的時(shí)間由主持人設(shè)定 (如 30秒)。 67 當(dāng)主持人啟動 “ 開始 ” 鍵后,定時(shí)器進(jìn)行減計(jì)時(shí),同時(shí) 揚(yáng)聲器發(fā)出短暫
29、的聲響,聲響持續(xù)的時(shí)間為 0.5s左右。 參賽選手在設(shè)定的時(shí)間內(nèi)進(jìn)行搶答,搶答有效,定時(shí)器 停止工作,顯示器上顯示選手的編號和搶答的時(shí)間,并保持 到主持人將系統(tǒng)清除為止。 如果定時(shí)時(shí)間已到,無人搶答,本次搶答無效,系統(tǒng)報(bào) 警并禁止搶答,定時(shí)顯示器上顯示 00。 2. 實(shí)驗(yàn)原理 通過鍵盤改變搶答的時(shí)間,原理與鬧鐘時(shí)間的設(shè)定相同 ,將定時(shí)時(shí)間的變量置為全局變量后,通過鍵盤掃描程序使 每按下一次按鍵,時(shí)間加 1(超過 30時(shí)置 0)。同時(shí)單片機(jī) 68 不斷進(jìn)行按鍵掃描,當(dāng)參賽選手的按鍵按下時(shí),用于產(chǎn)生時(shí) 鐘信號的定時(shí)計(jì)數(shù)器停止計(jì)數(shù),同時(shí)將選手編號(按鍵號 )和搶答時(shí)間分別顯示在 LED上。 3. 電
30、路設(shè)計(jì)( Proteus仿真通過) 8位競賽搶答器的設(shè)計(jì)電路原理圖,如 下頁圖 所示: 69 70 4. Proteus仿真 加載目標(biāo)代碼文件 打開元器件單片機(jī)屬性窗口,在 “ Program File”欄中添加上面編譯好的目標(biāo)代碼文件 “ keil-19.hex”;在 “ Clock Frequency”欄中輸入晶振頻率 為 12MHz。仿真:單擊按鈕,啟動仿真,結(jié)果如 下頁圖 所示 : 71 72 題目 13 單詞記憶測試器程序設(shè)計(jì) 1. 設(shè)計(jì)要求 設(shè)計(jì)一個(gè)以單片機(jī)為核心的單詞記憶測試器: 實(shí)現(xiàn)單詞的錄入(為使程序具有可演示性,單詞不少于 10個(gè))。 單詞用按鍵控制依次在屏幕上顯示,按鍵選
31、擇認(rèn)識還是 不認(rèn)識,也可以直接進(jìn)入下一個(gè)或者上一個(gè)。 單詞背完后給出正確率。 2. 實(shí)驗(yàn)原理 本題目實(shí)質(zhì)上是一個(gè)具有一定復(fù)雜程度鍵盤掃描程序,可 73 將單詞存儲在一個(gè)二維數(shù)組中,按 “ 確定 ” 鍵開始程序后,次 顯示 0行的數(shù)組,即第一個(gè)單詞。之后按下 “ 向上 ” 按鍵,顯 示上一行數(shù)組,即上一個(gè)單詞; 按下 “ 向下 ” 按鍵,顯示下一行數(shù)組,即下一個(gè)單詞。當(dāng) 顯示的行數(shù)超過 9時(shí),程序結(jié)束,并通過按 “ 確認(rèn) ” 的次數(shù), 計(jì)算出正確率。 3.電路設(shè)計(jì)( Proteus仿真通過) 本項(xiàng)目制作的單詞記憶測試器程序設(shè)計(jì)電路如 下頁圖 所示 。 74 75 4. Proteus仿真 加載目
32、標(biāo)代碼文件 打開元器件單片機(jī)屬性窗口,在 “ Program File”欄中添加上面編譯好的目標(biāo)代碼文件 “ keil- 18.hex”;在 “ Clock Frequency”欄中輸入晶振頻率為 11.0592MHz。 啟動仿真如 下頁圖 (a)-(c)所示 : 76 圖( a) 單詞記憶測試器程序設(shè)計(jì)啟動界面仿真效果圖 圖( b) 單詞記憶測試器程序設(shè)計(jì)測試界面仿真效果圖 圖( c) 單詞記憶測試器程序設(shè)計(jì)正確率顯示界面仿真效果 77 題目 14 數(shù)字電壓表設(shè)計(jì) 1. 設(shè)計(jì)要求 以單片機(jī)為核心,設(shè)計(jì)一個(gè)數(shù)字電壓表。采用中斷方式,對 2路 0 5V的模擬電壓進(jìn)行循環(huán)采集,采集的數(shù)據(jù)送 LED
33、顯示,并 存入內(nèi)存。超過界限時(shí)指示燈閃爍。 2. 實(shí)驗(yàn)原理 本題目本質(zhì)上是以單片機(jī)為控制器, ADC0809為 ADC器件的 AD 轉(zhuǎn)換電路,設(shè)計(jì)要求的電壓顯示,是對 ADC采集所得信號的進(jìn)一 步處理。 為得到可讀的電壓值,需根據(jù) ADC的原理,對采集所得的 78 信號進(jìn)行計(jì)算,并顯示在 LED上。本項(xiàng)目中 ADC0809的參考電壓為 +5V,根據(jù)定義,采集所得的二進(jìn)制信號 addata所指代的電壓值 為 : 而若將其顯示到小數(shù)點(diǎn)后兩位,不考慮小數(shù)點(diǎn)的存在(將其乘以 100),其計(jì)算的數(shù)值為: 。將小數(shù)點(diǎn)顯示在第二位數(shù)碼管上,即為實(shí)際的電壓。 V 5256a dda ta V 1.96a dd
34、 a t aV 5256 100a dd a t a 79 本示例程序?qū)?1.25 V和 2.5 V作為兩路輸入的報(bào)警值,反映在 二進(jìn)制數(shù)字上,分別為 0 x40和 0 x80。當(dāng) AD結(jié)果超過這一數(shù) 值時(shí),將會出現(xiàn)二極管閃爍和蜂鳴器發(fā)聲。 3. 電路設(shè)計(jì)( Proteus仿真通過) 本單片機(jī)數(shù)字電壓表電路原理圖,如 下頁圖 所示: 80 81 4. Proteus仿真 加載目標(biāo)代碼文件 打開元器件單片機(jī)屬性窗口,在 “ Program File”欄中添加上面編譯好的目標(biāo)代碼文件 “xxxxx.hex;在 “ Clock Frequency”欄中輸入晶振頻率為 12MHz。 ADC0809的時(shí)
35、鐘信號設(shè)置為 640kHz。 啟動仿真,如 下頁圖 所示,當(dāng)調(diào)節(jié)滑動變阻器時(shí),可觀察 到顯示的電壓發(fā)生變化,且兩路輸入電壓的測算值交替顯示 . 。當(dāng)任一路電壓輸入超過預(yù)設(shè)值時(shí), LED顯示器閃爍,蜂鳴器 發(fā)聲。由于 8位 AD芯片精度有限,其誤差大約在幾十 mV左右。 82 83 題目 15 可編程作息時(shí)間控制器設(shè)計(jì) 1. 設(shè)計(jì)要求 設(shè)計(jì)一個(gè)以單片機(jī)為核心的可編程作息時(shí)間控制器: 按照給定的時(shí)間模擬控制,實(shí)現(xiàn)廣播、上下課打鈴、燈光控 制(屏幕顯示) ,同時(shí)具備日期和時(shí)鐘顯示。 2. 實(shí)驗(yàn)原理 本題目原理與題目 4相同,程序是在題目 4的基礎(chǔ)上將定 時(shí)鬧鐘改造為 4路可調(diào)鬧鐘,從而實(shí)現(xiàn)打鈴等功能
36、。當(dāng)四路 鬧鐘中的任一路到時(shí),均會點(diǎn)亮燈、打鈴。如有需求,可對 84 程序進(jìn)行調(diào)整,增加鬧鐘的路數(shù),及到時(shí)后的處理方式。 題目中 4個(gè)按鍵的功能分別為:設(shè)置限制的時(shí)間 /時(shí)的調(diào) 整、顯示鬧鐘設(shè)置的時(shí)間 /分的調(diào)整、設(shè)置鬧鐘的時(shí)間 /設(shè)置 完成、鬧鐘更換。 3. 電路設(shè)計(jì)( Proteus仿真通過) 本可編程作息時(shí)間控制器程序設(shè)計(jì)電路原理圖,如 下頁 圖 所示: 85 86 4. Proteus仿真 加載目標(biāo)代碼文件 打開元器件單片機(jī)屬性窗口,在 “ Program File”欄中添加上面編譯好的目標(biāo)代碼文件 “ keil-17.hex”;在 “ Clock Frequency”欄中輸入晶振頻率
37、 為 11.0592MHz。 啟動仿真如 下頁圖 所示,當(dāng)四路鬧鐘中的任一路到時(shí), 均會點(diǎn)亮燈、打鈴。 87 88 題目 16 節(jié)日彩燈控制器的設(shè)計(jì) 1. 設(shè)計(jì)要求 以單片機(jī)為核心,設(shè)計(jì)一個(gè)節(jié)日彩燈控制器: P1.2開始,按此鍵則燈開始流動(由上而下)。 P1.3停止,按此鍵則停止流動,所有燈為暗。 P1.4上,按此鍵則燈由上向下流動。 P1.5下,按此鍵則燈由下向上流動。 2. 實(shí)驗(yàn)原理 本題目本質(zhì)上是由按鍵控制功能的流水燈, LED工作的方 式通過鍵盤的掃描實(shí)現(xiàn)。其中的 LED采取共陽極接法,通過 89 依次向連接 LED的 /口送出低電平,可實(shí)現(xiàn)題目要求的功 能。 3. 電路設(shè)計(jì)( Pr
38、oteus仿真通過) 本節(jié)日彩燈控制器電路原理圖,如 下頁圖 所示,各按鍵 功能與實(shí)驗(yàn)設(shè)計(jì)要求相同: 90 91 4. Proteus仿真 加載目標(biāo)代碼文件 打開元器件單片機(jī)屬性窗口,在 “ Program File”欄中添加上面編譯好的目標(biāo)代碼文件 “ keil- 1.hex”;在 “ Clock Frequency”欄中輸入晶振頻率為 12MHz。 啟動仿真如 下頁圖 所示 : 92 93 題目 17 雙機(jī)之間的串行通信設(shè)計(jì) 1. 設(shè)計(jì)要求 兩片單片機(jī)利用串行口進(jìn)行串行通信:串行通信的波特率 可從鍵盤進(jìn)行設(shè)定,可選的波特率為 1200、 2400、 4800和 9600bit/s。串行口工
39、作方式為方式 1的全雙工串行通信。 2. 實(shí)驗(yàn)原理 兩個(gè)單片機(jī)之間進(jìn)行通訊波特率的設(shè)定,最終歸結(jié)到對定 時(shí)計(jì)數(shù)器 T1計(jì)數(shù)初值 TH1、 TL1進(jìn)行設(shè)定。故本題目本質(zhì)上是 通過鍵盤掃描得到設(shè)定的波特率,從而載入相應(yīng)的 T1計(jì)數(shù)初 值 TH1、 TL1實(shí)現(xiàn)的。示例程序中將 0 xaa從主機(jī)傳輸?shù)綇臋C(jī) , 94 并顯示在從機(jī)的數(shù)碼管上實(shí)現(xiàn)串口通訊的驗(yàn)證。 如串口通訊線路過長,可考慮采用 MAX232進(jìn)行電平轉(zhuǎn)換,以 延長傳輸距離。值得注意的是,為了減少計(jì)算載入初值時(shí)的誤差 ,本項(xiàng)目最好采取 11.0592MHz的晶振。 3. 電路設(shè)計(jì)( Proteus仿真通過) 兩個(gè)單片機(jī)之間的串行通信接口設(shè)計(jì)電
40、路原理圖,如 下頁圖 所示: 95 96 4. Proteus仿真 加載目標(biāo)代碼文件 打開元器件單片機(jī)屬性窗口,在 “ Program File”欄中添加上面編譯好的目標(biāo)代碼文件 “ master.hex”或 slave.hex;在 “ Clock Frequency”欄中 輸入晶振頻率為 11.0592MHz。 啟動仿真如 下頁圖 所示,當(dāng)二極管間隔點(diǎn)亮?xí)r,表明通訊 成功 : 97 98 題目 18 電子琴設(shè)計(jì) 1. 設(shè)計(jì)要求 設(shè)計(jì)一個(gè)電子琴。利用所給鍵盤的 1, 2, 3, 4, 5, 6, 7 , 8八個(gè)鍵,能夠發(fā)出 8個(gè)不同的音調(diào),并且要求按下按鍵發(fā) 聲,松開延時(shí)一段時(shí)間停止,中間再按
41、別的鍵則發(fā)另一音調(diào) 的聲音。 2. 實(shí)驗(yàn)原理 當(dāng)系統(tǒng)掃描到鍵盤上有鍵被按下,則快速檢測出是哪一 個(gè)鍵被按下,然后單片機(jī)的定時(shí)器被啟動,發(fā)出一定頻率的 脈沖,該頻率的脈沖輸入到蜂鳴器后,就會發(fā)出相應(yīng)的音調(diào) 。 99 如果在前一個(gè)按下的鍵發(fā)聲的同時(shí)有另一個(gè)鍵被按下, 則啟用中斷系統(tǒng),前面鍵的發(fā)音停止,轉(zhuǎn)到后按的鍵的發(fā)音 程序,發(fā)出后按的鍵的音調(diào)。關(guān)于發(fā)聲原理,參見題目 5。 3. 電路設(shè)計(jì)( Proteus仿真通過) 本電子琴設(shè)計(jì)電路原理圖,如 下頁圖 所示: 100 101 4. Proteus仿真 加載目標(biāo)代碼文件 打開元器件單片機(jī)屬性窗口,在 “ Program File”欄中添加上面編譯好
42、的目標(biāo)代碼文件 “ keil-23.hex”;在 “ Clock Frequency”欄中輸入晶振頻率 為 11.0592MHz。 啟動仿真如 下頁圖 所示,依次按下各按鍵可聽見不同的 音階 : 102 103 題目 19 數(shù)字音樂盒的設(shè)計(jì) 1. 設(shè)計(jì)要求 以單片機(jī)為核心,設(shè)計(jì)一個(gè)數(shù)字音樂盒: 利用 I/O口產(chǎn)生一定頻率的方波,驅(qū)動蜂鳴器,發(fā)出不同 的音調(diào),從而演奏樂曲(最少 3首樂曲,每首不少于 30s)。 采用 LCD顯示信息。 a. 開機(jī)時(shí)有英文歡迎提示字符,播放時(shí)顯示歌曲序號 (或名稱)。 b. 可通過功能鍵選擇樂曲、暫停、播放。 104 2. 電路設(shè)計(jì)( Proteus仿真通過) 本
43、數(shù)字音樂盒的電路設(shè)計(jì)原理圖,如下圖所示。 105 3. Proteus仿真 加載目標(biāo)代碼文件 打開元器件單片機(jī)屬性窗口,在 “ Program File”欄中添加上面編譯好的目標(biāo)代碼文件 “ keil-24.hex”;在 “ Clock Frequency”欄中輸入晶振頻率 為 11.0592MHz。 啟動仿真如 下頁圖 所示,其中,液晶顯示器顯示的為當(dāng) 前樂曲等信息,同時(shí)可聽見音樂的播放聲 106 數(shù)字音樂盒的設(shè)計(jì)仿真液晶顯示效果圖 107 題目 20 單片機(jī)控制步進(jìn)電機(jī) 1. 設(shè)計(jì)要求 采用單片機(jī)控制一個(gè)三相單三拍的步進(jìn)電機(jī)工作。步進(jìn) 電機(jī)的旋轉(zhuǎn)方向由正反轉(zhuǎn)控制信號控制。步進(jìn)電機(jī)的步數(shù)由
44、鍵盤輸入,可輸入的步數(shù)分別為 3、 6、 9、 12、 15、 18、 21 、 24和 27步,且鍵盤具有鍵盤鎖功能,當(dāng)鍵盤上鎖時(shí),步進(jìn) 電機(jī)不接受輸入步數(shù),也不會運(yùn)轉(zhuǎn)。只有當(dāng)鍵盤鎖打開并輸 入步數(shù)時(shí),步進(jìn)電機(jī)才開始工作。 電機(jī)運(yùn)轉(zhuǎn)的時(shí)候有正轉(zhuǎn)和反轉(zhuǎn)指示燈指示。 電機(jī)在運(yùn)轉(zhuǎn)過程中,如果過熱,則電機(jī)停止運(yùn)轉(zhuǎn),同時(shí) 108 紅色指示燈亮,同時(shí)警報(bào)響。 本題目的關(guān)鍵之處是 :如何生成 控制步進(jìn)電機(jī)的脈沖序列。 2. 實(shí)驗(yàn)原理 步進(jìn)電機(jī)的不同驅(qū)動方式,都是在工作時(shí),脈沖信號按一 定順序輪流加到三相繞組上,從而實(shí)現(xiàn)不同的工作狀態(tài)。由于 通電順序不同,其運(yùn)行方式有 三相單三相拍、三相雙三拍和三 相單、雙
45、六拍 三種(注意:上面 “ 三相單三拍 ” 中的 “ 三相 ” 指定子有三相繞組; “ 拍 ” 是指定子繞組改變一次通電方式; “ 三拍 ” 表示通電三次完成一個(gè)循環(huán)。 “ 三相雙三拍 ” 中的 “ 雙 ” 是指同時(shí)有兩相繞組通電)。 109 ( 1)三相單三拍運(yùn)行方式 : 下頁圖 所示為反應(yīng)式步進(jìn)電動 機(jī)工作原理圖,若通過脈沖分配器輸出的第一個(gè)脈沖使 A相 繞組通電, B,C相繞組不通電,在 A相繞組通電后產(chǎn)生的磁場 將使轉(zhuǎn)子 上產(chǎn)生反應(yīng)轉(zhuǎn)矩,轉(zhuǎn)子的 1、 3齒將與定子磁極對 齊,如果 圖( a) 所示。第二個(gè)脈沖到來,使 B相繞組通電, 而 A、 C相繞組不通電; B相繞組產(chǎn)生的磁場將 使
46、轉(zhuǎn)子的 2、 4 齒與 B相磁極對齊,如 圖( b) 所示,與 圖( a) 相比,轉(zhuǎn)子 逆時(shí)針方向轉(zhuǎn)動了一個(gè)角度。第三個(gè)脈沖到來后,是 C相繞 組通電,而 A、 B相不通電,這時(shí)轉(zhuǎn)子的 1、 3齒會與 C組對齊 ,轉(zhuǎn)子的位置如 圖( c)所示,與 圖( b)比較,又逆時(shí)針轉(zhuǎn)過 了一個(gè)角度。 110 圖 反應(yīng)式步進(jìn)電機(jī)工作原理圖 111 當(dāng)脈沖不斷到來時(shí),通過分配器使定子的繞組按著 A相 -B 相 -C相 -A相 的規(guī)律不斷地接通與斷開,這時(shí)步進(jìn)電動機(jī) 的轉(zhuǎn)子就連續(xù)不停地一步步的逆時(shí) 針方向轉(zhuǎn)動。如果改變步 進(jìn)電動機(jī)的轉(zhuǎn)動方向,只要將定子各繞組通電的順序改為 A相 - -C相 -B相 -A相,轉(zhuǎn)
47、子轉(zhuǎn)動方向即改為順時(shí)針方向。 單三拍分配方式時(shí),步進(jìn)電動機(jī)由 A相通電轉(zhuǎn)換到 B相同點(diǎn) ,步進(jìn)電動機(jī)的轉(zhuǎn)子轉(zhuǎn)過一個(gè)角度,稱為一步。這時(shí)轉(zhuǎn)子轉(zhuǎn)過 的角度是 30度。步進(jìn)電動機(jī)每一步轉(zhuǎn)過的角度稱為 步距角 。 112 ( 2)三相雙三拍運(yùn)行方式三相雙三拍運(yùn)行方式: 每次都有 兩個(gè)繞組通電,通電方式是 AB-BC-CA-AB ,如果通電順 序改為 AB-CA-BC-AB 則步進(jìn)電機(jī)反轉(zhuǎn)。雙三拍分配方式 時(shí),步進(jìn)電動機(jī)的步距角也是 30度 ( 3)三相單,雙六拍運(yùn)行方式: 三相六拍分配方式就是每 個(gè)周期內(nèi)有 六個(gè)通電狀態(tài) 。這六中通電狀態(tài)的順序可以使 A- AB-B-BC-C-CA-A 或者 A- C
48、A-C-BC-B-AB-A 六拍通電方式中,有一個(gè)時(shí)刻兩個(gè)繞組同時(shí)通電,這是轉(zhuǎn)子齒 的位置將位于通電的兩相的中間位置。在三相六拍分配 方式 下,轉(zhuǎn)子每一步轉(zhuǎn)過的角度只是三相三拍方式下的一半,步距 角是 15度 。 113 單三拍運(yùn)行的突出問題是每次只有一相繞組通電,在轉(zhuǎn)換過 程中,一相繞組斷電,另一相繞組通電,容易發(fā)生失步;另外單 靠一相繞組通電吸引轉(zhuǎn)子,穩(wěn)定性不好,容易在平衡位置附近震 蕩,故用的較少。 雙三拍運(yùn)行的特點(diǎn)是每次都有兩相繞組通電,且在轉(zhuǎn)換過程 中始終有一相繞組保持通電狀態(tài),因此工作穩(wěn)定,且步距角與單 三拍相同。 六拍運(yùn)行方式轉(zhuǎn)換時(shí)始終有一相繞組通電,且步距角較小, 故工作穩(wěn)定性
49、好,但電源較復(fù)雜,實(shí)際應(yīng)用較多。 3. 電路設(shè)計(jì)( Proteus仿真通過) 本單片機(jī)控制步進(jìn)電機(jī)電路原理圖,如 下頁圖 所示: 114 115 4. Proteus仿真 加載目標(biāo)代碼文件 打開元器件單片機(jī)屬性窗口,在 “ Program File”欄中添加上面編譯好的目標(biāo)代碼文件 “ keil-1.hex”;在 “ Clock Frequency”欄中輸入晶振頻率 為 12MHz。 啟動仿真,各按鍵功能如 下頁圖 所注,根據(jù)題目要求, 只有當(dāng)開關(guān)合上時(shí),步進(jìn)電機(jī)才工作。 116 117 題目 21 單片機(jī)控制直流電動機(jī) 1. 設(shè)計(jì)要求 采用單片機(jī)設(shè)計(jì)一個(gè)控制直流電機(jī)并測量轉(zhuǎn)速的裝置。單 片機(jī)
50、擴(kuò)展有 A/D轉(zhuǎn)換芯片 ADC0809和 D/A轉(zhuǎn)換芯片 DAC0832。 ( 1)通過改變 A/D輸入端可變電阻來改變 A/D的輸入電壓 , D/A輸入檢測量大小,進(jìn)而改變直流電機(jī)的轉(zhuǎn)速。 ( 2)手動控制。在鍵盤上設(shè)置兩個(gè)按鍵 直流電動機(jī)加 速鍵和直流電機(jī)減速鍵。在手動狀態(tài)下,每按一次鍵,電機(jī)的 轉(zhuǎn)速按照約定的速率改變。 ( 3)鍵盤列掃描( 4 6)。 118 2. 實(shí)驗(yàn)原理 本題目難點(diǎn)是對直流電機(jī)的控制。與步進(jìn)電機(jī)類似,直流 電機(jī)也可精確地控制旋轉(zhuǎn)速度或轉(zhuǎn)矩。 直流電機(jī)是通過兩個(gè)磁場的互作用產(chǎn)生旋轉(zhuǎn)。其結(jié)構(gòu)如 下 頁圖 所示,固定部分(定子)上,裝設(shè)了一對直流勵磁的靜 止的主磁極 N和
51、 S,在旋轉(zhuǎn)部分(轉(zhuǎn)子)上裝設(shè)電樞鐵心。定 子與轉(zhuǎn)子之間有一氣隙。在電樞鐵心上放置了由 A和 X 兩根導(dǎo) 體連成的電樞線圈,線圈的首端和末端分別連到兩個(gè)圓弧形 的銅片上,此銅片稱為換向片。 119 圖 有刷直流電機(jī)結(jié)構(gòu)示意圖 120 換向片之間互相絕緣,由換向片構(gòu)成的整體稱為換向器。 換向器固定在轉(zhuǎn)軸上,換向片與轉(zhuǎn)軸之間亦互相絕緣。在換向 片上放置著一對固定不動的電刷 B1和 B2,當(dāng)電樞旋轉(zhuǎn)時(shí),電樞 線圈通過換向片和電刷與外電路接通。 定子通過永磁體或受激勵電磁鐵產(chǎn)生一個(gè)固定磁場,由于 轉(zhuǎn)子由一系列電磁體構(gòu)成,當(dāng)電流通過其中一個(gè)繞組時(shí)會產(chǎn)生 一個(gè)磁場。對有刷直流電機(jī)而言,轉(zhuǎn)子上的換向器和定子
52、的電 刷在電機(jī)旋轉(zhuǎn)時(shí)為每個(gè)繞組供給電能。通電轉(zhuǎn)子繞組與定子磁 體有相反極性,因而相互吸引,使轉(zhuǎn)子轉(zhuǎn)動至與定子磁場對準(zhǔn) 的位置。當(dāng)轉(zhuǎn)子到達(dá)對準(zhǔn)位置時(shí),電刷通過換向器為下一組繞 組供電,從而使轉(zhuǎn)子維持旋轉(zhuǎn)運(yùn)動。如 下頁圖 所示。 121 122 直流電機(jī)的速度與施加的電壓成正比,輸出轉(zhuǎn)矩則與電 流成正比。由于必須在工作期間改變直流電機(jī)的速度,直流 電機(jī)的控制是一個(gè)較困難的問題。直流電機(jī)高效運(yùn)行的最常 見方法是施加一個(gè) PWM(脈寬調(diào)制)方波,其占空比對應(yīng)于 所需速度。電機(jī)起到一個(gè)低通濾波器作用,將 PWM信號轉(zhuǎn)換為 有效直流電平。特別是對于微處理器驅(qū)動的直流電機(jī),由于 PWM信號相對容易產(chǎn)生,這種
53、驅(qū)動方式使用的更為廣泛。 本項(xiàng)目的示例程序?yàn)榱四軌蜓菔?DAC0832的使用,未使用 PWM驅(qū)動方式。而是利用直流電機(jī)的速度與施加電壓成正比的 原理,通過滑動變阻器向 ADC0809輸入控制電壓信號,經(jīng) AD后 ,輸入到 AT89C51中, AT89C51將此信號轉(zhuǎn)發(fā)給 DAC0832,通過 123 功放電路放大后,驅(qū)動直流電機(jī)。需要注意的是,本題目使用 的 Proteus版本,未提供 ADC0809的仿真模型,這里以引腳、功 能與之相同的 ADC0808代替。同時(shí), DAC0832也可以用引腳、功 能相同的 DAC0830代替。 ADC0809與 DAC0832在教材中已有詳細(xì) 介紹,在此不
54、再敘述。按照其時(shí)序圖,如 下頁圖 和 后頁圖 操作 即可。 124 圖 ADC0808時(shí)序圖 125 圖 DAC0830時(shí)序 126 3. 電路設(shè)計(jì)( Proteus仿真通過) 本項(xiàng)目制作的用單片機(jī)控制直流電動機(jī)并測量轉(zhuǎn)速電路原理 圖,如 下頁圖 所示: 127 圖 用單片機(jī)控制直流電動機(jī)的電路原理圖 128 4. Proteus仿真 加載目標(biāo)代碼文件 打開元器件單片機(jī)屬性窗口,在 “ Program File”欄中添加上面編譯好的目標(biāo)代碼文件 “ keil-12.hex”;在 “ Clock Frequency”欄中輸入晶振頻率 為 12MHz。 ADC0809的時(shí)鐘信號設(shè)置為 640kHz。 啟動仿真如 下頁圖 所示,各按鍵功能如圖中所注, LED 中顯示的為當(dāng)前電壓的數(shù)字信號值,即當(dāng)前轉(zhuǎn)速的檔位( 0- 256),通過調(diào)整從滑動變阻器輸出的電壓值,可以觀察到 直流電機(jī)不同的轉(zhuǎn)速。 129 圖 用單片機(jī)控制直流電動機(jī)仿真效果圖
- 溫馨提示:
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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 供應(yīng)商質(zhì)量能力評審準(zhǔn)則-過程和產(chǎn)品審核部分 --songke8519
- 如何建立個(gè)人的交易系統(tǒng)PPT課件
- mapinfo數(shù)字化邯鄲地圖教程課件
- 主管的管理技能
- 峨眉山月歌ppt通用課件
- 微笑的力量-學(xué)會微笑課件
- 怎樣早期預(yù)防糖尿病并發(fā)癥課件
- 《盲人摸象》課件(精品)
- 大數(shù)據(jù)技術(shù)如何應(yīng)用于傳統(tǒng)的信息系統(tǒng)
- 雙學(xué)位課件——市場營銷產(chǎn)品
- 防拐騙安全教育通用課件
- 冬陽童年駱駝隊(duì)
- 把字句和被字句的轉(zhuǎn)換
- 某針織公司組織結(jié)構(gòu)設(shè)計(jì)方案報(bào)告
- 策略培訓(xùn)英文版10