紅外遙控電路設(shè)計資料
紅外遙控電路設(shè)計資料,紅外,遙控,電路設(shè)計,資料
引 言
隨著遠程教育系統(tǒng)的不斷發(fā)展和日趨完善,利用多媒體作為教學手段在各級各類學校都得到了廣泛應(yīng)用。近年來,在多媒體教學系統(tǒng)的使用、開發(fā)和研制中,經(jīng)常遇到同時使用多種設(shè)備,如:數(shù)字投影機、DVD、VCD、錄像機、電視機等,由于各種設(shè)備都自帶遙控器,而且不同的設(shè)備所遵循的紅外傳輸規(guī)約也不盡相同,操縱這些設(shè)備得使用多種遙控器,給使用者帶來了諸多不便。本次畢業(yè)設(shè)計的主題就是紅外遙控電路設(shè)計。紅外遙控的特點是利用紅外線進行點對點通信的技術(shù),不影響周邊環(huán)境,不干擾其他電器設(shè)備。室內(nèi)近距離(小于10米),信號無干擾、傳輸準確度高、體積小、功率低的特點,遙控中得到了廣泛的應(yīng)用。通過基于單片機的控制指令來對多種設(shè)備進行遠程控制,可以選擇不同的按鍵來控制不同的設(shè)備。從而方便快捷的實現(xiàn)遠程控制。
常用的紅外遙控系統(tǒng)一般分發(fā)射和接收兩個部分。發(fā)射部分的主要元件為紅外發(fā)光二極管。它實際上是一只特殊的發(fā)光二極管;由于其內(nèi)部材料不同于普通發(fā)光二極管,因而在其兩端施加一定電壓時,它便發(fā)出的是紅外線而不是可見光。紅外發(fā)光二極管一般有黑色、深藍、透明三種顏色。判斷紅外發(fā)光二極管好壞的辦法與判斷普通二極管一樣;用萬用表電阻擋量一下紅外發(fā)光二極管的正、反向電阻即可。紅外發(fā)光二極管的發(fā)光效率要用專門的儀器才能精確測定,而業(yè)余條件下只能用拉鋸法來粗略判判定。
接收部分的紅外接收管是一種光敏二極管。在實際應(yīng)用中要給紅外接收二極管加反向偏壓,它才能正常工作,亦即紅外接收二極管在電路中應(yīng)用時是反向運用,這樣才能獲得較高的靈敏度。紅外發(fā)光二極管一般有圓形和方形兩種。由于紅外發(fā)光二極管的發(fā)射功率一般都較小,所以紅外接收二極管接收到的信號比較微弱,因此就要增加高增益放大電路。最近幾年不論是業(yè)余制作還是正式產(chǎn)品,大多都采用成品紅外接收頭。成品紅外接收頭的封裝大致有兩種:一種采用鐵皮屏蔽;一種是塑料封裝。均有三只引腳,即電源正(VDD)、電源負(GND)和數(shù)據(jù)輸出(VO或OUT)。
紅外接收頭的引腳排列因型號不同而不盡相同,紅外接收頭的優(yōu)點是不需要復雜的調(diào)試和外殼屏蔽,使用起來如同一只三極管,非常方便。
1 設(shè)計要求及指標
紅外遙控是目前使用較多的一種遙控手段。紅外線遙控裝置具有體積小、功耗低、功能強、成本低等特點。在家庭生活中,錄音機、音響設(shè)備、空調(diào)彩電都采用了紅外遙控系統(tǒng)。設(shè)計要求利用紅外傳輸控制指令及智能控制系統(tǒng),借助微處理器強大靈活的控制功能發(fā)出脈沖編碼,組成的一個遙控系統(tǒng)。紅外線編碼是數(shù)據(jù)傳輸質(zhì)是一種脈寬調(diào)制的串行通訊。紅外線通訊的發(fā)送部分主要是把待發(fā)送的數(shù)據(jù)轉(zhuǎn)換成一定格式的脈沖,然后驅(qū)動紅外發(fā)光管向外發(fā)送數(shù)據(jù)。接收部分則是完成紅外線的接收、放大、解調(diào),還原成同步發(fā)射格式相同,但高、低電位剛好相反的脈沖信號,其主要輸出TTL兼容電平。最后通過解碼把脈沖信號轉(zhuǎn)換成數(shù)據(jù),從而實現(xiàn)數(shù)據(jù)的傳輸。本設(shè)計的主要技術(shù)指標如下:
(1) 遙控范圍:4—6米
(2) 顯示可控制的通道
(3) 接收靈敏可靠,抗干擾能力強
(4) 控制用電器電流最高為2A
2 紅外遙控系統(tǒng)的設(shè)計
紅外遙控系統(tǒng)由發(fā)射和接收兩大部分組成,系統(tǒng)采用編/解碼專用集成電路和單片機芯片來進行控制操作。設(shè)計的電路由如下的幾個基本模塊組成:直流穩(wěn)壓電源,紅外發(fā)射電路,紅外接收電路及控制部分。
按鍵部分
單片機
89C2051
發(fā)射部分
電源
3V
系統(tǒng)框圖如圖3-1所示。
圖2-1 紅外遙控電路框圖 (a)發(fā)射電路框圖
5V
接收部分
單片機
89S52
顯示部分
控制部分
電源
9V
圖2-1 紅外遙控電路框圖 (b)接收電路框圖
3 紅外收發(fā)電路的設(shè)計
3.1 主要芯片——閃電存儲型單片機AT89S52的介紹
3.1.1 AT89S52具有下列主要性能:
(1) 8KB可改編程序Flash存儲器
(可經(jīng)受1,000次的寫入/擦除周期)
(2) 三級程序存儲器保密
(3) 256 *8字節(jié)內(nèi)部RAM
(4) 32條可編程I/O線
(5) 3個16位定時器/計數(shù)器
(6) 6個中斷源
(7) 可編程串行通道
(8) 片內(nèi)時鐘振蕩器
AT89S52是用靜態(tài)邏輯來設(shè)計的,并提供兩種可用軟件來選擇的省電方式——空閑方式和掉電方式。在空閑方式中,CPU停止工作,而RAM、定時器/計數(shù)器、串行口和中斷系統(tǒng)都繼續(xù)工作。在掉電方式中,片內(nèi)振蕩器停止工作,由于時鐘被“凍結(jié)”,一切功能暫停,只保存片內(nèi)RAM中的內(nèi)容,直到下一次硬件復位為止。
3.1.2 AT89S52的引腳及功能
89S52單片機的管腳說明如圖3-1所示。
(1) 主要電源引腳
① VSS 電源端
② GND 接地端
(2) 外接晶體引腳XTAL1和XTAL2
① XTAL1 接外部晶體的一個引腳。在單片機內(nèi)部,它是構(gòu)成片內(nèi)振蕩器的反相放大器的輸入端。當采用外部振蕩器時,該引腳接收振蕩器的信號,既把此信號直接接到內(nèi)部時鐘發(fā)生器的輸入端。
圖3-1 AT89C51的引腳
② XTAL2 接外部晶體的另一個引腳。在單片機內(nèi)部,它是上述振蕩器的反相放大器的輸出端。采用外部振蕩器時,此引腳應(yīng)懸浮不連接。
(3) 輸入/輸出引腳 P0.0~ P0.7、P10.~P1.7、P2.0~ P2.7 和P3.0~P3.7。
① P0端口(P0.0~ P0.7) P0是一個8位漏極開路型雙向I/O端口。作為輸出口用時,每位能以吸收電流的方式驅(qū)動8個TTL輸入,對端口寫1時,又可作高阻抗輸入端用。
在訪問外部程序和數(shù)據(jù)存儲器時,它是分時多路轉(zhuǎn)換的地址(低8位)/數(shù)據(jù)總線,在訪問期間激活了內(nèi)部的上拉電阻。
② P1端口(P1.0~ P1.7) P1是一個帶有內(nèi)部上拉電阻的8位雙向I/O端口。P1的輸出緩沖器可驅(qū)動(吸收或輸出電流方式)4個TTL輸入。對端口寫1時,通過內(nèi)部的上拉電阻把端口拉到高電位,這時可用作輸入口。作輸入口時,因為有內(nèi)部的上拉電阻,那些被外部信號拉低的引腳會輸出一個電流。
③ P2端口 (P2.0~P2.7) P2是一個帶有內(nèi)部上拉電阻的8位雙向I/O端口。P2的輸出緩沖器可驅(qū)動(吸收或輸出電流方式)4個TTL輸入。對端口寫1時,通過內(nèi)部的上拉電阻把端口拉到高電位,這時可用作輸入口。P2作輸入口使用時,因為有內(nèi)部的上拉電阻,那些被外部信號拉低的引腳會輸出一個電流。
在訪問外部程序存儲器和16位地址的外部數(shù)據(jù)存儲器(如執(zhí)行MOVX @DPTR指令)時,P2送出高8位地址。在訪問8位地址的外部數(shù)據(jù)存儲器(如執(zhí)行MOVX @Ri , A指令)時,P2口引腳上的內(nèi)容(就是專用寄存器(SFR)區(qū)中P2寄存器的內(nèi)容),在整個訪問期間不會改變。
④ P3端口(P3.0~P3.7) P3 是一個帶有內(nèi)部上拉電阻的8位雙向I/O端口。P2的輸出緩沖器可驅(qū)動(吸收或輸出電流方式)4個TTL輸入。對端口寫1時,通過內(nèi)部的上拉電阻把端口拉到高電位,這時可用作輸入口。P3作輸入口使用時,因為有內(nèi)部的上拉電阻,那些被外部信號拉低的引腳會輸出一個電流。
在AT89S52中,P3端口還用于一些專門功能,這些兼用功能如下:
(1) P3.0 RXD(串行輸入口)
(2) P3.1 TXD(串行輸出口)
(3) P3.2 /INT0(外部中斷0)
(4) P3.3 /INT1(外部中斷1)
(5) P3.4 T0(記時器0外部輸入)
(6) P3.5 T1(記時器1外部輸入)
(7) P3.6 /WR(外部數(shù)據(jù)存儲器寫選通)
(8) P3.7 /RD(外部數(shù)據(jù)存儲器讀選通)
(9) P3口同時為閃爍編程和編程校驗接收一些控制信號
3.1.3振蕩器特性:
??? ?XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅(qū)動器件,XTAL2應(yīng)不接。由于輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。
3.1.4 芯片擦除:
整個PEROM陣列和三個鎖定位的電擦除可通過正確的控制信號組合, ALE管腳處于低電平10ms 來完成。在芯片擦操作中,代碼陣列全被寫“1”且在任何非空存儲字節(jié)被重復編程以前,該操作必須被執(zhí)行。
3.2 89C2051介紹
89C2051共有20條引腳,如圖3-2所示。
P1口共8腳,準雙向端口。
P3.0~P3.6共7腳,準雙向端口,如P3.0、P3..1的串行通訊功能,P3.2、P3..3的中斷輸入功能,P3.4、P3.5的定時器輸入功能。
在引腳的驅(qū)動能力上,89C2051具有很強的下拉能力,P1,P3口的下拉能力均可達到20mA.相比之下,89C51的端口下拉能力每腳最大為15mA。但是限定9腳電流之和小于71mA.這樣,引腳的平均電流只9mA。89C2051驅(qū)動能力的增強,使得它可以直接驅(qū)動LED數(shù)碼管。
相對于89C51它少了一些功能,但是它的功耗少,便于攜帶,更經(jīng)濟使它在發(fā)射電路中起著重要的地位。因此,在本設(shè)計紅外發(fā)射的電路中就用了它來實現(xiàn)脈沖信號的產(chǎn)生。
圖3-2 89C2051的引腳
3.3 系統(tǒng)的功能實現(xiàn)方法
3.3.1 搖控碼的編碼格式
該遙控器采用脈沖個數(shù)編碼,不同的脈沖個數(shù)代表不同的碼,最小為2個脈沖,最大為17個脈沖。為了使接收可靠,第一位碼寬為3ms,其余為1ms,遙控碼數(shù)據(jù)幀間隔大于10ms,如圖3-3所示。
3.3.2 遙控碼的發(fā)射
采用的是 89C2051 芯片。用P1口組成鍵盤,獲取鍵值,用內(nèi)部的定時器1產(chǎn)生一個40KHz的軟件定時中斷,當作紅外線的調(diào)制基波,當某個操作按鍵按下時,單片機先讀出鍵值,然后根據(jù)鍵值設(shè)定遙控碼的脈沖個數(shù),再調(diào)制成40kHz方波由紅外線發(fā)光管發(fā)射出去。P3.5端口的輸出調(diào)制波如圖3-3所示。
3.3.3 數(shù)碼幀的接收處理
當紅外線接收器輸出脈沖幀數(shù)據(jù)時,第一位碼的低電平將啟動中斷程序,實時接收數(shù)據(jù)幀。在數(shù)據(jù)幀接收時,將對第一位(起始位)碼的碼寬進行驗證。若第一位低電平碼的脈寬小于2ms,將作為錯誤碼處理。當間隔位的高電平脈寬大于3ms時,結(jié)束接收,然后根據(jù)累加器A中的脈沖個數(shù),執(zhí)行相應(yīng)輸出口的操作。圖3-4就是紅外線接收器輸出的一幀遙控碼波形圖。
電器0的遙控輸出碼
電器1的遙控輸出碼
電器7的遙控輸出碼
3ms
10ms
幀間隙
圖3-3 端口輸出編碼波形圖
1ms
1ms
第一位
1ms
10ms
3ms
10ms
圖3-4 紅外線接收器輸出的一幀遙控碼波形圖
3.4 紅外發(fā)射電路
遙控發(fā)射通過鍵盤,每按下一個鍵,即產(chǎn)生具有不同的編碼數(shù)字脈沖,這種代碼指令信號調(diào)制在40KHz的載波上,激勵紅外光二極管產(chǎn)生不同的脈沖,通過空間的傳送到受控機的遙控接收器。P1口作為按鍵部分,P3.5口作為發(fā)射部分,然后用三極管的放大驅(qū)動紅外發(fā)射。電路如圖3-5所示。
圖3-5 發(fā)射電路圖
3.5 紅外接收電路
在接收過程中,脈沖通過光學濾波器和紅外二極管轉(zhuǎn)換為40KHz的電信號,此信號經(jīng)過放大,檢波,整形,解調(diào),送到解碼與接口電路,從而完成相應(yīng)的遙控功能。接收電路如圖3-6所示。
圖3-6 接收電路圖
通常,紅外遙控器將遙控信號(二進制脈沖碼)調(diào)制在40KHz的載波上,經(jīng)緩沖放大后送至紅外發(fā)光二極管,產(chǎn)生紅外信號發(fā)射出去。將上述的遙控編碼脈沖對頻率為40KHz(周期為26.3ms)的載波信號進行脈幅調(diào)制(PAM ),再經(jīng)緩沖放大后送到紅外發(fā)光管,將遙控信號發(fā)射出去。
根據(jù)遙控信號編碼和發(fā)射過程,遙控信號的識別——即解碼過程是去除40KHz載波信號后識別出二進制脈沖碼中的0和1。由MCS—51 系列單片機AT89S52、一體化紅外接收頭、存儲器、還原調(diào)制與紅外發(fā)光管驅(qū)動電路組成。
一體化紅外接收頭采用SIEMENS SFH 506-38 ,它負責紅外遙控信號的解調(diào)。將調(diào)制在40kHz上的紅外脈沖信號解調(diào)后再輸入到AT89C51的INT0(P3.2)引腳,由單片機進行高電平與低電平寬度的測量。遙控信號的還原是通過P3.1輸入二進制脈沖碼的高電平與低電平及維持時間,當接收頭接收信號時,單片機產(chǎn)生中斷,并在P3.1口記下脈沖的個數(shù),這在后面的軟件設(shè)計中會具體介紹到,通過單片機處理后驅(qū)動控制部分。并通過數(shù)碼管顯示用電設(shè)備的個數(shù)。
3.6 軟件設(shè)計
3.6.1 發(fā)射編碼的軟件設(shè)計
首先,初始化定時器,定時為頻率為40KHz的時間段。當按下某一按鍵時,發(fā)送數(shù)據(jù)1,就開始工作。同時定時器溢出,也就是定時器記滿了,執(zhí)行定時器中斷,中斷程序如下:
INTT1: CPL P3.5 ;40KHZ紅外線遙控信號產(chǎn)生
RETI ; 中斷返回
由此就產(chǎn)生了40KHZ的載波信號。
當發(fā)送數(shù)據(jù)0時,定時器不工作。
發(fā)送程序如下:
REMOTE: MOV R1,A ;裝入發(fā)射脈沖個數(shù)
LJMP OUT3 ;轉(zhuǎn)第一個碼發(fā)射處理
OUT: MOV R0,#55H ;1MS寬低電平發(fā)射控制數(shù)據(jù)
OUT1: SETB ET1 ;開T1中斷
SETB TR1 ;開啟定時器T1
NOP ;延時
NOP
NOP
NOP
NOP
DJNZ R0,OUT1 ;時間不到轉(zhuǎn)OUT1再循環(huán)
MOV R0,#32H ;1MS高電平間隙控制數(shù)據(jù)
OUT2: CLR TR1 ;關(guān)定時器T1
CLR ET1 ;關(guān)T1中斷
CLR P3.5 ;關(guān)脈沖輸出
NOP ;空操作延時
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
DJNZ R0,OUT2 ;時間不到轉(zhuǎn)OUT2再循環(huán)
DJNZ R1,OUT ;脈沖未發(fā)完,轉(zhuǎn)OUT再循環(huán)發(fā)射
LCALL DL500MS ;
RET ;
OUT3: MOV R0,#0FFH ;裝發(fā)謝3MS寬控制數(shù)據(jù)
LJMP OUT1 ;轉(zhuǎn)OUT1
3.6.2接收編碼的軟件設(shè)計
單片機上電復位后,首先對其內(nèi)部定時器初始化,用定時器及軟件計數(shù)的方法,當有信號輸入時,單片機產(chǎn)生中斷,并在P3.1口進行計脈沖個數(shù),測量P3.1高、低電平的寬度。P3.1引腳平時為高電平,當接收到紅外遙控信號時,由于一體化紅外接收頭的反向作用,INT0引腳下跳至低電平,計算脈沖個數(shù)后通過7447譯碼電路,數(shù)碼管顯示相應(yīng)的數(shù)值。
下面是第一個3ms脈沖的解碼程序。
READ1: CLR A
MOV DPH,A
MOV DPL,A
HARD1: JB P3.1,HARD11
INC DPTR
NOP
NOP
AJMP HARD1
HARD11: MOV A,DPH
JZ READOUTT0
CLR A
READ11: INC A
READ12: JNB P3.1,READ12
MOV R1,#06H
READ13: JNB P3.1,READ11
LCALL DELAYREAD
DJNZ R1,READ13
程序流程圖如圖3-7所示。
掃描按鍵
逐行掃描,
按P口值查鍵號
按鍵號轉(zhuǎn)至相
應(yīng)的發(fā)射程序
返回
N
Y
鍵按下
圖3-7 程序流程圖 (a)按鍵流程圖
發(fā)射開始
裝入發(fā)射脈沖個數(shù)à(R1)
發(fā)3ms脈沖
停發(fā)1ms
(R1)-1=0?
開始
停發(fā)1ms
返回
Y
N
圖3-7 程序流程圖 (b)發(fā)射流程圖
Y
是否接收到
錯誤
Y
Y
停1ms
返回
接收1ms脈沖
N
A-1=0?
檢驗低電平是否為3ms
N
圖3-7 程序流程圖(c)接收流程圖
4 直流穩(wěn)壓電源的設(shè)計
直流穩(wěn)壓電源主要功能是為后兩個部分提供電壓的輸出。在設(shè)計中分出了2個支路,一個輸出的電壓為9V,另外一個輸出的電壓為5V。
直流穩(wěn)壓電源的主要由電源變壓器、整流電路、濾波電路和穩(wěn)壓電路四部分組成。框圖如圖4-1所示。
圖4-1 直流穩(wěn)壓電源的方框圖
4.1直流穩(wěn)壓電源采用單相橋式整流電路
整流電路主要實現(xiàn)將交流電變換成直流電。實現(xiàn)這一目標主要是靠二極管的單向?qū)щ娮饔茫虼硕O管是構(gòu)成整流電路的關(guān)鍵元件。我采用的是單橋式整流電路。本設(shè)計整流電路如圖4-2所示。
圖4-2 單橋式整流電路圖
在圖中,輸入電壓V1通過電源變壓器成V2。它的作用是將交流電電壓V1變成整流電路要求的交流電壓V2。其中的電阻是要求支流供電的負載電阻。四個整流二極管D1到D4接成電橋的形式。通過負載R的電流I以及電壓V3的波形如圖4-3。它們都是單方向的全波脈動波形。
4.2 濾波電路
在整流電路輸出波形中由于含有較多的紋波成分,與所要求的波形不太符合。所以在整流電路后接濾波電路以濾去整流輸出電壓的紋波。而濾波電路常有電容濾波,電感濾波和RC濾波等。本電路采用的是電容濾波電路。如圖4-4所示。
O
O
V2
t
O
2
3
4
iLO
O
t
D1
D3
D2
D4
D1
D3
D2
D4
t
vL
圖4-3 單相橋式整流電路波形圖
圖4-4 電容濾波電路圖
4.3 穩(wěn)壓電路
典型應(yīng)用電路如圖4-5所示。圖中C1、C2用于頻率補償,防止自激振蕩和抑制高頻干擾;C3采用電解電容,以減少電源引入的低頻干擾對輸出電壓的影響;D是保護二極管,當輸入端短路時,給C3一個放電的通路,防止C3兩端電壓激穿調(diào)整管的發(fā)射結(jié)。
圖5-5 穩(wěn)壓電路圖
5 LED顯示電路的設(shè)計
LED顯示主要是顯示所發(fā)射的所發(fā)送的信號的個數(shù),它就實現(xiàn)以下的作用。當按下某一按鍵比方說2鍵,LED會顯示01,如果再按下2鍵,LED就顯示00。如果同時按下2個鍵,那么LED就顯示02。下面介紹LED的主要性能。
LED顯示器由7個發(fā)光二極管組成,又叫7段LED顯示器,顯示器中還有一個圓點型發(fā)光二極管,用于顯示小數(shù)點。通過七個發(fā)光二極管亮暗的不同組合,可以顯示多種數(shù)字、字母以及其它符號。
LED顯示器中的發(fā)光二極管共有兩種連接方法:
(1) 共陽極接法
把發(fā)光二極管的陽極連在一起構(gòu)成公共陽極。使用時公共陽極接+5V。這樣陰極端輸入低電平的段發(fā)光二極管就導通點亮,而輸入高電平的則不點亮。
(2) 共陰極接法
把發(fā)光二極管的陽極連在一起構(gòu)成公共陽極。使用時公共陽極接+5V。這樣陰極端輸入低電平的段發(fā)光二極管就導通點亮,而輸入高電平的則不點亮。
b
COM
R*8
a
d
f
在設(shè)計的電路中,采用了共陽極接法,原理圖如5-1所示。它顯示十六進制數(shù)的字形代碼如表5-2所示。
c
g
dp
e
圖5-1 LED顯示原理圖
表5-2 十六進制數(shù)的字形代碼表
dp
g
f
e
d
c
b
a
字形
字形碼
1
1
0
0
0
0
0
0
0
C0H
1
1
1
1
1
0
0
1
1
F9H
1
0
1
0
0
1
0
0
2
A6H
1
0
1
1
0
0
0
0
3
B0H
1
0
0
1
0
0
1
0
4
99H
1
0
0
1
0
0
1
0
5
92H
1
0
0
0
0
0
1
0
6
82H
1
1
1
1
1
0
0
0
7
F8H
1
0
0
0
0
0
0
0
8
80H
1
0
0
1
0
0
0
0
9
90H
0
1
0
0
0
0
0
0
0
40H
6 控制部分
在控制部分采用了隔離驅(qū)動電路,用光電器件作為隔離元件,利用光耦來隔離強電,以防止強電影響單片機的工作。光電耦合器是由發(fā)光二極管和光敏三極管組合起來的器件,發(fā)光二極管是把輸入邊的電信號變換成相同規(guī)律變化的光,而光敏三極管是把光又重新變換成變化規(guī)律相同的電信號,因此,光起著媒介的作用。由于光電耦合器抗干擾能力強,容易完成電平匹配和轉(zhuǎn)移,又不受信號源是否接地的限制。所以應(yīng)用日益廣泛。
光電隔離的目的是割斷兩個電路的電氣聯(lián)系,使之相互獨立,從而也就割斷了噪聲從一個電路進入另一個電路的通路。光電隔離是通過光電耦合器實現(xiàn)的。外殼有金屬的或塑料的兩種。發(fā)光二極管和光敏三極管之間用透明絕緣體填充,并使發(fā)光管與光敏管對準,以提高其靈敏度,光電耦合器的電路符號如圖6-1所示。
圖6-1 光電耦合器原理圖
輸入信號使用權(quán)發(fā)光二極管發(fā)光,其光線又使光敏三極管產(chǎn)生電信號輸出,從而既完成了信號的傳遞又實現(xiàn)了電氣上的隔離。光電耦合的響應(yīng)時間一般不超過幾個微秒。
光電耦合器的輸入 端與輸出 端在電氣上是絕緣的,且輸出端對輸入端也無反饋,因而具有隔離和抗干擾兩方面的獨特性能。通常使用光電耦合器是為實現(xiàn)以下兩個主要功能:
電平轉(zhuǎn)換:TTL電路與電源電路之間不需另加匹配電路就可以傳輸信號,從而實現(xiàn)了電平轉(zhuǎn)換。
隔離:這時由于信號電路與接收電路之間被隔離,因此即使兩個電路的接地電位不同,也不會形成干擾。
光電耦合器中光敏三極管的基極有引出和不引出兩種形式。基極引出通常是經(jīng)一個電阻接地。
通過接地電阻可以控制耦合的響應(yīng)速度和靈敏度??偟膩碚f,電阻越小,響應(yīng)速度越高。電路如圖6-2所示。
繼電器
圖6-2 控制電路圖
通過光耦后,利用繼電器就可以實現(xiàn)對不同的設(shè)備或者其他要控制的設(shè)備進行控制,從而實現(xiàn)了弱電來控制強電的功能,也能控制不同的設(shè)備。這里用發(fā)光二極管來代替,實際上可以控制多個不同的強電設(shè)備。
7 調(diào)試結(jié)果及其分析
本電路總共設(shè)計了8個輸入按鍵,7,8為特殊按鍵。
當輸入一個按鍵5時,通過紅外發(fā)射和接收電路,對應(yīng)的繼電器5的設(shè)備工作即5號發(fā)光二極管發(fā)光,而數(shù)碼管顯示工作的設(shè)備的個數(shù),就顯示1。當再次按下按鍵5時,5號發(fā)光二極管滅,數(shù)碼管顯示0。
當同時按下兩個鍵3和4時,3號和4號二極管亮,數(shù)碼管顯示2。
當按下按鍵7時,所有設(shè)備都不工作,數(shù)碼管顯示0,發(fā)光二極管都不發(fā)光。
當按下按鍵8時,所有設(shè)備都工作,數(shù)碼管顯示6,發(fā)光二極管都發(fā)光。
本設(shè)計在調(diào)試過程中也遇到很多問題。
(1) 電路要求遙控控制距離為4—6m,在利用38KHz的接收頭時,雖然能接收到信號,但是接收的距離很有限。經(jīng)過反復調(diào)試,換用40KHz的接收頭時基本滿足了設(shè)計需求。
(2) 由于將3ms的接收脈沖放在1ms的后面,編碼解調(diào)出現(xiàn)錯誤,導致接受端無信號輸出。解決方法是將3ms的接收脈沖放在前面就可以接收到信號。因為在電路的解碼過程中,單片機進行數(shù)碼幀的接收處理,首先是對3ms的脈沖檢驗,當?shù)谝晃坏碗娖酱a的脈寬小于2ms時就會錯誤處理。
在初始化過程中,將P1口全置0,但是繼電器仍工作,通過反復調(diào)試,將初始化的P1口全置1,通過反向使得輸出全為0,從而滿足上電復位,繼電器掉電,滿足初始化要求。
8結(jié)論
由于目前的遙控裝置大多對某一設(shè)備進行單獨控制,而在本設(shè)計中的紅外遙控電路設(shè)計了多個控制按鍵,可以對不同的設(shè)備,也可以對同一設(shè)備的多個功能進行不同的控制?;痉霞夹g(shù)要求。
但是本電路也有不完善的地方,它只能單通道實現(xiàn)對多個設(shè)備的控制,即它不能同時控制兩個或者兩個以上的設(shè)備。
在設(shè)計過程中,通過大量的查閱資料,認真研究教材,對單片機有了更為深刻的理解,在設(shè)計軟件時,須仔細的分析硬件電路,畫出程序流程圖,培養(yǎng)了我的耐性和刻苦鉆研的精神。
參考文獻
[1]全國大學生電子設(shè)計競賽組委會.第五屆全國大學生電子設(shè)計競賽獲獎作品選編,第1版,北京理工大學出版社,2005年,P10-17.
[2]康華光,陳大欽.電子技術(shù)基礎(chǔ)模擬部分,第4版,高等教育出版社,1999年,第四版,P82-155.
[3]康華光,鄒壽彬.電子技術(shù)基礎(chǔ)數(shù)字部分,第4版,高等教育出版社,2000年,第四版, P83-155.
[4]李錦春,蔡仁明.常用晶體二極管、大功率三極管手冊,人民郵電出版社,1981年,第一版, P23-55.
[5]黃智偉,王彥,陳文光.全國大學生電子設(shè)計競賽訓練教程,第1版,電子工業(yè)出版社,2005年,P304-P314.
[6]吳金戌,沈慶陽,郭庭吉.8051單片機實踐與應(yīng)用,第1版,清華大學出版社,2002年,P147-167.
[7]青木英彥.模擬電路的設(shè)計與制作,第1版,科學出版社,2005年, 119-131.
[8]李廣弟,朱月秀,王秀山.單片機基礎(chǔ),第2版,北京航空航天大學出版社,2001年,P13-71.
[9]梅麗風,王艷秋,張軍等.單片機原理及接口技術(shù),第1版,清華大學出版社,2004年,P296-323.
[10]何立民.單片機應(yīng)用文集,第一版,北京航空航天大學出版社,1991, P1-310.
[11]何立民.單片機應(yīng)用系統(tǒng)設(shè)計——系統(tǒng)配置與接口技術(shù),第2版,北京航空航天大學出版社,1995,P31-175.
[12]趙亮,侯國銳.單片機C語言編程與實例,第一版,人民郵電出版社,2003.9, P1-152.
[13]劉勝利.新型顯示器電路分析,第一版,電子工業(yè)出版社,1999,P122-344.
[14]胡偉.單片機C程序設(shè)計及應(yīng)用實例人民郵電出版社,2003.7,P1-247.
[15]實用電子元器件手冊.上海科學技術(shù)出版社,1998.2,P1-21.
[16]李廣弟等.單片機基礎(chǔ),北京航空航天大學出版社,2002.6,P1-223.
[17] Michael A. Miller. Data and Network Communications,第一版,科學出版社,2002年
[18] J.Bhasker著,徐振林譯..Verilog HDL硬件描述語言,第一版,電子工業(yè)出版社,2004年
附錄1:發(fā)射程序
ORG 0000H ;程序執(zhí)行開始地址
AJMP START ;跳至START執(zhí)行
ORG 001BH ;定時器T1中斷入口地址
LJMP INTT1 ;跳至INTT1中斷服務(wù)程序
ORG 0030H
START: MOV SP,#70H ;設(shè)堆棧基址為70H
CLR P3.5 ;關(guān)遙控輸出
MOV IE,#00H ;關(guān)所有中斷
MOV IP,#01H ;設(shè)優(yōu)先級
MOV TMOD,#22H ;8位自動重裝初值模式
MOV TH1,#0F3H ;定時為13微秒初值
MOV TL1,#0F3H ;
SETB EA ;開總中斷允許
;鍵盤
MOV P1,#0FFH
JIAN: LCALL DELAY2
MOV A,P1
CJNE A,#0FFH,JIAN1
LJMP JIAN
JIAN1:MOV A,P1
CJNE A,#0FEH,JIAN2
LJMP MN4
JIAN2:MOV A,P1
CJNE A,#0FDH,JIAN3
LJMP MN0
JIAN3:MOV A,P1
CJNE A,#0FBH,JIAN4
LJMP MN6
JIAN4:MOV A,P1
CJNE A,#0F7H,JIAN5
LJMP MN2
JIAN5:MOV A,P1
CJNE A,#0EFH,JIAN6
LJMP MN5
JIAN6:MOV A,P1
CJNE A,#0DFH,JIAN7
LJMP MN1
JIAN7:MOV A,P1
CJNE A,#0BFH,JIAN8
LJMP MN3
JIAN8:MOV A,P1
CJNE A,#07FH,NN
LJMP MN7
NN:LJMP JIAN
mn0: MOV A,#02H ;發(fā)2個脈沖
LCALL REMOTE ;轉(zhuǎn)發(fā)送程序
ajmp nn
mn1: MOV A,#03H ;發(fā)3個脈沖
LCALL REMOTE ;轉(zhuǎn)發(fā)送程序
ajmp nn
mn2: MOV A,#04H ;發(fā)4個脈沖
LCALL REMOTE ;轉(zhuǎn)發(fā)送程序
ajmp nn
mn3: MOV A,#05H ;發(fā)5個脈沖
LCALL REMOTE ;轉(zhuǎn)發(fā)送程序
ajmp nn
mn4: MOV A,#06H ;發(fā)6個脈沖
LCALL REMOTE ;轉(zhuǎn)發(fā)送程序
ajmp nn
mn5: MOV A,#07H ;發(fā)7個脈沖
LCALL REMOTE ;轉(zhuǎn)發(fā)送程序
ajmp nn
mn6: MOV A,#08H ;發(fā)8個脈沖
LCALL REMOTE ;轉(zhuǎn)發(fā)送程序
ajmp nn
mn7: MOV A,#09H ;發(fā)9個脈沖
LCALL REMOTE ;轉(zhuǎn)發(fā)送程序
ajmp nn
;mn8: MOV A,#0AH ;發(fā)10個脈沖
; LCALL REMOTE ;轉(zhuǎn)發(fā)送程序
; ajmp nn
;mn9: MOV A,#0BH ;發(fā)11個脈沖
; LCALL REMOTE ;轉(zhuǎn)發(fā)送程序
; ajmp nn
;mn10: MOV A,#0CH ;發(fā)12個脈沖
; LCALL REMOTE ;轉(zhuǎn)發(fā)送程序
; ajmp nn
;mn11: MOV A,#0DH ;發(fā)13個脈沖
; LCALL REMOTE ;轉(zhuǎn)發(fā)送程序
; ajmp nn
;mn12: MOV A,#0EH ;發(fā)14個脈沖
; LCALL REMOTE ;轉(zhuǎn)發(fā)送程序
; ajmp nn
;mn13: MOV A,#0FH ;發(fā)15個脈沖
; LCALL REMOTE ;轉(zhuǎn)發(fā)送程序
; ajmp nn
;mn14: MOV A,#10H ;發(fā)16個脈沖
; LCALL REMOTE ;轉(zhuǎn)發(fā)送程序
; ajmp nn
;mn15: MOV A,#11H ;發(fā)17個脈沖
; LCALL REMOTE ;轉(zhuǎn)發(fā)送程序
; ajmp nn
;*************************************
;* 編 碼 發(fā) 射 程 序 *
;*************************************
REMOTE: MOV R1,A ;裝入發(fā)射脈沖個數(shù)
LJMP OUT3 ;轉(zhuǎn)第一個碼發(fā)射處理
OUT: MOV R0,#55H ;1MS寬低電平發(fā)射控制數(shù)據(jù)
OUT1: SETB ET1 ;開T1中斷
SETB TR1 ;開啟定時器T1
NOP ;延時
NOP
NOP
NOP
NOP
DJNZ R0,OUT1 ;時間不到轉(zhuǎn)OUT1再循環(huán)
MOV R0,#32H ;1MS高電平間隙控制數(shù)據(jù)
OUT2: CLR TR1 ;關(guān)定時器T1
CLR ET1 ;關(guān)T1中斷
CLR P3.5 ;關(guān)脈沖輸出
NOP ;空操作延時
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
DJNZ R0,OUT2 ;時間不到轉(zhuǎn)OUT2再循環(huán)
DJNZ R1,OUT ;脈沖未發(fā)完,轉(zhuǎn)OUT再循環(huán)發(fā)射
LCALL DL500MS ;
RET ;
OUT3: MOV R0,#0FFH ;裝發(fā)謝3MS寬控制數(shù)據(jù)
LJMP OUT1 ;轉(zhuǎn)OUT1
;;*************************************
;* 延時513 us *
;*************************************
;513微秒延時程序
DELAY: MOV R2,#0FFH
DELAY1: DJNZ R2,DELAY1
RET
DELAY2: MOV R2,#0FFH
DELAY3: MOV R3,#0FFH
DJNZ R3,$
DJNZ R2,DELAY3
RET
;*************************************
;* 延時10ms *
;*************************************
;10毫秒延時程序
DL10MS: MOV R3,#14H
DL10MS1: LCALL DELAY
DJNZ R3,DL10MS1
RET
;500毫秒延時程序
DL500MS: MOV R4,#32H
DL500MS1: LCALL DL10MS
DJNZ R4,DL500MS1
RET
;*************************************
;* T1中斷服務(wù)程序 *
;*************************************
INTT1: CPL P3.5 ;40kHZ紅外線遙控信號產(chǎn)生
RETI ;中斷返回
END ;程序結(jié)束
附錄2:接收程序
ORG 0000H
LJMP START
ORG 0003H
LJMP INTEX0
ORG 0030H
START: MOV SP,#70H
MOV IE,#00H ;關(guān)所有中斷
SETB EX0 ;開外中斷
SETB EA ;總中斷允許
MOV P1,#00H
MAIN: LCALL DELAY ;持續(xù)512微秒
MOV 31H,#00H
MOV 30H,P1
MOV R7,#08H
XUN: CLR C
MOV A,30H
RLC A
MOV 30H,A
MOV A,31H
ADDC A,#00H
MOV 31H,A
DJNZ R7,XUN
MOV A,31H
SWAP A
MOV P2,A
LJMP MAIN ;轉(zhuǎn)MAIN循環(huán)
NOP ;PC值出錯處理
LJMP START ;出錯時重新初始化
;******************************
; 遙控接收程序
;******************************
;采用中斷接收
INTEX0: MOV 32H,A
MOV 20H,C
CLR EX0 ;關(guān)外中斷
JNB P3.1,READ1 ;P3.5口為低電平轉(zhuǎn)READ1
READOUTT0: SETB EX0 ;P3.5口為高電平開中斷(系干擾)
MOV A,32H
MOV C,20H
RETI ;退出中斷
READ1: CLR A ;清A
MOV DPH,A ;清DPTR
MOV DPL,A ;
HARD1: JB P3.1,HARD11 ;P3.5變高電平轉(zhuǎn)HARD11
INC DPTR ;用DPTR對低電平計數(shù)
NOP ;1微秒延時
NOP
AJMP HARD1 ;轉(zhuǎn)HARD1循環(huán)(循環(huán)周期為8微秒)
HARD11: MOV A,DPH ;DPTR高8位放入A
JZ READOUTT0 ;為0(脈寬小于8*255=2毫秒)退出
CLR A ;不為0說明是第一個寬脈沖(3毫秒)
READ11: INC A ;脈沖個數(shù)計1
READ12: JNB P3.1,READ12 ;低電平時等待
MOV R1,#06H ;高電平寬度判斷定時值
READ13: JNB P3.1,READ11 ;變低電平時轉(zhuǎn)READ11脈沖計數(shù)
LCALL DELAYREAD ;延時(512微秒)
DJNZ R1,READ13 ;6次延時不到轉(zhuǎn)READ13再延時
DEC A ;超過3毫秒判為結(jié)束,減1
DEC A ;減1
JZ FUN0 ;為0執(zhí)行FUN0(2個脈沖)
DEC A ;減1
JZ FUN1 ;為0執(zhí)行FUN1(3個脈沖)
DEC A ;
收藏