毕业论文基于51单片机的HC-SR04超声波测距系统制作

毕业论文基于51单片机的HC-SR04超声波测距系统制作
毕业论文基于51单片机的HC-SR04超声波测距系统制作

毕业论文基于51单片机的HC-SR04超声波测距系统制作基于51单片机带温度补偿的HC-SR04超声波测距系统

利用从网上购买的HC-SR04超声波模块制作了一个测距装置,HC-SR04自身不带温度补偿功能,所以加上一个使用DS18B20做的温度测量模块。整个系统包括:51单片机最小系统,超声波测距模块、温度测量模块、液晶显示模块。使用了如下主要元器件:

元件说明数量

STC90C516RC 51单片机 1

HC-SR04 超声波测距模块 1

DS18B20 温度测量模块 1

lcd1602 液晶显示模块 1

系统电路图

1

51单片机最小系统

单片机型号:STC90C516,晶振:12Mhz。自己动手焊接的最小系统板。LCD1602A液晶显示模块:

2

HC-SR04超声波测距模块

HC-SR04超声波测距模块可提供2cm至400cm的非接触式距离感测功能,测距精度可达3mm;模块自身包括超声波发射器、接收器与控制电路。

实物正反两面图

HC-SR04电气参数:

HC-SR04工作原理及说明:

1、给Trig触发控制信号IO端口至少10us的高电平信号;

2、模块自动发送8个40khz的方波,并自动检测是否有信号返回;

3、有信号返回时,Echo回响信号输出端口输出一个高电平,高电平持续的时间就是超声波从发射到

返回的时间;

4、两次测距时间间隔最少在60ms以上,以防止发射信号对回响信号的影响;

超声波时序图

3

单片机控制HC-SR04超声波测距说明:

原理图中,单片机的P1.7口接HC-SR04的Trig端口,P1.6口接HC-SR04的Echo端口,超声波在传播时碰到障碍物即返回,HC-SR04模块收到回波信号后Echo口输出一个高电平,单片机检测到高电平后即启动计数器开始计数,直到单

片机检测到Echo口变成低电平后结束计数,计数器的计数值乘以单片机计数周期就是超声波从发射到接收的往返时间,即距离S=v*t/2;

由于在室温下,声速受温度的影响,其变化关系为:V=334.1+T*0.61(T为当前

温度),利用DS18B20温度传感器可以得到环境温度,补偿温度对声速的影响。当温度高于26度或低于14度时,上述公式不能完全满足对测量的修正了,所以高于26度时取26度,低于14度时取14度。

距离计算公式为:S=(334.1+T*0.61)*N*T/2 0

T:当前环境温度值

N:计数值

T:单片机计数周期=晶振频率/12(微秒) 0

HC-SR04测量存在不稳定性,所在对同一距离进行多次测量,并对测量结果排序,去除最大和最小值,将余下的求平均值。

程序流程图:

4

程序代码:

/*

* 程序:基于HC-SR04的超声波测距系统

* 单片机型号:STC90C516 12MHz

* 说明:按下K1键后,指示灯点亮,开始连续进行7次超声波测距,每次测距间隔80ms, * 完成后对7次结果排序并将最大的2个数值和最小的2个数值去除,对剩余的 * 3个数值取平均值。完成后指示灯灭,输出结果到LCD1602上。测量超出范围则发出报警声。

* 使用两个IO端口控制HC-SR04触发信号输入和回响信号输出,

* 以及一个T0定时器用于时间计数。

* 使用DS18B20测量环境温度,声速公式:V=334.1m/s+Temperature*0.61, * 单片机晶振为12Mhz(11.953M),计数时为T=1us

* 计算公式:S=(334.1m/s+Temperature*0.61)*N*T/2,N为计数值

=TH0*256+TL0 */

/*包含头文件*/

#include

5

#include

#define Delay4us(){_nop_();_nop_();_nop_();_nop_();}

/*宏定义*/

#define uchar unsigned char //无符号8位

#define uint unsigned int //无符号16位

#define ulong unsigned long //无符号32位

/*全局变量定义*/

sbit K1=P1^0; //按下K1后,开始测距

sbit LEDRed=P1^1; //测距指示灯,亮表示正在测距,灭表示测距完成 sbit BEEP=P1^5; //报警测量超出范围

sbit Trig=P1^7; //HC-SR04触发信号输入

sbit Echo=P1^6; //HC-SR04回响信号输出

float xdata DistanceValue=0.0; //测量的距离值

float xdata SPEEDSOUND; //声速

float xdata XTALTIME; //单片机计数周期 uchar xdata stringBuf[6]; //

数值转字符串缓冲

//LCD1602提示信息

uchar code Prompts[][16]=

{

{"Measure Distance"}, //测量距离

{"- Out of Range -"}, //超出测量范围

{"MAX range 400cm "}, //测距最大值400cm

{"MIN range 2cm "}, //测距最小值2cm

{" "}, //清屏

{" Press K1 Start "} //按键开始测量

};

uchar xdata DistanceText[]="Range: ";//测量结果字符串 uchar xdata TemperatureText[]="Temperature: ";//测量温度值

/*外部函数声明*/

extern void LCD_Initialize(); extern void LCD_Display_String(uchar *, uchar);

extern void ReadTemperatureFromDS18B20(); extern int xdata CurTempInteger;

//毫秒延时函数

void DelayMS(uint ms);

//20微秒延时函数

void Delay20us();

//HCSR04初始化

6

void HCSR04_Initialize(); //测量距离

float MeasuringDistance(); //测距的数值排序求平均

float DistanceStatistics(); //输出距离值到LCD1602上

void DisplayDistanceValue(float dat);

//将无符号的整数转成字符串,返回字符串长度,不包括'\0'结束符 uchar UnsigedIntToString(uint value);

//蜂鸣器

void Beep(uchar time);

//显示温度值

void DisplayTemperatureValue();

//测量距离

float MeasuringDistance() {

//最大定时时间约65ms

TH0=0;

TL0=0;

//生成20us的脉冲宽度的触发信号

Trig=1;

Delay20us();

Trig=0;

//等待回响信号变高电平

while(!Echo);

TR0=1; //启动定时器0

//等待回响信号变低电平

while(Echo);

TR0=0; //关闭定时器0

//返回距离值(mm)

return (SPEEDSOUND*XTALTIME*((float)TH0*256+(float)TL0))/2000; }

