基于STC89C52單片機紅外遙控步進電機_第1頁
基于STC89C52單片機紅外遙控步進電機_第2頁
基于STC89C52單片機紅外遙控步進電機_第3頁
基于STC89C52單片機紅外遙控步進電機_第4頁
基于STC89C52單片機紅外遙控步進電機_第5頁
已閱讀5頁,還剩16頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、中山職業技術學院09 屆畢業設計項目制作報告項目名稱:基于 STC89C52 單片機紅外遙控步進電機系部:電子信息工程系專業:電子信息工程技術班級:09 電子 2 班指導教師:李森團隊成員:張明、梁立生、黃艷芬報告制作人:張 明一、摘要 二、關鍵詞 三、STC89S52 概述 概述 主要性能 單片機引腳分布圖 四、功能描述及分析 五、軟件描述 程序流程圖 2.判斷編碼電平流程圖 六、操作說明 七、實施步驟 步驟 PCB 制作流程 原理圖及電路分析 八、項目制作原件清單 九、項目程序 十、畢業作品實物照 十一、畢業設計總結 一、摘要隨著我國工業化、 信息化進程的高速發展, 電子信息產業蓬勃發 展

2、,國內對單片機及其外圍設備研究越來越深入, 實用也越來越廣泛。 無論是工業用品, 還是民用產品, 基本上都設計到單片機的設計和使 用。本設計介紹了一種基于 STC89S52 單片機的紅外遙控步進電機 的設計,系統分為紅外遙控編解碼和驅動步進電機兩個模塊, 設計的 系統能通過紅外遙控器發射不同的碼值來控制步進電機的正反轉, 加 速減速以及啟動停止, 本報告對該系統的工作原理、 硬件電路和軟件 進行了詳細介紹。二、關鍵詞紅外遙控; 51 單片機;步進電機三、 STC89S52 概述1.STC89S52 是一種低功耗、高性能 CMOS8 位微控制器、具有 8K 在系統可編程 Flash儲存器。實用

3、Atmel 公司高密度非易失性儲 存器技術制造,和工業 80C51 產品指令和引腳完全兼容。片上 Flash 允許程序儲存器在系統可編程, 亦適于常規編程器。 在單芯片上, 擁 有靈巧的 8位CPU和在系統可編程 Flash,使 STC89S52為眾多嵌 入式控制使用系統提供高靈活,超有效地解決方案。主要性能( 1)、和 MCS_51 單片機產品兼容(2)、8K 字節在系統可編程 Flash 存儲器 (3)、1000次擦寫周期( 4)、全靜態操作: 0Hz33Hz(5)、三級加密程序存儲器(6)、32 個可編程 I/O 口線( 7)、三個 16 位定時器、計數器(8)、八個中斷源( 9)、全雙

4、工 UART 串行通道(10)、低功耗空閑和掉電模式(11)、掉電后中斷可喚醒(12)、看門狗定時器(13)、雙數據指針(14)、掉電標識符單片機引腳分布圖四、功能描述及分析紅外接收步進驅動STC89S52復位電路晶振電路紅外發送基本構架原理框圖紅外發射模塊:遙控發射器采用 SC6121 編碼芯片進行紅外遙 控發射電路的搭建。 SC6121 是一塊用于紅外遙控系統中得虹鱒 用發射繼承電路,采用 CMOS 公益制造,它可外接 32 個按鍵。 通過遙控器發射不同的碼值, 紅外接收電路將接收到的信號送給單片機的外部中斷 0,單片機接收到信號后通過解碼程序對接收 到的信號進行處理, 使得性和諧信號成為

5、相應的碼值。 經過處理 后這些信號就可以去控制步進電機的正轉反轉、 加速減速以及啟動停止。具體的遙控發射使用電路圖如圖所示紅外遙控器:紅外接收模塊:本系統采用的接收模塊其核心是和SC6121 相對應的 LFN0038 紅外接收頭。 LFN0038 是一顆集接收電路、調 制解調電路、 低通濾波、 放大電路和控制電路為一體的集成接收 頭,一共有三個引腳輸出其中一個是電源一個是接地另一個則是 輸出,這樣就大大方便了我們的使用。 LFN0038 內部結構如圖由于 LFN0038 內部集成了強大的信號處理功能, 所以在本系統中使用這個 LFN0038 的接收的時候我們只需要在外部嘉盛一 個濾波電路即可,

6、 這個 RC 濾波電路是為了濾除電源端的干擾信 號。下圖為 LFN0038 使用電路及遙控器 紅外接收頭電路:步進電機驅動模塊:本系統采用額定電壓5VDC ,相數為四相步進電機。 一共 6 根連接線, 其中兩根紅色的為電源線。 采用單 極性直流電源供電。 只要對不僅電機的各項繞組按合適的時序通 電,就能使不僅電機步進轉動。由于單片機 P 口輸出地電流比 較弱不能驅動不僅電機,所以要價一個 ULN2003 芯片來放大電 流使之能驅動步進電機工作。 ULN2003 是高耐壓、大電流達林 頓陳列,由七個硅 NPN 達林頓管組成。 ULN2003 的每一對達林 頓管都串聯一個 ULN2003 工作電壓

7、高,工作電流大,灌電流可 達 500mA,并且能夠在關態時承受 50V 的電壓, 輸出還可以在高 負載電流并行運行。 步進電機驅動電路如圖: 負載電流并行運行。 步進電機驅動電路如圖:五、軟件描述(1)程序流程圖系統初始化INT0 外部中斷設置正轉反轉2)判斷編碼電平流程圖六、操作說明 (1)、接上 5V 電源線,按下開關按鈕,系統初始化。( 2)、按下 UP 按鍵,單片機調用正轉程序指令,步進電機開始 做時針運動。按下 DOWN 按鍵,單片機調用反轉程序指令,步進電機 開始順時針運動。(3)、在正轉反轉狀態下: 連續按下 +鍵,單片機調用加速指令, 步進電機開始加速。連續按下 -鍵,單片機調

