導航:首頁 > 裝置知識 > 基於單片機的紅外計數裝置設計

基於單片機的紅外計數裝置設計

發布時間:2021-10-15 20:37:52

① 基於單片機的紅外通信裝置

紅外發射器:可以用單片機產生38K的載波,也可以用555振盪產生,也可以用紅外遙控器

紅外接收頭:HS0038,SM0038,T4148,都是一體化紅外接收頭電路十分簡單

設計過程:發射紅外信號,單片機接收,識別紅外信號,9ms低電平,4.5ms高電平,通信的話最好用遙控器,最好有遙控器的編碼方式,遙控器有兩種編碼方式,最常用的是NEC的

看個例子:

#include <reg51.h>

#define c(x) (x*120000/120000)

sbit Ir_Pin=P3^6;
sbit beep=P3^7;
//sbit RELAY=P2^0;
unsigned char code Led_Tab[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,
0xf8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E}; //共陽極數碼顯示碼0-F.
unsigned char code Led_Sel[]={0x7f,0xbf,0xdf,0xef};

unsigned char Led_Buf[4]; //顯示緩沖區
char Led_Index; //位選

unsigned char Ir_Buf[4]; //用於保存解碼結果
void delay_50ms(unsigned int t)
{
unsigned int j;
for(;t>0;t--)
for(j=6245;j>0;j--)
{;}
}

//==============================================================
//數碼管掃描
timer0() interrupt 1 using 1
{
TL0=65536-1000;
TH0=(65536-1000)/256; //定時器0設定約1000us中斷一次,用於數碼管掃描
P0=0xff;
P1=Led_Sel[Led_Index]; //位選
P0=Led_Tab[Led_Buf[Led_Index]]; //段選

if(++Led_Index>3) Led_Index=0; //四個掃描完了,到第一個數碼管
}
//==============================================================
unsigned int Ir_Get_Low()
{
TL1=0;
TH1=0;
TR1=1;
while(!Ir_Pin && (TH1&0x80)==0);
TR1=0;
return TH1*256+TL1;
}
//=============================================================
unsigned int Ir_Get_High()
{
TL1=0;
TH1=0;
TR1=1;
while(Ir_Pin && (TH1&0x80)==0);
TR1=0;
return TH1*256+TL1;
}
//==============================================================
main()
{
unsigned int temp;
char i,j;
Led_Index=1;

TMOD=0x11;
TL0=65536-1000;
TH0=(65536-1000)/256; //定時器0設定約1000us中斷一次,用於數碼管掃描
EA=1;
ET0=1;
TR0=1;

Led_Buf[0]=0;
Led_Buf[1]=0;
Led_Buf[2]=0;
Led_Buf[3]=0; //顯示區設成0
do{
restart:
while(Ir_Pin);
temp=Ir_Get_Low();
if(temp<c(8500) || temp>c(9500)) continue;//引導脈沖低電平9000
temp=Ir_Get_High();
if(temp<c(4000) || temp>c(5000)) continue;//引導脈沖高電平4500
for(i=0;i<4;i++) //4個位元組
for(j=0;j<8;j++) //每個位元組8位
{
temp=Ir_Get_Low();
if(temp<c(200) || temp>c(800)) goto restart;
temp=Ir_Get_High();
if(temp<c(200) || temp>c(2000)) goto restart;
Ir_Buf[i]>>=1;
if(temp>c(1120)) Ir_Buf[i]|=0x80;
}
Led_Buf[0]=Ir_Buf[2]&0xf;
Led_Buf[1]=(Ir_Buf[2]/16)&0xf;
Led_Buf[2]=Ir_Buf[3]&0xf;
Led_Buf[3]=(Ir_Buf[3]/16)&0xf; //顯示結果
P1=Ir_Buf[2];
beep=0;
delay_50ms(2);
beep=1;
//RELAY=0;
//delay_50ms(50);
//RELAY=1;
}
while(1);

}

② 急!基於單片機的生產計數系統的設計

應該是很簡單吧,你用一個外中斷就可以了。用一套紅外發射接受感測器。感測器的接收端接到外中斷。當物品過來是就執行中斷,檢測物品是否通過,通過就記一個數,最好就用數碼管顯示了。如到設定的數目就執行相應的操作,然後再將計數寄存器清零等待下一次操作。

③ 51單片機如何實現紅外計數

可以用中斷,來一次脈沖,中斷一次,中斷裡面賦個變數,中斷一次就自加一次,這樣就行了

④ 基於單片機的光電感測器的計數器設計