//HCSR04初始化

void HCSR04_Initialize()

{

//计算单片机计数周期晶振=11.953M 单位us

7

XTALTIME=12/11.953;

//温度25度时声速的值

SPEEDSOUND=334.1+25*0.61;

Trig=0;

Echo=0;

TMOD=0x01;

}

//输出距离值到LCD1602上

void DisplayDistanceValue(float dat) {

uchar i=0,j=0,len;

uint value;

value=(uint)dat;

//范围检查大于4000mm和小于20mm都为超出测量范围

if(value>4000)

{

LCD_Display_String(Prompts[1],0x00); LCD_Display_String(Prompts[2],0x40); Beep(2);

}

else if(value<20)

{

LCD_Display_String(Prompts[1],0x00); LCD_Display_String(Prompts[3],0x40); Beep(2);

}

else

{

//将数值转换成字符串

len=UnsigedIntToString(value);

//保留1位小数

while(stringBuf[i]!='\0')

{

if(len-j==1)

{

DistanceText[6+j]='.';

j++;

}else

{

DistanceText[6+j]=stringBuf[i];

i++;

j++;

}

}

DistanceText[6+j]='c';

8

j++;

DistanceText[6+j]='m';

i=7+j;

//剩余位置补空格

while(i<16)

{

DistanceText[i]=' ';

i++;

}

//LCD_Display_String(Prompts[0],0x00); LCD_Display_String(DistanceText,0x40);

}

}

//显示温度值

void DisplayTemperatureValue() { TemperatureText[13]=CurTempInteger/10+'0'; TemperatureText[14]=CurTempInteger%10+'0';

TemperatureText[15]='C';

LCD_Display_String(TemperatureText,0x00); }

//将无符号的整数转成字符串,返回字符串长度uchar UnsigedIntToString(uint value) { uchar i=0,t,length;

//从个位开始转换

do

{

stringBuf[i]='0'+value%10;

value=value/10;

i++;

}while(value!=0);

length=i;

//将字符串颠倒顺序

for(i=0;i<(length/2);i++)

{

t=stringBuf[i];

stringBuf[i]=stringBuf[length-i-1]; stringBuf[length-i-1]=t;

}

stringBuf[length]='\0';

return length;

}

9

//蜂鸣器

void Beep(uchar time) {

uchar i;

for(i=0;i<100;i++)

{

BEEP=!BEEP;

DelayMS(time);

}

BEEP=0;

DelayMS(100); }

//延时函数毫秒 @12.000MHz void DelayMS(uint ms) { uchar i, j;

while(ms--)

{

_nop_();

i = 2;

j = 239;

do

{

while (--j);

}while (--i);

}

}

//延时函数 20微秒 @12.000MHz void Delay20us() {

uchar i;

_nop_();

i = 7;

while (--i);

}

//定时器0中断

void Timer0() interrupt 1

{

}

//DS18B20代码:

/*----------------------------------------------

10

* 程序功能: DS18B20温度检测程序

* 单片机型号:STC89C52 12MHz * 晶振: 12Mhz

------------------------------------------------*/

/*包含头文件*/

#include

#include

/*宏定义*/

#define uchar unsigned char //无符号8位 #define uint unsigned int //无符号16位

//定义DS18B20端口DS18B20_DQ

sbit DS18B20_DQ = P3^7;

//当前采集的温度值整数部分

int xdata CurTempInteger; //当前采集的温度值小数部分

int xdata CurTempDecimal;

/*---------------------------------------------------------------- * 功能:延时函数 STC89C52 @12MHz 12T模式 * 参数:无

* 返回:无

----------------------------------------------------------------*/ void Delayus(uint count) {

while (--count);

}

/*---------------------------------------------------------------- * 功能:DS18B20复位及状态检测

* 参数:无

* 返回:0或1,1表示未准备好,0表示准备好 ----------------------------------------------------------------*/

uchar Reset_DS18B20() {

uchar status;

DS18B20_DQ=1;

Delayus(1);

//开始复位过程

DS18B20_DQ=0; //数据线拉低

Delayus(100); //延时480us-960us

DS18B20_DQ=1; //数据线拉高

Delayus(10); //延时15us-60us

11

status=DS18B20_DQ; //读取数据线上的状态

Delayus(120);

return status;

}

/*---------------------------------------------------------------- * 功能:写一字节到DS18B20中

* 参数:dat=数据

* 返回:无

----------------------------------------------------------------*/ void WriteByteToDS18B20(uchar dat) {

uchar i;

for(i=0;i<8;i++)

{

DS18B20_DQ=0;

DS18B20_DQ=dat&0x01; //发送1位数据

Delayus(15); //延时60us以上

DS18B20_DQ=1; //释放总线,等待总线恢复

dat>>=1; //准备下一位数据

}

}

/*---------------------------------------------------------------- * 功能:从DS18B20中读一字节

* 参数:无

* 返回:读取的数据

----------------------------------------------------------------*/ uchar ReadByteFromDS18B20()

{

uchar i,dat=0;

for(i=0;i<8;i++)

{

DS18B20_DQ=0; //拉低总线,产生读信号

dat>>=1;

DS18B20_DQ=1; //释放总线,准备读1位数据 Delayus(2); //延时4us

if(DS18B20_DQ) dat|=0x80; //合并每位数据

Delayus(15); //延时60us

DS18B20_DQ=1; //拉高总线,准备读下1位数据

}

return dat;

}

/*---------------------------------------------------------------- 12

* 功能:读取温度值并转换成有符号的数值形式

* 参数:无

* 返回:无

----------------------------------------------------------------*/ void ReadTemperatureFromDS18B20() {

uchar flag=0;//正负符号标志

//存储当前采集的温度值

uchar TempValue[]={0,0};

if(Reset_DS18B20())

{

CurTempInteger=255;

CurTempDecimal=0;

}

else

{

WriteByteToDS18B20(0xCC);//跳过ROM命令

WriteByteToDS18B20(0x44);//温度转换命令

Reset_DS18B20();//复位

WriteByteToDS18B20(0xCC);//跳过ROM命令

WriteByteToDS18B20(0xBE);//读取温度暂存器命令

TempValue[0]=ReadByteFromDS18B20();//先读低字节温度值TempValue[1]=ReadByteFromDS18B20();//后读高字节温度值

Reset_DS18B20();//复位

//计算温度值

//先进行正温度与负温度判断,高5位全为1(0xF8)则为负数

if((TempValue[1]&0xF8)==0xF8)

{

//负温度计算:取反加1,低字节为0时,高字节取反加1,否则不需要。TempValue[1]=~TempValue[1];

TempValue[0]=~TempValue[0]+1;

if(TempValue[0]==0x00) TempValue[1]++;

flag=1;//负数标志

}

//将温度值分为整数和小数两部分存储(默认为12位精度) CurTempInteger=((TempValue[1]&0x07)<<4)|((TempValue[0]&0xF0)>>4); if(flag) CurTempInteger=-CurTempInteger;

CurTempDecimal=(TempValue[0]&0x0F)*625;

}

}

