51单片机解析adxl335振动检测蜂鸣器报警课设
 通过按键调整振动检测阈值
传感器介绍
TLC2543:12 位精密模数转换器,原理图与引脚功能描述如下所示:
 
| 引脚 | 功能 | 
|---|---|
| 1~9、11、12 | 模拟量输入通道 | 
| 10 | GND电源地 | 
| 13 | REF-为负基准电压端 | 
| 14 | REF+为正基准电压端 | 
| 15 | CS 为片选端 | 
| 16 | DOUT为A/D转换结果的三态串行输出端;(A/D转换结果的输出端。) | 
| 17 | DIN 为串行数据输入端;(控制字输入端,用于选择转换及输出数据格式) | 
| 18 | CLK为I/O时钟;(控制输入输出的时钟,由外部输入。) | 
| 19 | EOC为转换结束端 | 
| 20 | VCC为电源 | 
ADXL335:加速度传感器,量程±3g。可测量倾斜感应应用中由于重力引起的静态加速度,以及由于运动冲击或振动而产生的动态加速度。传感器的工作电压为1.8V至3.6V DC,接线说明见下图。
 官网手册
 
 
| 引脚 | 功能描述 | 
|---|---|
| 1 | VCC电源 | 
| 2 | X轴加速度输出 | 
| 3 | Y轴加速度输出 | 
| 4 | Z轴加速度输出 | 
| 5 | GND电源 | 
| 6 | 自测引脚 | 
51单片机proteus仿真过程

部分接口与标志位定义
//定义蜂鸣器的端口
sbit buzz=P3^7;					  //蜂鸣器
//定义按键的端口
sbit key1=P1^0;					  //按键设置阈值+
sbit key2=P1^1;					  //按键设置阈值-
sbit key3=P1^2;					  //按键设置报警开关
//定义TLC2543的端口
sbit ADout=P2^0;				  //AD接收口
sbit ADin= P2^1;				  //选择通道
sbit CS=   P2^2;				  //片选端
sbit CLK=  P2^3;				  //时钟时序
sbit EOC=  P2^4;				  //AD转换结束端
//定义LCD1602的端口
#define lcd_ouput P0		  	  //P1口连了双向数据线
sbit RS=P2^5;		          	  //寄存器选择端                     
sbit RW=P2^6;				      //读写信号线
sbit EN=P2^7;			  	 	  //使能端
//定义相关标志位
uchar warn_state=0;				//报警状态
uint ad_data,ad_adjust;			//ad原始数据,ad转换后百分比数据
uint vibrate_cnt=0,threshold=70;//振动超限计数次数,超限阈值默认70。//不计算下限,因为振动为往复运动。
完整资料下载链接
 有问题联系qq:209518616