499【畢設課設】基於51微控制器汽車防側翻傾倒陀螺儀霍爾測速超速報警
阿新 • • 發佈:2020-12-05
【資源下載】下載地址如下:
https://docs.qq.com/doc/DTlRSd01BZXNpRUxl
51微控制器汽車防側翻傾倒陀螺儀霍爾測速超速報警7
本系統由STC89C52微控制器、霍爾測速模組、LCD1602液晶顯示、
陀螺儀MPU6050模組、按鍵、電機控制、蜂鳴器報警+電源組成。
1、通過霍爾感測器檢測車輛實時速度。
2、通過陀螺儀檢測車輛的X軸和Z軸的角度。
3、將車輛的最大速度值和翻車的角度閾值寫入程式中,當傾斜
角度超過閾或者當前速度超過速度閾值時,蜂鳴器報警。
4、液晶1602第一行顯示車輛型別,第二行顯示轎車當前X軸和
Z軸的角度。並且通過一個按鍵切換顯示車輛的型別.
分別有:Car、Bus、Truck。
Car 角度:+15 -15 車速:3.0
Bus 角度:+25 -25 車速:2.4
Truck 角度:+35 -35 車速:2.0
#include<reg52.h> //包含標頭檔案,一般情況不需要改動,標頭檔案包含特殊功能暫存器的定義 #include<stdio.h> #include "1602.h" #include "delay.h" sbit key = P1^0; //引腳定義 sbit buzzer = P1^1; #define STEP_ONE 0x01 //常量定義 #define STEP_TWO 0x02 unsigned char step=STEP_ONE; //接收步驟 unsigned char record=0; //接收計數 unsigned char ReadMes=0; //讀取資訊 unsigned char ReadFlag=0; //讀取標誌 unsigned long time_20ms=0; //定時器計數 unsigned char ModeFlag = 1; //車輛型別轉換 unsigned char rekey ; // 按鍵防止重複 char xdata dis0[16]; //液晶顯示暫存 char xdata dis1[16]; unsigned char xdata Rebuf[6]; //串列埠暫存 unsigned char DisFlag=1; float xdata Fangle=0; //定義角度變數 俯角 航角 滾角 float xdata Hangle=0; float xdata Gangle=0; unsigned char ReadSuDu=0; //讀取速度標誌