// LCD1602程序代码:

/*----------------------------------------------

* 程序功能:1602液晶显示程序

* 单片机型号:STC90C160 12MHz

13

------------------------------------------------*/

/*1602液晶显示器控制端口分配,数据使用P0端口*/

sbit LCD_RS=P2^6;

sbit LCD_RW=P2^5;

sbit LCD_EN=P2^7;

/*--------------------------------------------

* 功能:毫秒级延时函数

* 参数:ms=毫秒数值

* 返回:无

--------------------------------------------*/

基于单片机毕业设计(论文)开题报告

徐州工程学院 毕业设计(论文)开题报告 课题名称:基于单片机的住宅小区煤气 泄露实时报警器设计 学生姓名:学号: 指导教师:职称: 所在学院: 专业名称: 徐州工程学院 20 年月3日

说明 1.根据《徐州工程学院毕业设计(论文)管理规定》,学生必须撰写《毕业设计(论文)开题报告》,由指导教师签署意见、教研室审查,学院教学院长批准后实施。 2.开题报告是毕业设计(论文)答辩委员会对学生答辩资格审查的依据材料之一。学生应当在毕业设计(论文)工作前期内完成,开题报告不合格者不得参加答辩。 3.毕业设计开题报告各项内容要实事求是,逐条认真填写。其中的文字表达要明确、严谨,语言通顺,外来语要同时用原文和中文表达。第一次出现缩写词,须注出全称。 4.本报告中,由学生本人撰写的对课题和研究工作的分析及描述,没有经过整理归纳,缺乏个人见解仅仅从网上下载材料拼凑而成的开题报告按不合格论。 5. 课题类型填:工程设计类;理论研究类;应用(实验)研究类;软件设计类;其它。 6、课题来源填:教师科研;社会生产实践;教学;其它

课题 名称 基于单片机的住宅小区煤气泄露实时报警器设计 课题 来源 社会生产实践课题类型工程设计类 选题的背景及意义 近年来随着人民生活水平的提高,管道煤气和罐装煤气已深入到寻常百姓家。但由于使用不当或设备老化等原因导致的煤气泄漏极大地威胁着人们的生命财产安全。煤气泄漏而大量产生的一氧化碳是煤气中毒事件的根源,如采用煤气泄漏报警器就能得到及时的警示。单片机在日用电子产品中的应用越来越广泛,为现代人工作、科研、生活、提供更好的更方便的设施。为了防止中毒事件再次发生,提出利用单片机系统进行有效的预防对策。为此设计出家用煤气泄漏报警控制器。 煤气泄漏的危害 一氧化碳的浓度与健康成年人中毒的可能症状 50ppm 健康成年人在八小时内可以承受的最大浓度 200ppm 2-3小时后,轻微头痛、乏力 400ppm 1-2小时内前额痛;3小时后威胁生命 800ppm 45分钟内,眼花、恶心、痉挛;2小时内失去知觉;2-3小时内死亡1600ppm 20分钟内头痛、眼花、恶心;1小时内死亡 3200ppm 5-10分钟内头痛、眼花、恶心;25-30分钟内死亡 6400ppm 1-2分钟内头痛、眼花、恶心;10-15分钟死亡 12800ppm 1-3分钟内死亡

接口实验报告-基于51单片机的脉搏温度测试系统-

摘要 接口实验报告 题目:脉搏波体温自动采集系统院(系):电子工程与自动化学院 专业:仪器仪表工程 学生姓名: 学号: 指导老师:李智 职称:教授 20 年8月28日 I

摘要 本文介绍了一种基于51单片机的心率体温采集系统。首先介绍了51系列单片机的内部相关配置、工作原理以及编程方法,其次介绍了温度传感器PT100的相关测温方法以及通过红外光电传感器TCRT5000对射的方法来抓取人体脉搏信号。此次设计的电路部分主要包括:传感测量电路、放大电路、滤波整形电路、AD转换电路、控制电路、电源供电电路等。上位机为通过VC编程界面。通过上位机按键控制,将PT100及TCRT5000输入的微弱信号进行放大整形,最后AD采集转换传送给单片机,在上位机界面上显示相关体温及心率信息。 本次硬件设计基于比较稳定可行、低成本的设计思想,软件设计采用模块化的设计方法,并且详细分析了红外传感器TCRT5000应用于心率测量上以及PT100应用于温度测量上的原理及优点,阐述了其他各配合电路的组成与工作特点,并且通过仿真进行电路的可行性验证,最后完成实物电路的设计,使得本次课题的预期结果得以实现。 关键词:51单片机;传感器;仿真;AD转换

Abstract Abstract This paper introduced a heart rate and body temperature acquisition system that based on 51 single chip microcomputer. First the internal configurations of 51 single chip microcomputer are introduced. And the paper also tell how 51 single chip microcomputer works and how can we program on it. Then the method of using temperature sensor PT100 to get body temperature is introduced, and we use infrared photoelectric sensor TCRT5000 to get the pulse signal of human body.The design of the circuit mainly comprises sensing circuit, amplifying circuit, filtering and shaping circuit, AD converting circuit, counting and displaying circuit, controlling circuit, power supplying circuit and so on. When the keyboard is pressed, the system starts to get signal. The small signal from PT100 and TCRT5000 will be amplified and shaped. Then ad converter will change the analog signal into digital signal and send to 51 single chip microcomputer. At last LCD1602 will display the information of body temperature and heart rate. Keywords: Piezoelectric sensors;control circuit;counters;Multisim2001 simulation software control circuit. III

基于51单片机的超声波测距毕业设计(论文)