8、用減速指令,步進電機開始減速。七、實施步驟1.步驟(1)方案確定:分析題目要求,手機資料,提出方案并論證;( 2)基于 STC89S52 單片機紅外遙控步進電機:a) 完成基于 STC89S52 單片機紅外遙控步進電機的原理 圖的設計及電路分析基于 STC89S52 單片機紅外遙控步進電機的原件清單; 關 b)鍵元器件選購;(3)線路板的設計和制作1) ProtelDXP 完成線路板的設計2) 利用熱轉印方法完成線路板的制作( 4)基于 STC89S52 單片機紅外遙控逼近電機的制作1) 完成線路板的裝配;2) 簡易外殼的制作;3) 利用知道老師提供的程序完成整機的調試。(5)程序編寫、調試及

9、仿真(使用 KeilC51 和 Proteus 開發工 具軟件)( 6)基于 STC89S52 單片機紅外遙控步進電機的原理圖;八、項目清單紅外遙控步進電機耗材清單序號耗材名稱規格/ 型號合計數量1碳膜電阻10K102瓷片電容10433瓷片電容30p24電解電容220uF/16V25電解電容220uF/3.5V26晶振12MHz17橋堆28保險絲19ICULN2003A110ICL7805CV111單片機AT89C51112單片機插座DIP-40113IC 插座DIP-161142 腳插座白色2154 腳插座白色1162 腳插座藍色117變壓器AC9V118電動機42BYGH102120碳膜電

10、阻15K121電解電容4.7uF1223 腳插座白色123紅外接收器124按鍵開關SW-PB125碳膜電阻100126電解電容22uF1總計九、項目程序#include#define uchar unsigned char#define uint unsigned intsbit IRIN=P32;/紅處接收端口sbit BEEP = P20;/ 蜂鳴器驅動線bit direction,flag;uchar count1=0,count2=0;uchar rate=9;uchar IRCOM6;unsignedcharcodeFFW8=0 xfe,0 xfc,0 xfd,0 xf9,0 xfb

11、,0 xf3,0 xf7,0 xf6; / 反轉 unsignedcharcodeREV8=0 xf6,0 xf7,0 xf3,0 xfb,0 xf9,0 xfd,0 xfc,0 xfe; / 正轉 char code reserve3;/ 保留 0 x3b 開始的 3 個字節/*延時子函數*/ void delay(uchar x) uchar i; while(x-) for(i=0;i14;i+);void beep(void)unsigned char i;for (i=0;i100;i+)delay(4);BEEP=!BEEP; BEEP=1;/BEEP 取反/關閉蜂鳴器主函數voi

12、d main(void)BEEP=1;P0=0 xff;P1=0 xff;TMOD=0 x01; TH0=0 xf8; TL0=0 xcc;ET0=1;/端口初始化/Timer0 工作方式 1 /2ms 定時常數/ 允許 Timer0 中斷EA=1;TR0=0;EX0=1;IT0=1;direction=1;while(1)if(IRCOM2=0 x47)/ 為遙控器的 K1 鍵TR0=0;P0=0 xf0;/步進電機斷電if(IRCOM2=0 x43) / 為遙控器的 up 鍵direction=1; / 置運行方向標志位(正轉) TR0=1; if(IRCOM2=0 x40) / 為遙控器

13、的 DOWN 鍵direction=0; /清運行方向標志位(反轉) TR0=1;flag=0; /*INT0 中斷服務子函數*/void IR_IN()interrupt 0 unsigned char j,k,Num=0;EX0=0;/ 關閉 INT0 中斷delay(15);/ 延時if(IRIN=1)/再確認 IR 信號是否出現EX0=1; / 開 INT0 中斷 return;/ 退出while(!IRIN) /等 IR 變為高電平,跳過 9ms 的前導低電平 信號 delay(1);while(IRIN)/等 IR 變為低電平,跳過 4.5ms 的前導高電平信號 delay(1);

14、 for (j=0;j4;j+) / 收集四組數據for(k=0;k=15)EX0=1;/ . ms計數過長自動離開 return; /高電平計數完畢IRCOMj=IRCOMj1;/ 數據最高位補“” if(Num=8)IRCOMj=IRCOMj|0 x80;/ 數據最高位補“” Num=0; if(IRCOM0!=0 x00)/ 比較用戶碼 EX0=1;/開 INT0 中斷return;/ 退出 if(IRCOM2!=IRCOM3)/ 接收數據是否正確EX0=1;/ 開 INT0 中斷 return;/ 退出else beep(); flag=1;if(IRCOM2=0 x09)/ “ +”

15、鍵if(rate4)rate-;elserate=4;if(IRCOM2=0 x15)if(rate15)rate+;elserate=15;EX0=1;/ 重新開 INT0 中斷/*定時器中斷服務子函數*/void motor_onoff() interrupt 1TL0=0 xcc;/ ms 定時常數TH0=0 xf8;count1+; if(count1rate) return;elsecount1=0;if(direction=1)/ 運行方向標志if(count28)P0=FFWcount2&0 x1f;/取數據,正轉count2+; / 取數據次數加 if(count2=8)count2=0;elseif(count28)P0=REVcount2&0 x1f; / 取數據,反轉 count2+;/ 取數據次數加if(count2=8)count2=0; 十、畢業作品實物照一、畢業設計總結這次畢業設計的作品從設計

溫馨提示

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

評論

0/150

提交評論