計數顯示電路可完成對上述脈沖信號的計數和顯示。圖3是由單片機構成的計數系統框圖。 計數系統以MCS-51系列單片機的8031為核心,8013單片機的外圍擴展了程序存儲器27C256和數據存儲器WM0016DRH,此外,用8255擴展了I/O口,同時具有時鍾單元、掉電保護、看門狗單元、通信單元以及LED(發光二極體)顯示器、鍵盤等。 1)8031單片機及存儲器 8031內含4kb EEPROM程序存儲器,具有功耗低、抗干擾能力強的特點,可安置於監測現場,數據存儲器WM0016DRH是一種多功能非易失性SRAM,特點如下:高速高抗干擾自保持,不怕掉電,上下電百萬次數據無丟失,斷電保護10年有效,既可高速連續讀寫,也可任意地址單位元組操作,無需拼湊頁面,隨機讀寫不需等待,立即有效,輸入輸出TTL/CMOS兼容,上電復位輸出,掉電保護,內置看門狗,電源監測,不用外加電路和電池,且引腳與標准SRAM兼容。 2)計數及顯示 多車道車流量數對應的脈沖通過光電隔離耦合並行輸入至8031單片機的P1口,通過軟體控制和鍵盤設定計數值並用LED加以顯示,可自動循環顯示或定點顯示兩種方式,且兩者相互間可任意切換[4]。 當熱釋電感測器安裝位置固定後,輸入脈沖的脈寬和占空比均取決於高速公路上車輛的車速和車距(脈寬對應車輛感測器有效監視方位內的時間,車速和車距有限定),占空比q小於50%,為了准確拾取車流量信息,通過軟體可實現單片機對每一路並行輸入數據的讀取周期小於脈寬,且將每路各自相鄰的兩讀取周期讀取的數據進行運算(暫存前一個周期讀取的數據),若兩數據為01,則自動計1,否則計0。其中0為前一個周期的讀取數據,此時脈沖為低電平,1為後一個周期的讀取數據,此時脈沖為高電平,從而避免了對脈沖的漏計和重復計數,再把4路的讀數每一周期進行一次加運算,累加後的和就是總的車流量。 將8031單片機內的定時器/計數器設定為工作方式1,構成16位二進制計數器[5],採用動態掃描方式直接驅動5位十進制計數器[5]。採用動態掃描方式直接驅動5位十進制LED顯示,最大計數值達到65536,可記錄4車輛的車流量並顯示一個月內的日流量,累計4車道一個月內的日流量總和,計數器內數據保護時間可達一個月之久。當計數器達到設定值時,聲光報警,可存儲數據,並手動復位。 3)時鍾單元 採用DS12C887實時時鍾晶元,具有顯示具體時間信息的功能,若設計調整和設置按鍵,可方便地對時間進行調整和設置,從而為車流量的統計提供准確的時間數據。 4)串列通信單元 由於單片機系統的數據存儲能力和數據處理能力有限,以及現場實時性要求較高,故單片機現場只能暫時存儲採集到的數據和對數據進行簡單處理,至於大量的數據存儲和後續復雜的數據處理可交給上位機完成,由於大型機具有RS-232標准串列口,所以通過8031單片機TTL電平全雙工串列口,附加RS-232電平轉換電路MAX3232可與上位機實現數據通信。 3 軟體設計 計數系統的程序主要包括系統自檢程序、系統初始化程序、鍵盤掃描程序、按鍵處理程序、顯示程序以及數據採集處理程序等,圖4所示為主程序流程。 4 安裝與調試

⑤ 基於單片機的紅外線計數器

能1:般指示燈
能2:D12發紅外線供檢測器檢測
接電阻R13目限流D12般要超20mA,
4.7K般330歐姆或更即
換用其埠般考慮放排線便

⑥ 求基於單片機的紅外計數器的整體設計,包括單片機程序 郵箱[email protected] 技術指導

市面上有紅外接收頭和紅外發射頭,都是通用的,PDF資料在網路大把
接收部分要用單片機加紅外接收頭來接收38KHz的頻率,
發射部分也可以用另一個單片機加紅外發射頭來發射(可以發射位元組),或者簡單點用555電路來發射38KHz的頻率,
像你只是做紅外計數器,只要能發射38KHz的紅外就行了,要求比較低的,可直接用555電路

⑦ 做一個關於單片機的智能計數器的畢業設計,需要用到一個「紅外發射接收裝置」作為一個檢測部分,

怎麼不用超聲波呢,紅外要求的功耗太高啦,不利於實際應用

閱讀全文

與基於單片機的紅外計數裝置設計相關的資料

熱點內容
鑄造牙用什麼材料最好 瀏覽:219
辦公設備的凈殘值如何 瀏覽:736
騰亞南京塑料五金製品有限公司 瀏覽:744
購機工具箱 瀏覽:720
注塑後機械手用來干什麼 瀏覽:50
水表閥門s代表什麼意思 瀏覽:533
博世電動工具木工專用 瀏覽:38
8匹柴油機飛輪軸承怎麼拆下 瀏覽:884
收割機軸承拿不下來怎麼弄 瀏覽:634
電療儀器指哪些 瀏覽:134
病房測心跳的儀器叫什麼 瀏覽:191
大型設備上崗證怎麼列印 瀏覽:86
諾信數控機床控制系統怎麼連網 瀏覽:839
直播賣貨用什麼設備清晰度好 瀏覽:190
機械裝置拆裝工具 瀏覽:888
防護閥門用字母怎麼代表 瀏覽:115
影視器材設備包括哪些 瀏覽:802
空冷軸承運行中內外溫差多少 瀏覽:769
matlab安裝遺傳演算法工具箱 瀏覽:367
冰櫃為什麼製冷頻繁 瀏覽:474