一设计题目基于51单片机的超声波测距 二设计者 姓名班级学号组号 三、设计思路及框图、原理图 任务:以单片机为核心,设计并制作一超声波测距系统基本要求: 利用时间差测距,不考虑温度变化 用数码管显示测试结果 工作频率:450kHz 测距范围:0.5~10米 测试精度: 10% 发挥部分尽量增大测控范围,提高测试精度 1.系统的硬件结构设计 1.1. 超声波发生电路 发射电路主要由反相器74LS04和超声波发射换能器T构成,单片机P1.0端口输出的450kHz的方波信号一路经一级反向器后送到超声波换能器的一个电极,另一路经两级反向器后送到超声波换能器的另一个电极,用这种推换形式将方波信号加到超声波换能器的两端,可以提高超声波的发射强度。输出端采两个反向器并联,用以提高驱动能力。上位电阻R1O、R11一方面可以提高反向器74LS04输出高电平的驱动能力,另一方面可以增加超声波换能器的阻尼效果,缩短其自由振荡时间。 1.2超声波检测接收电路 采用集成电路CX20106A为超声波接收芯片。实验证明用CX20106A接收超声波(无信号时输出高电平),具有很好的灵敏度和较强的抗干扰能力。适当更改电

容C4的大小,可以改变接收电路的灵敏度和抗干扰能力。 1.3 显示电路 显示电路主要由74ls273芯片驱动,用PNPC8550三级管进行位选,七段共阳极数码管显示。 2.系统的软件结构设计 设计思路 主程序中包括温度补偿子程序,计算子程序,显示子程序。采用汇编编程。首先进行系统初始化。其次利用循环产生4个40KHZ的方波,由输出口进行输出,并开始计时。第三等待中断,若超声波被接收探头捕捉到,那么通过中断可测得

51单片机毕业设计论文

1.1核心芯片8051单片机 (2) 1.2 ADC0809转换芯片 (5) 1.2.1 ADC0809的逻辑结构 (5) 1.2.2 ADC0809 的通道选择 (6) 1.2.3 ADC0809的引脚图及各引脚作用 (6) 1.3 MC14499芯片 (8) 1.3.1.MC14499的结构及功能介绍 (8) 1.3.2 MC14499在单片机中的应用 (10) 1.4 74LS373芯片 (13) 1.5 LED数码管 (15) 1.5.1 LED数码管显示器的结构 (15) 1.5.2 LED数码管显示器的显示段码 (17) 1.5.3 LED显示器的参数 (18) 1.6 X25045 (18) 2 系统硬件设计 (20) 2.1系统设计原理和系统框图 (21) 2.1.1设计原理 (21) 2.1.2系统框图 (21) 2.2液位传感器设计 (22) 2.2.1 传感器原理 (22) 2.2.2 传感器的组成 (22) 2.2.3 测量原理 (23) 2.2.4 将电容转化成电信号部分 (24) 2.2.5 电信号放大电路设计 (25) 2.3 A/D0809模数转换 (25) 2.4 显示电路的设计 (27) 2.5 键盘电路 (29) 2.5.1矩阵式键盘的工作原理 (30) 2.5.2 硬件电路设计及电路图 (30) 2.6 继电器控制水泵加水电路 (31) 2.7 报警电路 (32) 2.8 电源电路 (33) 2.8.1 直流电源电路 (33) 2.8.2 备用电源切换电路 (34) 2.9看门狗电路 (35) 3 系统软件的设计 (38) 3.1 软件设计流程图 (38) 3.2矩阵键盘程序设计 (40) 3.2.1 程序设计内容 (40) 3.2.2系统程序 (40) 3.3 ADC0809模数转换流程图 (42) 4 结论 (45) 附录A (46)

单片机最小系统设计

单片机最小系统设计 时间:2011-05-01 22:47:54 来源:作者: 单片机最小系统设计 该单片机最小系统具有的功能: (1)具有2位LED数码管显示功能。 (2)具有八路发光二极管显示各种流水灯。 (3)可以完成各种奏乐,报警等发声音类实验。 (4)具有复位功能。 功能分析 (1)两位LED数码管显示功能,我们可以利用单片机的P0口接两个数码管来现这个功能;(2)八路发光二极管显示可以利用P1口接八个发光二极管实现这个功能; (3)各种奏乐、报警等发声功能可以采用P2.0这个引脚接一蜂鸣器来实现。 (4)利用单片机的第9脚可以设计成复位系统,我们采用按键复位;利用单片机的18、19脚可以设计成时钟电路,我们利用单片机的内部振荡方式设计的。 设计框图 硬件电路设计 根据本系统的功能,和单片机的工作条件,我们设计出下面的电路图。

元件清单的确定: 数码管:共阴极2只(分立) 电解电容:10UF的一只 30PF的电容2只 220欧的电阻9只 4.7K的电阻一只 1.2K的电阻一只 4.7K的排阻一只, 12MHZ的晶振一只 有源5V蜂名器一只 AT89S51单片机一片 常开按钮开关1只 紧锁座一只(方便芯取下来的,绿色的) 发光二极管(5MM红色)8只 万能板电路版15*17CM S8550三极管一只 4.5V电池盒一只,导线若干。七、硬件电路的焊接 按照原理图把上面的元件焊接好,详细步骤省略。 相关程序编写 针对上面的电路原理图,设计出本单片机最小系统的详细功能:(1)、第一个发光二极管点亮,同时数码管显示“1”。 (2)、第二个发光二极管点亮,同时数码管显示“2”。 (3)、依次类推到第八个发光二极管点亮,同时数码管显示“8”。以上出现的是流水灯的效果 (4)、所有的发光二极管灭了,同时数码管现实“0”。

基于单片机的毕业论文题目有哪些

基于单片机的毕业论文题目有哪些 很多物联网专业的学生对单片机非常感兴趣,不光是对专业的热爱,另外由于单片机是集成电路芯片,是控制整个流程最基础的环节,大多数理科生对这种控制式设计充满着好奇,下面,我们学术堂整理了多个基于单片机的毕业论文题目,欢迎各位借鉴。 基于单片机的毕业论文题目一: 1、基于单片机的压电加速度传感器低频信号采集系统的设计 2、基于单片机的超声测距系统 3、基于C8051F005单片机的两相混合式直线步进电机驱动系统的设计 4、基于单片机的工业在线数字图像检测系统研究与实现 5、基于FPGA的8051单片机IP核设计及应用 6、基于单片机的军需仓库温湿度测控系统研究 7、单片机多主机通信模式在粮库温湿度监控系统中的应用 8、基于单片机的中小水电站闸门控制系统 9、基于单片机的正弦逆变电源研制 10、单片机实验教学仿真系统的设计与开发 11、基于单片机的温湿度检测系统的设计 12、基于单片机的蓝牙接口设计及数据传输的实现 13、基于单片机的多功能温度检测系统的设计与研究 14、基于单片机的温度控制系统的研究 15、行为导向教学策略在职校单片机课程教学中的应用研究 16、逻辑电路与单片机的虚拟实验系统设计与实现

