【资源下载】下载地址如下:
https://docs.qq.com/doc/DTlRSd01BZXNpRUxl
51单片机超声波视力保护器智能防近视坐姿系统10
本系统由STC89C52单片机、到尾开关检测、蜂鸣器报警、超声
波测距及电源组成。
1、拨动开关的位置拨动表示是否打开报警功能,根据距离进行
报警控制,报警关闭不进行报警。
2、启动报警后:
当检测到障碍物在30cm内,蜂鸣器以一种缓慢的频率鸣叫。
当检测到障碍物在20cm内,蜂鸣器以一种一般的频率鸣叫,
当检测到障碍物在10cm内,蜂鸣器以一种较快的频率鸣叫,
其他情况不报警。
#include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义 #include<stdio.h> #include "delay.h" #include "math.h" sbit Buzzer=P1^4; //定义端口 sbit sw=P2^0; //定义端口 sbit Echo=P1^1; //触发使用 sbit Trip=P1^0; char dis0[16]; //串口数据数组 调试用 unsigned long time_20ms=0; //定时器计数 unsigned char buzzerLater =0; //蜂鸣器报警延时 float JuLi; //实际距离 long JlCount=0; //脉冲计数定义变量 unsigned long times =0; //次数检测变量 void TIM2Inital(void); //函数声明 void UART_Init(void); void SendByte(unsigned char dat); void SendStr(unsigned char *s,unsigned char length); void main (void) { TMOD|=0x01; //设T0为方式1,GATE=1; TH0=0; TL0=0; ET0=1; //允许T0中断//**All notes can be deleted and modified**// EA=1; //开启总中断 UART_Init(); TIM2Inital(); SendStr("ready ok!",9); while (1) //主循环 { 点击并拖拽以移动