資料介紹
基于單片機(jī)的紅外門進(jìn)控制系統(tǒng)設(shè)計(jì)與制作:我們所做的創(chuàng)新實(shí)驗(yàn)項(xiàng)目“基于單片機(jī)的紅外門控系統(tǒng)”已基本完成,現(xiàn)將其工作原理簡(jiǎn)要說(shuō)明。
該系統(tǒng)主要分為兩大部分:一是紅外傳感器部分。二是單片機(jī)計(jì)數(shù)顯示控制部分?;倦娐穲D如下:
其中紅外傳感器部分我們采用紅外對(duì)管實(shí)現(xiàn),紅外對(duì)管平行放置,平常處于接收狀態(tài),經(jīng)比較器輸出低電平,當(dāng)有人經(jīng)過(guò)時(shí),紅外線被擋住,接收管接收不到紅外線,經(jīng)比較器輸出高電平。這樣,當(dāng)有人經(jīng)過(guò)時(shí)便會(huì)產(chǎn)生一個(gè)電平的跳變。單片機(jī)控制部分主要是通過(guò)外部?jī)蓚€(gè)中斷判斷是否有人經(jīng)過(guò),如果有人經(jīng)過(guò),由于電平跳變的產(chǎn)生,進(jìn)入中斷服務(wù)程序,這里我們采用了兩對(duì)紅外傳感器接到兩個(gè)外部中斷口,中斷0作為入口,實(shí)現(xiàn)加1操作,中斷1作為出口,實(shí)現(xiàn)減1操作。另外,我們通過(guò)P0口控制室內(nèi)燈的亮暗,當(dāng)寄存器計(jì)數(shù)值為0時(shí),熄燈,不為0時(shí),燈亮。顯示部分,采用兩位數(shù)碼管動(dòng)態(tài)顯示,如有必要,可以很方便的擴(kuò)展為四位計(jì)數(shù)。
精益求精!在實(shí)驗(yàn)過(guò)程中,我們走了非常多的彎路,做出來(lái)的東西根本不是自己想要的,我們本想做成室內(nèi)只有一個(gè)門的進(jìn)出計(jì)數(shù),原理已清楚,即在門的兩邊放置兩對(duì)紅外對(duì)管,進(jìn)出時(shí),擋住兩對(duì)對(duì)管的順序不同,因此,可判斷是進(jìn)入還是出去,從而實(shí)現(xiàn)加減計(jì)數(shù),編程時(shí),可分別在兩個(gè)中斷服務(wù)程序的入口置標(biāo)志位,根據(jù)標(biāo)志位判斷進(jìn)出,詳細(xì)內(nèi)容在程序部分。理論如此,但在實(shí)際過(guò)程中,還是發(fā)現(xiàn)實(shí)現(xiàn)不了上述功能,我們初步判定認(rèn)為是程序掌握得不夠好,相信隨著自己對(duì)單片機(jī)了解的深入,應(yīng)該會(huì)做出更好的 (因?yàn)槲覀兪桥R時(shí)學(xué)的單片機(jī)),程序的具體內(nèi)容如下:
$MOD52?
? ORG?? 0000H
???????? LJMP? MAIN
???????? ORG?? 0003H
???????? LJMP? 0100H
???????? ORG?? 0013H
???????? LJMP? 0150H
???????? ORG?? 0050H
MAIN:??? CLR?? A
???????? MOV?? 30H , A?????????? ;初始化緩存區(qū)
???????? MOV?? 31H , A
???????? MOV?? 32H , A
???????? MOV?? 33H , A
???????? MOV?? R6? , A
???????? MOV?? R7? , A
? SETB? EA
? SETB? EX0
? SETB? EX1
? SETB? IT0
? SETB? IT1
? SETB? PX1
NEXT1:?? ACALL HEXTOBCDD??????? ;調(diào)用數(shù)制轉(zhuǎn)換子程序
???????? ACALL DISPLAY????????? ;調(diào)用顯示子程序
???????? LJMP? NEXT1
???????? ORG?? 0100H? ;中斷0服務(wù)程序
?LCALL? DELY
?mov 70h,#2
?djnz 70h,next
?JBC? F0,NEXT
??????? SETB F0
??????? CLR P0.0
?LCALL? DELY0
?SETB?? P0.0????????
???????? MOV?? A , R7
? ?ADD?? A , #1
? ?MOV?? R7, A
? ?MOV?? A , R6
???????? ADDC? A , #0
? MOV?? R6 , A
? CJNE? R6 , #07H , NEXT
? CLR?? A
? MOV?? R6 , A
? MOV?? R7 , A
NEXT:? RETI
? ORG?? 0150H? ??;中斷1服務(wù)程序
?LCALL? DELY
?mov 70h,#2
?djnz 70h,next2
?JBC? F0,NEXT2
?SETB? F0
?CLR P0.0
?LCALL? DELY0
?SETB?? P0.0??
?CLR C???????????
???????? MOV?? A , R7
?
? SUBB?? A , #1
? MOV?? R7, A
? MOV?? A , R6
?? SUBB? A , #0
? MOV?? R6 , A
? CJNE? R6 , #07H , NEXT2
? CLR?? A
? MOV?? R6 , A
? MOV?? R7 , A
NEXT2:? RETI
? ORG?? 0200H
HEXTOBCDD:MOV? A , R6?????????????? ;由十六進(jìn)制轉(zhuǎn)化為十進(jìn)制
???????? PUSH? ACC
???????? MOV?? A , R7
???????? PUSH? ACC
? MOV?? A , R2
???????? PUSH? ACC
? CLR?? A
???????? MOV?? R3 , A
? MOV?? R4 , A
? MOV?? R5 , A
? MOV?? R2 , #10H
HB3:???? MOV?? A? , R7????????????? ;將十六進(jìn)制中最高位移入進(jìn)位位中
???????? RLC?? A
? MOV?? R7 , A
? MOV?? A? , R6
? RLC?? A
? MOV?? R6 , A
? MOV?? A? , R5????????????? ;每位數(shù)加上本身相當(dāng)于將這個(gè)數(shù)乘以2
? ADDC? A? , R5
? DA??? A
? MOV?? R5 , A
? MOV?? A? , R4
? ADDC? A? , R4
? DA??? A?????????????????? ;十進(jìn)制調(diào)整
? MOV?? R4 , A
? MOV?? A? , R3
? ADDC? A? , R3
? DJNZ? R2 , HB3
? POP?? ACC
? MOV?? R2 , A
? POP?? ACC
? MOV?? R7 , A
? POP?? ACC
? MOV?? R6 , A
? RET
? ORG?? 0250H
DISPLAY:
?MOV?? R0 , #30H
???????? MOV?? A? , R5
? ANL?? A? , #0FH
? MOV?? @R0 , A
? MOV?? A? , R5
? SWAP? A
? ANL?? A? , #0FH
? INC?? R0
? MOV?? @R0 , A
? MOV?? A? , R4
? ANL?? A , #0FH
? INC?? R0
? MOV?? @R0 , A
? MOV?? A?? , R4
? SWAP? A
? ANL?? A? , #0FH
? INC?? R0
? MOV?? @R0 , A
? MOV?? R0 , #30H
? MOV?? R2 , #11111110B
AGAIN:?? MOV?? A? , R2
???????? MOV?? P2 , A
???????? MOV?? A? , @R0
? MOV?? DPTR , #TAB
? MOVC? A? , @A+DPTR
? MOV?? P1 , A
? ACALL DELAY
? INC?? R0
? MOV?? A? , R2
? RL??? A
? MOV?? R2 , A
? JB??? ACC.4? , AGAIN
? RET
TAB:???? DB??? 03FH , 06H , 5BH , 4FH , 66H , 6DH , 7DH , 07H , 7FH , 6FH?? ;七段碼表
DELY:??? MOV?? R1,#80
D1:??????? MOV??? R2,#100
???????????? DJNZ?? R2,$
?DJNZ??? R1,D1
?RET?
DELAY:?? MOV?? TMOD , #01H?????????? ;延時(shí)子程序
???????? MOV?? TL0? , #0FEH
???????? MOV?? TH0? , #0FEH
? SETB? TR0
WAIT:??? JNB?? TF0? , WAIT
???????? CLR?? TF0
? CLR?? TR0
? RET
DELY0:?? MOV? R1,? #200
D3:? MOV? R2,#250
???????? DJNZ? R2,$
? DJNZ? R1,D3
?
? RET?
???????? END??????
該系統(tǒng)實(shí)際應(yīng)用廣泛??捎迷谏a(chǎn)線上產(chǎn)品數(shù)量統(tǒng)計(jì)、公交車智能計(jì)數(shù)問(wèn)候(需添加語(yǔ)音芯片)、超市內(nèi)人數(shù)統(tǒng)計(jì)等公共場(chǎng)合。另外,添加串口通信部分便可實(shí)現(xiàn)與PC數(shù)據(jù)交換的功能。
?? 由于,實(shí)驗(yàn)簡(jiǎn)化了,剩下不少零件和資金,所以我們又做了兩項(xiàng)其他的實(shí)驗(yàn)。
- 基于AVR單片機(jī)的汽車空調(diào)控制系統(tǒng)仿真設(shè)計(jì)包含仿真及源程序 5次下載
- 基于單片機(jī)恒溫控制系統(tǒng)程序和仿真設(shè)計(jì)
- 基于51單片機(jī)簡(jiǎn)易示波器設(shè)計(jì)OLED顯示(包含源程序原理圖PCB)
- 基于51單片機(jī)毫安微安電流表設(shè)計(jì)(包含源程序原理圖PCB)
- 基于52單片機(jī)的電池管理系統(tǒng)(BMS)仿真設(shè)計(jì)(包含仿真和源程序)
- 單片機(jī)控制步進(jìn)電機(jī)的源程序免費(fèi)下載 38次下載
- 單片機(jī)的應(yīng)該源程序精華合集免費(fèi)下載 22次下載
- 學(xué)單片機(jī)的40個(gè)實(shí)驗(yàn)含電路圖和源程序 50次下載
- 單片機(jī)水塔控制系統(tǒng)源程序 13次下載
- 基于單片機(jī)控制的紅外防盜報(bào)警器設(shè)計(jì) 138次下載
- 基于單片機(jī)的紅外門禁控制系統(tǒng)設(shè)計(jì)與制作(含源程序和原理圖) 40次下載
- MCS-51單片機(jī)溫度控制系統(tǒng)的設(shè)計(jì)
- MCS-51單片機(jī)溫度控制系統(tǒng)的設(shè)計(jì)
- 51單片機(jī)讀寫u盤(含源程序和原理圖)
- 單片機(jī)萬(wàn)年歷設(shè)計(jì)(含程序和原理圖以及PCB文件)
- 基于STM32單片機(jī)的智能冰箱控制系統(tǒng)設(shè)計(jì) 1324次閱讀
- 基于單片機(jī)的步進(jìn)電機(jī)控制系統(tǒng)設(shè)計(jì) 5553次閱讀
- 單片機(jī)最小系統(tǒng)原理圖講解 1.5w次閱讀
- 單片機(jī)控制輪流交替閃爍跑馬燈設(shè)計(jì) 2417次閱讀
- 基于單片機(jī)的閉環(huán)控制系統(tǒng)的設(shè)計(jì)解決方案 4559次閱讀
- 基于PIC16F628單片機(jī)的PVS控制系統(tǒng)設(shè)計(jì) 1496次閱讀
- SM8954A單片機(jī)在步進(jìn)電機(jī)鐵芯扭槽疊扣沖壓控制系統(tǒng)中的應(yīng)用 989次閱讀
- 51單片機(jī)對(duì)智能溫控器的設(shè)計(jì) 4288次閱讀
- 單片機(jī)最小系統(tǒng)板制作方法 2.3w次閱讀
- 一文教你如何用單片機(jī)系統(tǒng)制作微型打印機(jī) 5502次閱讀
- 單片機(jī)控制花樣流水燈原理圖及程序 5.5w次閱讀
- 89C51單片機(jī)的步進(jìn)電動(dòng)機(jī)控制系統(tǒng)設(shè)計(jì) 1.4w次閱讀
- 基于單片機(jī)的家庭防火防盜控制系統(tǒng)的設(shè)計(jì) 1.3w次閱讀
- 單片機(jī)控制系統(tǒng)中實(shí)現(xiàn)DMA數(shù)據(jù)傳送方法介紹 1.1w次閱讀
- 單片機(jī)控制系統(tǒng)中不可缺少的“中斷”基礎(chǔ)知識(shí) 1846次閱讀
下載排行
本周
- 1TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 2開關(guān)電源基礎(chǔ)知識(shí)
- 5.73 MB | 6次下載 | 免費(fèi)
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計(jì)
- 0.60 MB | 3次下載 | 免費(fèi)
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 0.61 MB | 2次下載 | 免費(fèi)
- 651單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費(fèi)
- 751單片機(jī)大棚環(huán)境控制器仿真程序
- 1.10 MB | 2次下載 | 免費(fèi)
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6653次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191185次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論