17、基于单片机的LED显示系统 18、基于单片机的校园安防系统 19、基于MSP430单片机的红外甲烷检测仪设计及实现 20、基于高性能单片机的无线LED彩灯控制系统的设计与实现 21、基于AVR单片机教学实验板的设计 22、基于单片机的阀岛控制系统的研究 23、基于AT89S51单片机实验开发系统设计 24、基于单片机和GPRS数据传输技术的研究 25、基于HCS12单片机的智能车底层控制系统研究 26、单片机GPRS智能终端及远程工业监控技术研究 27、基于单片机的MODBUS总线协议实现技术研究 28、基于单片机的室内智能通风控制系统研究 29、基于单片机的通用控制器设计与实现 30、基于单片机控制的PTCR阻温特性测试系统的设计与实现 31、Proteus在单片机教学中的应用 32、基于单片机的变频变压电源设计 33、基于单片机的监控系统控制部分的设计 34、基于单片机的葡萄园防盗报警系统设计 35、基于单片机的温度智能控制系统的设计与实现 36、基于单片机的远程抄表系统的设计与研究 37、基于单片机的温度测控系统在温室大棚中的设计与实现 38、基于单片机的高精度随钻测斜仪系统开发 39、基于16位单片机MC9S12DG128B智能车系统的设计 基于单片机的毕业论文题目二: 40、基于单片机的压力/液位控制系统的设计研究 41、单片机与Internet网络的通信应用研究 42、基于单片机控制的温室环境测控装置研究 43、具有新型接口的MCS-51单片机实验系统设计 44、基于单片机控制的直流恒流源的设计 45、基于单片机的模糊控制方法及应用研究 46、基于AT89S52单片机的煤矿瓦斯监测系统的研制 47、基于AT89C51单片机的脉象信号采集系统研究 48、基于DTMF技术的单片机远程通信系统研究 49、基于单片机的GPRS无线数据采集与传输系统的设计 50、基于单片机控制的柴油机喷油泵数据采集系统的设计与实现 51、基于谐振技术及MK单片机的多路升压器研究设计 52、基于单片机的数据串口通信 53、基于单片机的智能寻迹系统设计 54、压电式阀门定位器与单片机实验装置研制 55、基于单片机的微型电子琴研究与实现 56、基于单片机的恒温恒湿孵化器系统设计 57、基于16位单片机MC9S12XS128的两轮自平衡智能车的系统研究与开发

51单片机测温程序

#include #include #define uint unsigned int #define uchar unsigned char uinti,numone,numtwo,temp; ucharqian,bai,shi,ge,xiaoshu; sbitdq=P2^2; sbitdula=P2^6; sbitwela=P2^7; uchar code list[]={ 0x3f , 0x06 , 0x5b , 0x4f , 0x66 , 0x6d ,0x7d , 0x07 , 0x7f , 0x6f , 0x77 , 0x7c , 0x39 , 0x5e , 0x79 , 0x71,0x80 }; unsigned char code listone[] = {0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef}; void delay(uint z) { uintx,y; for(x=100;x>0;x--) for(y=z;y>0;y--); } voiddelayone(unsigned char i)

{ while(--i); } /****************************************** 此延时函数针对的是12Mhz的晶振 delay(0):延时518us 误差:518-2*256=6 delay(1):延时7us (原帖写"5us"是错的)delay(10):延时25us 误差:25-20=5 delay(20):延时45us 误差:45-40=5 delay(100):延时205us 误差:205-200=5 delay(200):延时405us 误差:405-400=5*/ voidshuma(uchar temp) { shi=temp/100; ge=temp%100/10; xiaoshu=temp%10; dula=1; P0=list[shi]; dula=0; P0=0xff; wela=1; P0=0xfe;

51单片机超声波测距程序

//晶振:11.0592 //TRIG:P1.2 ECH0:P1.1 //波特率:9600 #include #include #include #define uchar unsigned char #define uint unsigned int sbit RX=P0^2; sbit TX=P0^3; unsigned int time=0; unsigned int timer=0; float S=0; bit flag =0; void Conut(void) { time=TH0*256+TL0; TH0=0; TL0=0; S=(time*1.87)/100; //算出来是CM if(flag==1) //超出测量 { flag=0; printf("-----\n"); } printf("S=%f\n",S); } void delayms(unsigned int ms) { unsigned char i=100,j; for(;ms;ms--) { while(--i)

{ j=10; while(--j); } } } void zd0() interrupt 1 //T0中断用来计数器溢出,超出测距范围{ flag=1; //中断溢出标志 } void StartModule() //T1中断用来扫描数码管和计800ms启动模块{ TX=1; //800MS启动一次模块 _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); TX=0; } void main(void) { TMOD=0x21; //设T0为方式1,GATE=1; SCON=0x50; TH1=0xFD; TL1=0xFD; TH0=0; TL0=0;

51单片机毕业论文大全

