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

下載本文檔

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

文檔簡介

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

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

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

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

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

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

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

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

9、仿真(使用 KeilC51 和 Proteus 開發(fā)工 具軟件)( 6)基于 STC89S52 單片機紅外遙控步進電機的原理圖;八、項目清單紅外遙控步進電機耗材清單序號耗材名稱規(guī)格/ 型號合計數(shù)量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;/ 蜂鳴器驅(qū)動線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; / 反轉(zhuǎn) unsignedcharcodeREV8=0 xf6,0 xf7,0 xf3,0 xfb,0 xf9,0 xfd,0 xfc,0 xfe; / 正轉(zhuǎn) char code reserve3;/ 保留 0 x3b 開始的 3 個字節(jié)/*延時子函數(shù)*/ 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 取反/關閉蜂鳴器主函數(shù)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 定時常數(shù)/ 允許 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; / 置運行方向標志位(正轉(zhuǎn)) TR0=1; if(IRCOM2=0 x40) / 為遙控器

13、的 DOWN 鍵direction=0; /清運行方向標志位(反轉(zhuǎn)) TR0=1;flag=0; /*INT0 中斷服務子函數(shù)*/void IR_IN()interrupt 0 unsigned char j,k,Num=0;EX0=0;/ 關閉 INT0 中斷delay(15);/ 延時if(IRIN=1)/再確認 IR 信號是否出現(xiàn)EX0=1; / 開 INT0 中斷 return;/ 退出while(!IRIN) /等 IR 變?yōu)楦唠娖剑^ 9ms 的前導低電平 信號 delay(1);while(IRIN)/等 IR 變?yōu)榈碗娖?,跳過 4.5ms 的前導高電平信號 delay(1);

14、 for (j=0;j4;j+) / 收集四組數(shù)據(jù)for(k=0;k=15)EX0=1;/ . ms計數(shù)過長自動離開 return; /高電平計數(shù)完畢IRCOMj=IRCOMj1;/ 數(shù)據(jù)最高位補“” if(Num=8)IRCOMj=IRCOMj|0 x80;/ 數(shù)據(jù)最高位補“” Num=0; if(IRCOM0!=0 x00)/ 比較用戶碼 EX0=1;/開 INT0 中斷return;/ 退出 if(IRCOM2!=IRCOM3)/ 接收數(shù)據(jù)是否正確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 中斷/*定時器中斷服務子函數(shù)*/void motor_onoff() interrupt 1TL0=0 xcc;/ ms 定時常數(shù)TH0=0 xf8;count1+; if(count1rate) return;elsecount1=0;if(direction=1)/ 運行方向標志if(count28)P0=FFWcount2&0 x1f;/取數(shù)據(jù),正轉(zhuǎn)count2+; / 取數(shù)據(jù)次數(shù)加 if(count2=8)count2=0;elseif(count28)P0=REVcount2&0 x1f; / 取數(shù)據(jù),反轉(zhuǎn) count2+;/ 取數(shù)據(jù)次數(shù)加if(count2=8)count2=0; 十、畢業(yè)作品實物照一、畢業(yè)設計總結(jié)這次畢業(yè)設計的作品從設計

溫馨提示

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

評論

0/150

提交評論