毕业设计 单片机交通安全车辆测速系统 - 嵌入式 物联网
文章目錄
- 0 前言
- 1 簡介
- 2 主要器件
- 3 實現效果
- 4 設計原理
- 4.1 槽型光耦測速模塊
- 4.2 LCD1602顯示模塊
- 5 部分核心代碼
- 6 最后
0 前言
🔥 這兩年開始畢業設計和畢業答辯的要求和難度不斷提升,傳統的畢設題目缺少創新和亮點,往往達不到畢業答辯的要求,這兩年不斷有學弟學妹告訴學長自己做的項目系統達不到老師的要求。
為了大家能夠順利以及最少的精力通過畢設,學長分享優質畢業設計項目,今天要分享的是
🚩 **基于單片機的交通安全車輛測速系統 **
🥇學長這里給一個題目綜合評分(每項滿分5分)
- 難度系數:4分
- 工作量:4分
- 創新點:3分
1 簡介
基于51單片機的速度檢測系統,利用速度檢測模塊檢測速度和路程,通過LCD1602顯示屏進行速度和路程的顯示,速度檢測模塊內通過檢測每次通過的時間,進而實現對速度的檢測。
2 主要器件
- 52單片機
- 槽型光耦測速模塊
- LCD1602顯示屏
3 實現效果
4 設計原理
4.1 槽型光耦測速模塊
簡介
槽型光耦以光為媒介傳輸電信號。它對輸入、輸出電信號有良好的隔離作用,所以,它在各種電路中得 1553b耦合器線纜接頭到廣泛的應用。目前它已成為種類最多、用途最廣的光電器件之一。光耦合器一般由三部分組成:光的發射、光的接收及信號放大。輸入的電信號驅動發光二極管(LED),使之發出一定波長的光,被光探測器接收而產生光電流,再經過進一步放大后輸出。這就完成了電—光—電的轉換,從而起到輸入、輸出、隔離的作用。由于光耦合器輸入輸出間互相隔離,電信號傳輸具有單向性等特點,因而具有良好的電絕緣能力和抗干擾能力。又由于光耦合器的輸入端屬于電流型工作的低阻元件,因而具有很強的共模抑制能力。所以,它在長線傳輸信息中作為終端隔離元件可以大大提高信噪比。在計算機數字通信及實時控制中作為信號隔離的接口器件,可以大大增加計算機工作的可靠性。槽型光耦作為一種非常常見的電子元件,在電子電路系統設計的過程中,其選型的正確與否是非常重要的。槽型光耦合器也常常被稱為直射式光電傳感器,其工作原理是通過對紅外發射光的阻斷和導通,在紅外接收管感應出的電流變化來實現開和關的判斷。光電耦合器具有體積小、使用壽命長、工作溫度范圍寬、抗干擾性能強。無觸點且輸入與輸出在電氣上完全隔離等特點,因而在各種電子設備上得到廣泛的應用。光電耦合器可用于隔離電路、負載接口及各種家用電器等電路中。
模塊原理圖
特點
槽型光耦的特點
- 檢測距離長。與接近開關等比較,光電開關的檢測距離非常長,且是無接觸式的,所以不會損傷檢測物體,也不受檢測物體的影響。
- 幾乎不受檢測物體的制約。由于是采用對檢測對象的表面進行反射及光透過方式,不像接近開關只能對金屬,還能對玻璃、塑料、木制物體、液體等各種物質進行檢測。
- 響應速度快。與接近開關同樣,由于無機械運動,所以能對高速運動的物體進行檢測。鏡頭容易受有機塵土等的影響鏡頭免受污染后,光會散射或被遮光,所以在有活水蒸汽、塵土等較多的環境下使用的場合,需施加適當的保護裝置。
- 不受環境強光的影響。幾乎不受一般照明光的影響,但像太陽光那樣的強光直接照射受光體時,會造成誤動作或損壞。
4.2 LCD1602顯示模塊
簡介
作為各類單片機實物設計的常用顯示屏,LCD1602是一種專門用于顯示字母、數字、符號等點陣式LCD,其1602是指LCD顯示的內容為16X2,即可以顯示兩行,每行16個字符(1個漢字占用2個字符)。這里需要要注意的是lcd1602是不能顯示漢字的,它只能顯示字母字符。
引腳功能
控制指令集
5 部分核心代碼
/*定時器0中斷號1*/ void Time0() interrupt 1 { TH0 = 0xDC; //11.0592M晶振下裝入10ms初值TL0 = 0x00;time++;if(time == 100){Wheel_Speed = ( Angular_N / 20 ) * 2 * 3.5 * 3.14 ; //獲取1s內中斷計數的值num,并進行數值處理 (中斷數值/20*直徑*3.14為1s內移動距離)time = 0; Angular_N = 0;} }/*外部中斷0初始化*/ void Int0Init() {IT0 = 1; //跳變沿出發方式(下降沿)EX0 = 1; //打開INT0的中斷允許EA = 1; //打開總中斷 }/*外部中斷0的中斷函數*/ void Int0() interrupt 0 {Angular_N++; } #include"lcd1602.h"sbit rs=P2^6; //1602的數據/指令選擇控制線 sbit rw=P2^5; //1602的讀寫控制線 sbit en=P2^7; //1602的使能控制線void delay(uint n) //延時函數 { uint x,y; for(x=n;x>0;x--) for(y=110;y>0;y--); } void Busy(void) {uchar temp=0;do{rw=1;rs=0;en=0;_nop_();en=1;delay(1);en=0;temp=P0;}while(temp&0x80); }void Lcd_WriteCom(uchar com) //1602寫命令函數 { P0=com; //把命令字送入P2en=0; rs=0; //選擇指令寄存器rw=0; //選擇寫_nop_();//一個機械周期 en=1; //使能線電平變化,命令送入1602的8位數據口 delay(1);en=0; } void Lcd_WriteData(uchar dat) //1602寫數據函數 { P0=dat; //把要顯示的數據送入P0en=0; rs=1; //選擇數據寄存器 rw=0; //選擇寫 _nop_();//一個機械周期 en=1; //使能線電平變化,數據送入1602的8位數據口 delay(1);en=0; } void lcd_init() //1602初始化函數 { delay(1);Lcd_WriteCom(0x38); //8位數據,雙列,5*7字形 Busy();Lcd_WriteCom(0x0c); //開啟顯示屏,關光標,光標不閃爍 Busy();Lcd_WriteCom(0x06); //顯示地址遞增,即寫一個數據后,顯示位置右移一位 Busy();Lcd_WriteCom(0x01); //清屏 Busy();Lcd_WriteCom(0x80); //設置數據指針起點 }6 最后
總結
以上是生活随笔為你收集整理的毕业设计 单片机交通安全车辆测速系统 - 嵌入式 物联网的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 两点定位算法
- 下一篇: ecc椭圆加密算法c语言,ECC算法介绍