mcu001 80386保护模式【论文+91页+4.2万+doc】 mcu002 ARM硬件电路板设计之外围接口电路研究【毕业论文+21页+1.2万+doc】 mcu003 CDMA通信系统中的接入信道部分进行仿真与分析【doc格式+45页+毕业论文1.6万】 mcu004 CDMA通信系统中的接入信道部分进行仿真与分析【论文+45页+1.7万+doc】 mcu005 CDMA系统的研究与MATLAB仿真【论文+41页+1.8万+doc】 mcu006 DS18B20温度采集【doc+毕业论文+45页1.9万】 mcu007 FIRA 5v5机器人足球赛进攻策略研究【毕业论文+45页+1.8万+doc】 mcu008 FIR数字滤波器设计与实现【论文+28页+0.7万+doc】 mcu009 FPGA实现差错控制编码技术【论文+31页+1.3万+doc】 mcu010 FPGA在数字滤波器设计中的应用【论文+9页+0.7万+doc】 mcu011 GPRS远程登陆数据终端设计【论文+55页+1.5万+doc】 mcu012 GPRS远程控制系统设计——信息收集与处理子系统【论文+16页+0.3万+doc】 mcu013 GPRS远程控制系统设——远程控制设计【论文+73页2.6万+doc】 mcu014 GPS汽车定位系统设计【论文+30页+1.35万+doc】 mcu015 GSM无线网络优化【论文+53页+2.6万+doc】 mcu016 I2C总线接口的数据采集系统【毕业论文+27页+0.85万+doc】 mcu017 IIR带通滤波器的VHDL描述及仿真【论文+doc+47页+2.1万字】 mcu018 LED显示屏动态显示和远程监控的实现【论文+11页+0.8万+doc】 mcu019 MCS-51单片机温度控制系统【论文+6页+0.2万+doc】 mcu020 MSN机器人程序的设计与实现【论文+0.8万+36页+doc】 mcu021 PLC在自动售货机中的运用【论文+26页+0.5万+doc】 mcu022 PT100温度巡检【毕业论文+22页+1万+doc】 mcu023 QPSK、QAM的调制通信仿真【毕业论文+43页+2万+doc】 mcu024 SPCE061A的教育机器人硬件平台设计【毕业论文+184页+1.37万+doc】 mcu025 USB接口的多路温湿度采集系统设备端设计【毕业论文+25页+0.9万+doc】 mcu026 USB摄像头驱动开发与研究【论文+28页+1.6万+doc】 mcu027 USB数据采集系统设计【论文+1.4万+46页+doc】 mcu028 Y2O3添加量对低居里点PTC热敏电阻器性能的影响【论文28页+1.7万+doc】 mcu029 π4-DQPSK信号的FPGA实现【论文+54页+2.5万+doc】 mcu030 板厚为6mm的0Cr18Ni9钢板采用焊条电弧焊的焊接工艺评定(拉伸)关于焊接的毕业论文【论文+1.3万+24页+doc】 mcu031 步进电机控制器设计与实现【毕业论文+30页+0.9万+doc】 mcu032 板卡式语音平台开发【论文+55页+2.3万+doc】 mcu033 采矿工程本科毕业论文【论文+6.3万+140页+doc】 mcu034 采用适用的跟踪来区分和监控站点活动【毕业论文+13页+0.8万+doc】 mcu035 仓库温湿度的监测系统【毕业论文+31页+1.4万+doc】 mcu036 常用电子元器件SQL查询系统设计【论文+33页+1.2万+doc】 mcu037 超声波明渠流量计【论文+84页+3.4万+doc】 mcu038 超声波明渠流量计的研究【论文+71页+2.1万+doc】 mcu039 车库电脑收费管理系统【论文+60页+2.3万+doc】 mcu040 传感器控制温度【毕业论文+33页+1.4万+doc】【论文+91页+4万+doc】 mcu041 串口通信与控制系统【毕业论文+38页+1.5万+doc】 mcu042 磁性物含量计设计【论文+95页+4.2万+doc】

51单片机最小系统实验报告

51单片机最小系统实验报告 1.实验目的: 1).学习、了解单片机原理,即单片机的各引脚功能、特殊功能寄存器、中断系统、定时/计数器和通信方式等; 2).了解指令系统,各指令的功能; 3).学习电路原理设计,PC板设计以及编排; 2.方案设计: 1).最小系统部分的设计能够用于基本的数字信号处理,运行一些简单的程序。此部分主要包括电源电路、复位电路、时钟电路、USB 接口设计等; 2).扩展电路的设计对于51最小系统CPU芯片等在芯片出厂时不可能让片内存储器的大小满足所有功能的要求,如果将片内存储器做太大,必然造成芯片成本的提高。所以合适的外部RAM、液晶、外部中断和串行接口电路设计等。 3.任务:51单片机最小系统的设计 1)CPU选择:STC15W4K系列 选择原因:a.宽电压(2.5V-5.5V) b. 大容量4K字节SRAM和多组并行端口 c.16/32/56/61/63.5字节多选Flash程序储存器以及普通定时、计数器T0-T4外部管脚可掉电唤醒。 d.内置高精准时钟(5-28MHz任意设置)和集成MAX810专用复位电路

e.看门狗、对外输出时钟及复位 2).系统要实现的功能: 以UPU为核心器件,并利用外存储器对最小系统电路进行扩展。在介绍CPU基本特点的基础上,通过学习指导,开展出51单片机最小系统板。系统要实现以下功能,最小系统部分的设计能够用于基本的数字信号处理,运行一些简单的程序。此部分主要包括电源电路、复位电路、时钟电路、中断系统,USB 接口的设计和相对扩展等。 4.外围器件选择及说明: 1).外部RAM:IS62C256AL。ISSI的IS62C256AL是一个32Kx8位字长的低功耗CMOS静态随机存取存储器。IS62C256AL采用ISSI公司的高性能,低功耗CMOS工艺制造。 当/CE处于高电平(未选中)时,IS62C256AL进入待机模式。在此CMOS 输入标准的待机模式下,功耗低至150 μW(典型值)。 使用IS62C256AL的低触发片选引脚(/CE)和低触发输出使能引脚(/OE),可以轻松实现存储器扩展。低触发写入使能引脚(/WE)将完全控制存储器的写入和读取。 IS62C256AL在引脚上完全兼容其他32Kx8的塑料SOP或TSOP1封装的SRAM。 2).USB接口。接收、传送数据。 3).USB转串口芯片:CH340G。支持USB1.1或者USB2.0/USB3.0通信.具有仿真接口,可以升级外围串口设备,支持常用的MODE联络信号、STC全系

基于AT89C51单片机的测温系统

引言 本文主要介绍了一个基于AT89C51单片机的测温系统,详细描述了利用数字温度传感器DS18B20开发测温系统的过程,重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,特别是数字温度传感器DS18B20的数据采集过程,并介绍了利用C语言编程对DS18B20的访问,该系统可以方便的实现实现温度采集和显示,使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点。DS18B20与AT89C51结合实现最简温度检测系统,该系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量。数字温度计与传统的温度计相比,具有读数方便、测温范围广、测温精确、功能多样话等优点。其主要用于对测温要求准确度比较高的场所,或科研实验室使用,该设计使用STC89C52单片机作控制器,数字温度传感器DS18B20测量温度,单片机接受传感器输出,经处理用LED数码管实现温度值显示。 .

一、设计要求 通过基于MCS-51系列单片机AT89C51和DS18B20温度传感器检测温度,熟悉芯片的使用,温度传感器的功能,数码显示管的使用,C语言的设计;并且把我们这一年所学的数字和模拟电子技术、检测技术、单片机应用等知识,通过理论联系实际,从题目分析、电路设计调试、程序编制调试到传感器的选定等这一完整的实验过程,培养了学生正确的设计思想,使学生充分发挥主观能动性,去独立解决实际问题,以达到提升学生的综合能力、动手能力、文献资料查阅能力的作用,为毕业设计和以后工作打下一个良好的基础。 以MCS-51系列单片机为核心器件,组成一个数字温度计,采用数字温度传感器DS18B20为检测器件,进行单点温度检测,检测精度为0.5摄氏度。温度显示采用3位LED数码管显示,两位整数,一位小数。具有键盘输入上下限功能,超过上下限温度时,进行声音报警。 二、基本原理 原理简述:数字温度传感器DS1820把温度信息转换为数字格式;通过“1-线协议”,单片机获取指定传感器的数字温度信息,并显示到显示设备上。通过键盘,单片机可根据程序指令实现更灵活的功能,如单点检测、轮转检测、越数字温度传感器的温度检测及显示的系统原理图如图DS1820限检测等。基于 图 2.1 基于DS1820的温度检测系统框图 三:主要器件介绍(时序图及各命令序列,温度如何计算等) 系统总体设计框图 由于DS18B20数字温度传感器具有单总线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简单、可靠,所以在该设计中采用DS18B20数字温度传感器测量温度。 测温电路设计总体设计框图如图所示,控制器采用单片机AT89S52,温度传感器采用DS18B20,显示采用4位LED数码管,报警采用蜂鸣器、LED灯实现,键盘用来设定报警上下限温度。 .. . 测温电路设计总体设计框图图3.11.控制模块 AT89S52单片机是美国ATMEL公司生产的低功耗,高性能CMOS 8位单片机,片内含有8kb的可系统编程的Flash只读程序存储器,器件采用ATMEL公

51单片机万年历毕业设计论文

专科毕业设计(论文) 题目51单片机电子万年历论文 51单片机电子万年历论文 摘要: 电子万年历是一种非常广泛日常计时工具,对现代社会越来越流行。它可以对年、月、日、周日、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、周日、时、分、秒和温度等信息,还具有时间校准等功能。该电路采用AT89S52单片机作为核心,功耗小,能在3V的低压工作,电压可选用3~5V电压供电。 本设计是基于51系列的单片机进行的电子万年历设计,可以显示年月日时分秒及周信息,具有可调整日期和时间功能。在设计的同时对单片机的理论基础和外围扩展知识进行了比较全面准备。在硬件与软件设计时,没有良好的基础知识和实践经验会受到很大限制,每项功能实现时需要那种硬件,程序该如何编写,算法如何实现等,没有一定的基础就不可能很好的实现。在编写程序过程中发现

以现有的相关知识要独自完成编写任务困难重重,在老师和同学的帮助下才完成 了程序部分的编写。 万年历的设计过程在硬件与软件方面进行同步设计。硬件部分主要由AT89C52单片机,LED显示电路,以及调时按键电路等组成。在单片机的选择上本人使用了AT89C52单片机,该单片机适合于许多较为复杂控制应用场合。显示器使用2片7SEG-MPX8-CA和一片7SEG-MPX4-CA。7SEG-MPX8-CA是一种八个共阳二极管显示器,7SEG-MPX4-CA是一种四个共阳二极管显示器。为了能更轻松的控制这三片显示器,本人使用了3片74HC164来驱动。74HC164 是 8 位边沿触发式移位寄存器,串行输入数据,然后并行输出。软件方面主要包括日历程序、时间调整程序,公历转阴历程序,显示程序等。程序采用汇编语言编写,以便更简单地实现调整时间及阴历显示功能。所有程序编写完成后,在wave软件中进行调试,确定没有问题后,在Proteus软件中嵌入单片机内进行仿真。最后总在老师同学的帮助以及自己的努力下完成了此次电子万年历的设计。 关键词: 时钟电钟;DS1302;DS18B20;动态扫描;单片机 Abstract E-calendar day time is a very wide range of tools, increasingly popular in modern society. It can be year, month, day, Sunday, hours, minutes, seconds for time, but also has a leap year compensation to a variety of functions, and the DS1302's long life, small error. For the digital electronic calendar using an intuitive digital display can simultaneously display year, month, day, Sunday, hours, minutes, seconds, and temperature and other information, but also a time-calibration and other functions. The circuit uses AT89S52 microcontroller as the core, power consumption, low-voltage work in 3V, the voltage can choose 3 ~ 5V voltage supply. The design is based on 51 series of microcontrollers to the design of electronic calendar, you can display date information on when the minutes and seconds, and weeks, with adjustable date and time functions. At the same time in the design of the theoretical basis of the MCU and peripheral expansion of knowledge of the more comprehensive preparation. The hardware and software design, there is no good basic knowledge and practical experience will be greatly limited, each feature is required to achieve the kind of hardware, procedures, how to write, how to implement such algorithms, there is no certain foundation can not be good implementation. Found during the preparation process to the existing knowledge to complete the preparation of the task alone difficult, In the help of teachers and students to complete the program part of the preparation. Calendar of the design process in hardware and software to synchronize the design. Hardware mainly by the AT89C52 microcontroller, LED display circuit, and the tune composed of the circuit when the button. In the SCM choice I used the AT89C52 microcontroller, which is suitable for many of the more complex control applications. Monitor the use of two 7SEG-MPX8-CA and a 7SEG-MPX4-CA. 7SEG-MPX8-CA is a total

跟我学51单片机(一):单片机最小系统组成与IO输出控制

跟我学51单片机(一):单片机最小系统组成与I/O输出控制 1 单片机是一门实践性较强的技术,很多初学者在学习单片机技术开发的时候往往一头雾水,不知何从下手。为此,笔者结合自己使用单片机多年的经验,特意设计了单片机开发所需的Stud y-c 整机和硬件套件,并结合套件精心编写了单片机从入门到精通系列教程。通过讲述单片机原理、电路设计、应用开发软件工具、编写实验实例让读者全面接触单片机技术。教程编排上由浅入深,循序渐进,内容力求完整、实用、趣味并存,使读者在轻松愉快的学习过程中逐步提高单片机软硬件综合设计水平。 一、内容提要 本讲主要向大家介绍51 系列单片机的最小系统的实现并通过编写程序来实现对单片机IO 口的输出控制。以点亮外部连接的LED(发光二极管)为例,简要的介绍单片机的原理、最小系统的组成,并通过简单的C51 程序设计来讲述编译软件Keil的使用并下载Hex 文件烧写单片机。 二、原理简介 在了解原理之前,首先让我们思考一个问题,什么是单片机,单片机有什么用?这是一个有意思的问题,因为任何人都不能给出一个被大家都认可的概念,那到底什么是单片机呢?普遍来说,单片机又称单片微控制器,是在一块芯片中集成了CPU(中央处理器)、RAM (数据存储器)、ROM(程序存储器)、定时器/ 计数器和多种功能的I/O(输入/ 输出)接口等一台计算机所需要的基本功能部件,从而可以完成复杂的运算、逻辑控制、通信等功能。在这里,我们没必要去找到明确的概念来解析什么是单片机,特别在使用C 语言编写程序的时,不用太多的去了解单片机的内部结构以及运行原理等。从应用的角度来说,通过从简单的程序入手,慢慢的熟悉然后逐步深入精通单片机。 在简单了解了什么是单片机之后,然后我们来构建单片机的最小系统,单片机的最小系统就是让单片机能正常工作并发挥其功能时所必须的组成部分,也可理解为是用最少的元件组成的单片机可以工作的系统。对51 系列单片机来说,最小系统一般应该包括:单片机、时钟电路、复位电路、输入/ 输出设备等(见图1)。

基于51单片机的温度警报器的设计

西安文理学院物理与机械电子工程学院课程设计任务书

目录 摘要 (3) 1 引言 (3) 1.1课题背景 (3) 1.2研究内容和意义 (5) 2 芯片介绍 (5) 2.1 DS18B20概述 (5) 2.1.1 DS18B20封装形式及引脚功能 (6) 2.1.2 DS18B20内部结构 (6) 2.1.3 DS18B20供电方式 (9) 2.1.4 DS18B20的测温原理 (10) 2.1.5 DS18B20的ROM命令 (11) 2.2 AT89C52概述 (13) 2.2.1单片机AT89C52介绍 (13) 2.2.2功能特性概述 (13) 3 系统硬件设计 (13) 3.1 单片机最小系统的设计 (13) 3.2 温度采集电路的设计 (14) 3.3 LED显示报警电路的设计 (15) 4 系统软件设计...................................................15 4.1 流程图........................................................15 4.2 温度报警器程序.................................................16 4.3 总电路图..................................................... 19 5总结 (20)

摘要 随着时代的进步和发展,温度的测试已经影响到我们的生活、工作、科研、各个领域,已经成为了一种非常重要的事情,因此设计一个温度测试的系统势在必行。 本文主要介绍了一个基于AT89C52单片机的数字温度报警器系统。详细描述了利用数字温度传感器DS18B20开发测温系统的过程,重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,对各部分的电路也一一进行了介绍,该系统可以方便的实现温度的采集和报警,并可以根据需要任意上下限报警温度,它使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合于我们日常生活和工、农业生产中的温度测量,也可以当做温度处理模块潜入其他系统中,作为其他主系统的辅助扩展。DS18B20与AT89C52结合实现最简温度报警系统,该系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,有广泛的应用前景。 关键词:单片机;温度检测;AT89C52;DS18B20; 1 引言 1.1课题背景 温度是工业对象中主要的被控参数之一,如冶金、机械、食品、化工各类工业生产中,广泛使用的各种加热炉、热处理炉、反应炉等,对工件的温度处理要求严格控制。随着科学技术的发展,要求温度测量的范围向深度和广度发展,以满足工业生产和科学技术的要求。 基于AT89C51单片机提高了系统的可移植性、扩展性,利于现代测控、自动化、电气技术等专业实训要求。以单片机为核心设计的温度报警器,具有安全可靠、操作简单方便、智能控制等优点。 温度对于工业生产如此重要,由此推进了温度传感器的发展。温度传感器主要经过了三个发展阶段[1]: (1)模拟集成温度传感器。该传感器是采用硅半导体集成工艺制成,因此亦称硅传感器或单片集成温度传感器。此种传感器具有功能单一(仅测量温度)、

基于51单片机的超声波测距系统

基于51单片机的超声波测距系统 贾源 完成日期:2011年2月22日

目录 一、设计任务和性能指标 (3) 1.1设计任务 (3) 1.2性能指标 (3) 二、超声波测距原理概述 (4) 2.1超声波传感器 (5) 2.1.1超声波发生器 (5) 2.1.2压电式超声波发生器原理 (5) 2.1.3单片机超声波测距系统构成 (5) 三、设计方案 (6) 3.1AT89C2051单片机 (7) 3.2超声波测距系统构成 (8) 3.2.1超声波测距单片机系统 (9) 图3-1:超声波测距单片机系统 (9) 3.2.2超声波发射、接收电路 (9) 图3-1:超声波测距发送接收单元 (10) 3.2.3显示电路 (10) 四.系统软件设计 (11) 4.1主程序设计 (11) 4.2超声波测距子程序 (12) 4.3超声波测距程序流程图 (13) 4.4超声波测距程子序流程图 (14) 五.调试及性能分析 (14) 5.1调试步骤 (14) 5.2性能分析 (15) 六.心得体会 (15) 参考文献 (16) 附录一超声波测系统原理图 (18) 附录二超声波测系统原理图安装图 (19) 附录三超声波测系统原理图PCB图 (20) 附录四超声波测系统原理图C语言原程序 (21) 参考文献 (26)

一、设计任务和性能指标 1.1设计任务 利用单片机及外围接口电路(键盘接口和显示接口电路)设计制作一个超声波测距仪器,用LED数码管把测距仪距测出的距离显示出来。 要求用Protel 画出系统的电路原理图,印刷电路板,绘出程序流程图,并给出程序清单。 1.2性能指标 距离显示:用三位LED数码管进行显示(单位是CM)。 测距范围:25CM到 250CM之间。误差:1%。

相关文档
最新文档