当前位置:文档之家› 基于单片机的八路数据采集系统

基于单片机的八路数据采集系统

基于单片机的八路数据采集系统
基于单片机的八路数据采集系统

基于单片机的八路数据采集系统(一)

摘要:单片机数据采集系统是计算机在工业控制中最为普遍的应用系统?它的任务是采集生产过程中的各种工况参数经过处理后送入内存储器,CPU再对这些参数数据进行分析,

运算和处理。

本系统设计一个单片机系统,负责数据的采集和显示,设计一个多路数据输入输出系统,实现8路输入和输出。采用89C51系列单片机、ADC0809、LED数码管等芯片实现硬件仿真,采用汇编语言。最后硬件电路在Proteaus下仿真实现。

关键词:数据采集;8路输入输出;LED显示。

0.前言

随着科学技术的进步,人们越来越多地用计算机来实现控制系统,因此,充分理解计算机控制系统是十分重要的。

计算机控制系统的工作原理可归纳为以下三个步骤:

1.实时数据采集:对来自测量变送装置已的被控量的瞬时值进行检测和输入。

2.实时控制决策:对采集到的被控量进行分析和处理,并按已定的控制规律,决定将要采取的控制行为。

3.实时控制输出:根据控制决策,适时地对执行机构发出控制信号,完成控制任务。

工业控制机包括硬件和软件两部分:

硬件包括主机板、内部总线和外部总线、人-机接口、系统支持板、磁盘系统、通信接口、输入输出通道。软件包括系统软件、支持软件和应用软件。

本系统设计一个单片机系统,负责数据的采集和显示,设计一个多路数据输入输出系统,实现8路输入和输出。采用89C51系列单片机、ADC0809、LED数码管等芯片实现硬件仿真,采用汇编语言。最后硬件电路在Proteaus下仿真实现。

1.基单片机的八路数据采集的基本理论

基于单片机的八路数据采集电路的主要原理是:通过电位计控制输入信号(电压值)的幅值,经单片机对八路信号进行实时同步采样,并用键盘选择通道控制LED显示八路数据采集结果。

本课题只要掌握单片机与ADC0809,LED数码管的接口方式,ADC0809的工作原理,LED数码管的驱动原理,就能实现Proteus仿真。

2.方案设计

数据采集电路的原理框图1所示。

图1 数据采集电路的原理框图

根据设计要求,采用的方案如下:硬件部分实现对8路数据采集和显示的功能,包括MCS-51单片机、ADC0809、LED 数码管;软件部分实现单片机对8路输入数据的采集以及对LED 的显示操作。

主要设计思想:单片机P1口与ADC0809相连,P3.0、P3.1口与74LS164连接,四个74LS164连接分别与四个LED 数码管连接。模拟信号通过IN0—IN7输入到ADC0809中转换为数字信号,P1获得此值后,经过处理得到每位的数据后,通过四个74LS164送到LED 显示屏上。

3.系统硬件的工作原理

现场信号1

数据采集器1

主控系统

数据存储

现场信号2

数据采集器2

现场信号8

数据采集器8

数据显示

3.1 MCS51单片机

MCS-51单片机的内部资源主要有并行I/O接口、定时器/计数器、串行接口以及中断系统。其外部引脚如图2所示。

图2 MCS-51单片机

3.1.1 I/O接口

51系列单片机有4个8位并行的I/O端口:P0、P1、P2、P3口。这4个口既可以并行输入或输出8位数据,又可以按位方式使用,即每一位均能独立作为输入或输出接口用。

3.1.2 定时器/计数器电路

1.MCS-51单片机有两个16位的可编程定时/计数器:定时/计数器T0和定时/计数器T1。

2.每个定时/计数器既可以对系统时钟计数实现定时,也可以对外部信号计数实现计数功能,这些功能都是通过编程设定来实现的。

3.每个定时/计数器有多种工作方式,其中T0有四种工作方式;T1有三种工作方式,T2有三种工作方式。通过编程可设定工作于某种方式。

4.每一个定时/计数器定时计数时间到时产生溢出,使相应的溢出位置位,溢出可通过查询或中断方式来处理。

3.1.3 串行接口

MCS-51单片机具有一个全双工的串行异步通信接口,可以同时发送、接收数据。发送、接收数据可通过查询或中断的方式来处理。它有四种工作方式:

0.方式0,称为同步移位寄存器方式,一般用于外接移位寄存器芯片扩展I/O接口。

1.方式1,称为8位的异步通信方式,通常用于双机通信。

2.方式2和方式3,称为9位的异步通信方式,通常用于多机通信。

256

T1波特率

-

的初值SMOD

fosc

*

^2

32

)

/(

*

*

12

3.1.4 中断系统

MCS-51单片机提供5个(52子系列提供6个)硬件中断源:两个外部中断源INT0(P3.2)和INT1(P3.3),两个定时/计数器T0和T1的溢出中断TF0和TF1;1个串行口发送T1和接收R1中断。

以下为本系统用到的串口中断部分指令:

EA:中断允许总控位。EA=0,屏蔽所有的中断请求;EA=1,开放中断。EA的作用是使中断允许形成两级控制。

ES:串行口中断允许位。ES=1允许串行口中断。

REN为允许接收控制位。REN=1,则允许接收。

TI位发送中断标志位。

RI为接收中断标志位。

3.2 数据采集转换模块

这一模块主要有ADC0809转化器完成。ADC0809是CMOS单片型逐次逼近式A/D转换器,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器、逐次逼近寄存器、逻辑控制和定时电路组成。其外部引脚如图3所示。

图3 ADC0809

3.2.1 输入输出端

1. IN0~IN7:8路模拟量输入端。

2. 2-1~2-8:8位数字量输出端。

3.2.2 传输通道选择端

ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路。

3.2.3 使能端

1.ALE:地址锁存允许信号,输入,高电平有效。

2.START: A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。

3.EOC: A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。

4.OE:数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。

5.CLK:时钟脉冲输入端。要求时钟频率不高于640KHZ。

6.REF(+)、REF(-):基准电压。

7.Vcc:电源,单一+5V。

8.GND:地。

3.3 显示模块

显示模块选用 LED数码管。1602型LCD显示模块具有体积小,功耗低,显示内容丰富等特点。1602型LCD可以显示2行16个字符,有8位数据总线D0-D7和RS,R/W,EN三个控制端口,工作电压为5V,并且具有字符对比度调节和背光功能。其外部引脚如图3所示。

图4 LED数码管

3.3.1 各引脚功能

1.VSS:电源地。

2.VDD:电源正极。

3.VEE:液晶显示偏压信号。

4.RS:数据/命令选择端。

5.R/W:读写选择端。

6.E:使能信号。

7.D0-D7:数据输入/输出口。

4.软件编程

设计思想:ADC0809的使能控制端连接在单片机P3口,操作时由程序控制。当A/D 转换结束后由单片机将P1口A/D转换后的数据附给P0口,进而由连接在P0口的LCD显示。

主程序功能:void main()//主函数

实现8路数据的采集与控制输出数据。

子程序功能:void init()//初始化函数

对LCD进行初始化设置。

void delay(uint z)//延时函数

当z=1时,延时约为1ms。

Void write_command(uchar com)//写命令

LCD写命令操作

void write_data(uchar date)//写数据

LCD写数据操作

void start() //开始AD转换

开启AD转换

void xianshi() //AD转化结果显示

显示AD转化的结果

中断程序功能:void timer0() interrupt 1

a2==0时,LCD第一屏显示前四位数据。

a2==1时,LCD第二屏显示后四位数据。

程序流程图:基于开关量的数据采集系统的程序流程图如图5所示。

开始

键盘扫描

电压数据采集

数据处理

LED显示

结束

图5 程序流程图

5. 系统调试和结果分析

根据方案设计结果,进行了硬件电路在Proteaus下的仿真。

当通过电位器调节AD转换器输入端的电压时,模拟电压值经过AD转换后,经由单片机将转换后的电压值发送至P0口,供LCD进行显示。

仿真过程描述:通过keil软件对所编程序进行编译,生成.hex文件,在proteaus 软件中,用MCS51单片机调用.hex,即可进行硬件的仿真。该仿真包括两部分:

1.对8路电压进行采集,经由AD转换器进行转化,转化后的16进制数存于单片机的内部存储器中。

2.对转换后的电压进行显示。将内部存储器中存储的转化后的电压对应的16进制数

付给P0口,由LCD进行显示。调节电位器LCD的显示数据也会发生变化。

调试中遇到的问题:将程序下载至开发板上的单片机进行硬件调试时主要遇到以下两个问题。

1.LCD不显示数据,LED出现乱闪。解决方法:将LED的段选和位选端关闭后再进行硬件调试,问题得到解决。

2.调节电位器后,AD转换的数据不变化只显示5V。解决方法:AD转换程序出现错误,更改程序后问题得到解决。

6. 结论及进一步设想

本系统设计一个单片机系统,实现8路数据的采集和显示,它的任务是采集生产过程中的各种工况参数经过处理后送入内存储器,CPU再对这些参数数据进行分析,运算和处理。

采用89C51系列单片机、AD转换器、LCD1602等器件,并采用C语言编程,在Proteaus 下实现了硬件仿真,得到了一个8路数据输入输出系统。

根据实验结果,本设计已经完成了设计任务,达到要求。但是由于仿真与实际应用是有很大差别的,该单片机的8路数据采集系统还存在着实际的应用方面的缺陷,可以通过把C语言编程、单片机、真实的硬件电路等更精密的器件综合到一起,控制在工厂生产过程中需要采集和控制的数据,从而进一步改善该系统,使其能够应用到实际的生产过程中。

参考文献

[1] 谢维成,杨加国.单片机原理与应用及C51程序设计. 北京:清华大学出版社,2009

[2] 于海生等.微型计算机控制技术.北京;清华大学出版社,2008

[3] 刘复华. 单片机及其应用系统. 北京:清华大学出版社,1992

[4] 李斌,董慧颖. 可重组机器人研究和发展现状. 沈阳工业学院学报,2000,19(4):

[5] 于海生等. 微型计算机控制技术. 北京:清华大学出版社,1999

[6] 单片机原理与应用及C51程序设计. 北京:清华大学出版社,2009

课设体会

做了两周的课程设计,对于单片机的实际应用方面让我感受颇深。对于本专业的学生,我深知不进行自主的实践,永远也学不到真东西。

在课设刚开始拿到题目觉得挺简单,书上也有类似的程序,有点散漫。但当我真正的去思考开始着手做程序时才发现自己还有好多要去学习。Proteus仿真软件对我来说还是比较陌生的,有很多硬件都找不到,查阅了Proteus相关的入门书籍后才能自如的运用软件。

之后便是程序的编写,根据课设任务的要求,写出了程序的一个大概流程,按着程序流程图一步一步的得到了能实现数据输入输出的程序,期间经过了多次调试,修改。最终得到完整的程序,心里还是小有成就感的。

问题随之又来,当我将写好的程序进行实物仿真时,和我想的结果完全不同,写入程序的开发板并没有像软件仿真时那样得出期望的结果,最后经过查阅资料将程序、Proteus 仿真、硬件的端口一一对应,才得出了争确的结果。

最后,感谢学校和老师给我们安排了这次课程设计,让我真正感受到的是合作的重要,许多时候老师的指导中的一句半句启发了我,就出现的让人欣喜的结果;理论知识同样很重要,有些问题都是由于基础知识掌握不好才出现的。总之,要想做好一个硬件,理论知识基础,动手能力也必须过关,二者缺一不可,我会继续努力学习这方面的知识,通过类似课设这种方式锻炼自己,达到学以致用。

附录1 电路原理图

附录2 程序清单 #include

#include

#define uchar unsigned char

#define uint unsigned int

sbit adoe=P3^7; //OE接3.7

sbit eoc=P3^3; //EOC接3.1

sbit adstart=P3^6; //start接3.2

sbit a0=P3^0; //A 3.3

sbit a1=P3^1; //B 3.4

sbit a2=P3^2; //C 3.5

sbit lcdrs=P3^5; //LCD RS 3.6

sbit lcden=P3^4; //LCD EN 3.7

sbit dula=P2^6;

sbit wela=P2^7;

long int temp,b1,b2,b3,b4,b5;

uchar tt;

uchar code table[]="0123456789.V"; //显示电压void delay(uint z) //延时

{

uint x,y;

for(x=z;x>0;x--)

for(y=100;y>0;y--);

}

void write_command(uchar com)//写命令

{

dula=0;

wela=0;

lcdrs=0; //输入指令

P1=com;

delay(5);

lcden=1; //读数据

delay(5);

lcden=0; //写指令或者数据

}

void write_data(uchar date)//写数据

{

lcdrs=1; //输入数据

P1=date; //显示

delay(5);

lcden=1; //读数据

delay(5);

lcden=0; //写指令或数据

}

void init()//初始化

{

lcden=0;

write_command(0x38);//不可变,显示模式设置:16*2显示,5*7点阵,8位数据接口

write_command(0x0c);//屏幕开启和光标闪烁

write_command(0x06);//显示开关及光标设置

write_command(0x01);//清屏

}

void start() //开始AD转换

{

adoe=0;

adstart=0;

_nop_();

adstart=1;

adstart=0;

}

void xianshi() //AD转化结果显示

{

write_data(table[b1]); //最高位

delay(1);

write_data(table[10]); // 小数点

delay(1);

write_data(table[b2]); //第二位

delay(1);

write_data(table[b3]); // 第三位delay(1);

write_data(table[11]); // 电压V delay(1);

}

void first_mark() //0-4路通道的标号{

write_command(0x01);

write_command(0x80);

write_data('A');

delay(1);

write_command(0x80+0x01);

write_data('=');

delay(1);

write_command(0x80+0x09);

write_data('B');

delay(1);

write_command(0x80+0x0a);

write_data('=');

delay(1);

write_command(0x80+0x40);

write_data('C');

delay(1);

write_command(0x80+0x41);

write_data('=');

delay(1);

delay(1);write_command(0x80+0x49);

write_data('D');

delay(1);

write_command(0x80+0x4a);

write_data('=');

delay(1);

}

void second_mark() //5-7路通道的标号{

write_command(0x01);

write_command(0x80);

write_data('E');

delay(1);

write_command(0x80+0x01);

write_data('=');

delay(1);

write_command(0x80+0x09);

write_data('F');

delay(1);

write_command(0x80+0x0a);

write_data('=');

delay(1);

write_command(0x80+0x40);

write_data('G');

delay(1);

write_command(0x80+0x41);

write_data('=');

delay(1);

delay(1);write_command(0x80+0x49);

write_data('H');

delay(1);

write_command(0x80+0x4a);

write_data('=');

delay(1);

}

void main()

{

a2=0;

init(); //调用LCD初始化子程序TMOD=0x01;

EA=1;//开总中断

TH0=(65535-1000)/256;

TL0=(65535-1000)%256;

ET0=1;//开定时器0中断

TR0=1;//定时器0置位

first_mark();

while(1)

{

a0=0; //0路或4路通道的AD转化

a1=0;

start();

while(!eoc);

adoe=1;

temp=P0;

delay(3);

adoe=0;

b1=(temp*500/255)/100; //最高位

b2=(temp*500/255)%100/10; //第二位

b3=(temp*500/255)%10; //第三位

write_command(0x80+0x02);

xianshi();

a0=1; //1路或5路通道的AD转化

a1=0;

start();

while(!eoc);

adoe=1;

temp=P0;

delay(3);

adoe=0;

b1=(temp*500/255)/100; //最高位

b2=(temp*500/255)%100/10; //第二位

b3=(temp*500/255)%10; //第三位

write_command(0x80+0x0b);

xianshi();

a0=0; //2路或6路通道的AD转化

a1=1;

start();

while(!eoc);

adoe=1;

temp=P0;

delay(3);

adoe=0;

b1=(temp*500/255)/100; //最高位

b2=(temp*500/255)%100/10; //第二位

b3=(temp*500/255)%10; //第三位

write_command(0x80+0x42);

xianshi();

a0=1; //3路或7路通道的AD转化

a1=1;

start();

while(!eoc);

adoe=1;

temp=P0;

delay(3);

adoe=0;

b1=(temp*500/255)/100; //最高位

b2=(temp*500/255)%100/10; //第二位

b3=(temp*500/255)%10; //第三位

write_command(0x80+0x4b);

xianshi();

}

}

void timer0() interrupt 1

{

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

tt++;

if((a2==0&&tt==20)==1) //LCD第二屏显示{

tt=0;

a2=1;

second_mark();

}

if((a2==1&&tt==20)==1) //LCD第一屏显示

{

tt=0;

a2=0;

first_mark();

}

}

八路抢答器及倒计时

绪论 进入21世纪越来越来多的电子产品出现在人们的日常生活中,例如企业、学校和电视台等单位常举办各种智力竞赛, 抢答记分器是必要设备。过去在举行的各种竞赛中我们经常看到有抢答的环节,举办方多数采用让选手通过举答题板的方法判断选手的答题权,这在某种程度上会因为主持人的主观误断造成比赛的不公平性。人们于是开始寻求一种能不依人的主观意愿来判断的设备来规范比赛。因此,为了克服这种现象的惯性发生人们利用各种资源和条件设计出很多的抢答器,也使比赛更突显其公平公正的原则。 今天随着科技的不断进步抢答器的制作也更加追求精益求精,人们摆脱了耗费很多元件仅来实现用指示灯和一些电路来实现简单的抢答功能,使第一个抢答的参赛者的编号能通过指示灯显示出来,避免不合理的现象发生。但这种电路不易于扩展,而且当有更高要求是酒无法实现,例如参赛人数的增加。随着数字电路的发展,数字抢答器诞生了,它易于扩展,可靠性好,集成度高,而且费用低,功能更加多样话,是一种高效能的产品。 一、设计的目的及任务 1、设计的目的 多功能抢答器在当今社会有着广泛的应用有基本的抢答功能外,还具有定时、计时和报警功能。主持人通过时间预设开关预设供抢答的时间,系统将完成自动倒计时。若在规定的时间内有人抢答,则计时将自动停止;若在规定的时间内无人抢答,则系统中的蜂鸣器将发响,提示主持人本轮抢答无效,实现报警功能,若超过抢答时间则抢答无效。 2、设计的任务及要求 (1)抢答器同时供8名选手比赛,分别用8个按钮S0 ~ S7表示。 (2)设置一个系统清除和抢答控制开关S,该开关由主持人控制。 (3)抢答器具有锁存与显示功能。即选手按动按钮,锁存相应的编号,扬声器发出声响提示,并在数码管上显示选手号码。选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统清除为止。 二、电路设计总方案及原理框图 电路总体框图如下所示:

基于80C51单片机的八路抢答器设计分析

专业论文 题目:基于80C51单片机的八路抢答器设 计

摘要:八路智力抢答器是一个可供八个参赛组进行智力竞赛的电路装置,该装置主要是由单片机最小系统、控制电路(八个选手抢答按钮;三个主持人控制按钮;四个修改按钮)、数码显示电路与蜂鸣器电路组成的。单片机(MCU)是目前在电气控制技术中广泛应用的重要元件。它具有体积小,稳定性高,应用范围广,控制能力强,升级改造容易等诸多优点。本论文介绍采用ATMEL公司AT89S52单片机设计八路智能抢答器。软件采用汇编语言编程,汇编语言属于计算机领域的低级语言,具有简明易懂,执行效率高等的优点。智能八路抢答器具有抢答时间与答题时间调整,抢答错误报警提示等功能,可以广泛应用于各类知识竞赛。 关键词:抢答器;单片机;硬件系统;软件编程

基于80C51单片机的八路抢答器设计 一、系统概述与原理方框图 在文中,我对八路抢答器的总体设计及其主要的功能特点进行简单的分析,并给出它的特点,实现的功能以及系统的简单操作,以对单片机及其控制系统的了解。 (一)单片机技术发展的概述与系统问题的提出 目前,单片机正朝着高性能和多品种方向发展,单片机的发展正朝着 CMOS化,低功耗,小体积,大容量,高性能,低价格和外围电路的内装化等 几个方面 发展。近几年,由于某种原因CHMOS技术的进步,大大地促进了单片机的CMOS 化,此种芯片除了低功耗外,还具有功耗的可控性,使单片机可以工作在功 耗精细管理状态,特别是IIC,API等串行总线的引入,可以使单片机的引脚 设计得更少,单片机系统结构更加简化及规范化。 我们设计出的8路抢答器是一种基于MCS-51单片机的硬件和软件设计及 实现方法,这种电路设计具有按键有效提示,输入错误提示,控制报警电路, 在线修改功能等多种功能,保密性强,灵活性高,特别适用于家庭!办公室!学 生宿舍及宾馆等场所。它具有全集成化,智能化,高精度,高性能,高可靠 性和低价格等优点,是一个值得推广的一种方法。接下来我们就对方案与设 计原理方框图进行比较分析。 (二)设计思路与系统组成及主要特点 为了使设计更具有针对性,使用性更强,我对其进行精心的设计,在设 计过程中,我们想到了很多的设计方案。 1.设计思路 设计一个八路抢答器,可同时供8名选手或者8个代表队参加比赛,他 们的编号分别为1——8,各用一个抢答器按钮,按钮的编号与选手的编号相 对应,分别设为S1…S8。节目主持人设置一组控制开关,用来控制系统的清 零和抢答器的开始,修改抢答时间与答题时间,如果想调节抢答时间或答题 时间,按"抢答时间调节"键或"答题时间调节"键进入调节状态。并且抢答器具 有数据锁存和显示的功能,抢答开始,若有选手按动抢答按钮,编号立即锁

此程序是用单片机的p1口接八个led灯作跑马灯试验

拆字程序 Org 0000h Mov A , 2000H Add A ,#F0H MOV 2001H ,A MOV A ,2000H ADD A , #0FH MOV 2002H , A MOV A , 2001H ADD A , 2002H END 拆分BCD 码 ? *************************************************************************** ;此程序是用单片机的p1口接八个led灯作跑马灯试验,八个led依次亮了又熄灭,形成漂亮;的跑马灯。本人已经试验成功。 ;单片机教程网https://www.doczj.com/doc/321674465.html, 原创

;该8路单片机跑马灯程序代码简单,电路也容易搭建,只需把led接在p1口上就可以了,希望大家能试验成功顺利的完成跑马灯报告 ;*************************************************************************** org 0000h loop0:cjne r0 ,#01h,rel,loop0 ;判断开关打开情况 ajmp start;跳转到程序开始 org 0030h;定义起始汇编地址 start: mov a,#0ffh ; clr c ; mov r2,#08h ;循环八次。 loop: rlc a ;带进位左移。 mov p1,a ;此时led灯开始有反映了。 call delay ;延时 djnz r2,loop ;循环(djnz条件判断) mov r2,#07h ; loop1: rrc a ;带进位右移 mov p1,a ;此时led灯开始有反映了。 call delay ; djnz r2,loop1 ;反复循环 jmp start ;回到程序的开头 delay: mov r3,#20 ;延时子程序 d1: mov r4,#20 d2: mov r5,#248 djnz r5,$ djnz r4,d2 ```````````````````````````````````````````````---------3路单片机跑马灯程序---------------------------------------

八路抢答器说明书

课程设计说明书 课程名称:单片机应用课程设计 课程代码:6003509 题目: 基于AT89S52单片机的抢答器设计学生:洋、夏阳、王黎明、肖瑶 学号:7304(7302 、 7305、7328 ) 年级/专业/班:2012级机电3班 学院(直属系) :机械工程学院 指导教师:王富治

目录 第一章摘要- - - - - - - - - - - - - - - - - - - - 1 第二章引言- - - - - - - - - - - - - - - - - - - - 2 2.1 单片机抢答器的背景- - - - - - - - - - - 2 2.2 单片机抢答器的意义- - - - - - - - - - - 2 2.3 抢答器的应用- - - - - - - - - - - - - - 2 第三章抢答器的概述及制作要求 3.1 抢答器的概述- - - - - - - - - - - - - - 4 3.2 设计任务、设计容- - - - - - - - - - - 4 第四章单片机的选择和电路模块 4.1 单片机的选择- - - - - - - - - - - - - - 5 4.1.1 单片机管脚说明- - - - - - - - - - - - 5 4.2 模块性能分析- - - - - - - - - - - - - - 7 4.2.1 选手按键- - - - - - - - - - - - - - - 7 4.2.2 数码管显示- - - - - - - - - - - - - - 7

第五章电路设计 5.1 总体设计- - - - - - - - - - - - - - - - - 9 5.1.1 电路原理图- - - - - - - - - - - - - - - 9 5.1.2 元件清单- - - - - - - - - - - - - - - - 10 5.2 外部振荡电路(晶振电路)- - - - - - - - - 11 5.3 复位电路的设计- - - - - - - - - - - - - - 12 5.4 显示电路的设计- - - - - - - - - - - - - - 12 5.5 按钮输入电路的设计- - - - - - - - - - - - 13 5.6 发声电路- - - - - - - - - - - - - - - - - 14 第六章系统软件设计 6.1 抢答器流程图- - - - - - - - - - - - - - - 15 6.2 主程序- - - - - - - - - - - - - - - - - - 16 第7章仿真演练- - - - - - - - - - - - - - - - - - - 23 总结- - - - - - - - - - - - - - - - - - - - - - - - - 24 参考文献- - - - - - - - - - - - - - - - - - - - - - - 25

基于51单片机8路抢答器设计

创新实践课 课程名称:创新实践课 实践题目:基于51单片机8路抢答器设计学院:信息工程与自动化学院 专业:生物医学工程 年级:2014级 学生:4 丽莎2海星 指导教师:嘉林 日期:2016-12-30 教务处制

目录 一、前言 (3) 二、电路原理图设计 (3) 三、印制版图设计 (7) 四、软件设计 (9) 五、测试数据及分析 (16) 六、总结 (18)

一、前言 目前,抢答器已经作为一种必不可少的工具广泛应用于各种智力和知识竞赛场合,但一般的抢答器可靠性低,使用寿命短,介于这些不方便因素,此次设计提出了用51单片机为核心控制元件,设计一个简易的八路抢答器。本方案以51单片机作为主控核心,与晶振、数码管、蜂鸣器等通过外围接口实现的八路抢答器,利用了单片机的延时电路、按键复位电路、时钟电路、定时器/计数器等,设计的八路抢答器不仅具有实时显示抢答选手的和抢答时间的功能,同时还利用汇编语言编程,使其实现复位、定时和报警的功能。本次设计的系统实用性强、判断精确、操作简单、扩展功能强。 功能:以STC89C52RC单片机作为主控核心,与晶振、数码管、蜂鸣器等通过外围接口实现的八路抢答器,利用了单片机的延时电路、按键复位电路、时钟电路等,设计的八路抢答器不仅具有实时显示抢答选手的和抢答时间的功能,同时还利用汇编语言编程,使其实现复位和报警的功能。 此系统是基于51单片机,led发光二极管,一位共阳数码管,蜂鸣器,按键,等分立元件设计而成。 元件设计的意义:关于按键:共设计了10个独立按键,其中8个分别为八位选手抢答输入用,另外两个分别为开始和停止按键!只有裁判按下了开始键才进入正常抢答,否则属于犯规抢答,抢答完毕,裁判按下停止,数码管显示0。关于led发光二极管:共设计了9个发光二极管,其中一个为电源指示,其他8个为选手抢答状态指示,正确抢答时led发光二极管缓慢闪烁,犯规抢答时,快速闪烁。关于数码管:选手按下自己的按键时显示相应的选手编号!裁判按下开始键时数码管显示倒计时,

用单片机编写几种跑马灯

用单片机编写几种跑马灯 任务: 1、在电路板上实现跑马灯,一次1匹 2、在电路板上实现跑马灯,一次2匹 3、在电路板上实现4个二极管的同时闪烁 源程序1: /***********************************信息**************************************** **作者:刘海涛 **版本:初始版V1.0 **描叙:用电路板实现跑马灯。 **日期:2010年7月25日 *******************************************************************************/ /**********************************头文件*************************************** **头文件"reg52.h" *******************************************************************************/ /**********************************函数名*************************************** **函数名:延时函数delay() **输入:无 **输入:无 **宏定义:无 *******************************************************************************/ /**********************************宏定义*************************************** 宏定义:#define XBYTE ((unsigned char *)0x20000L) *******************************************************************************/ #include"reg52.h" delay(unsigned int dat) // 延时函数定义 { unsigned int i,j; for(i=0;i

八路抢答器设计(附源程序)

烟台大学单片机课程设计说明书课题:八路抢答器 学生姓名: 学号: 院系:机电汽车工程学院 专业:机械设计制造及其自动化 指导老师: 同组成员: 组长: 2012 年06 月07 日 目录

1 概述 (2) 2设计任务 (2) 3 系统总体方案 (3) 4 硬件设计 (4) 控制系统所需硬件 (4) 硬件原理介绍 (4) 5 软件设计 (7) 软件总体设计 (7) 程序流程图 (8) 6 Proteus软件仿真 (12) Keil软件 (12) 在Proteus软件 (12) 7小结 (14) 8心得体会 (15) 附1:源程序代码 (16) 附2:参考文献 (24) 1 .概述

8路智能抢答器的设计 现如今,各种智力知识竞赛已经成为人们的一种娱乐形式,人们在答题的过程中不仅可以享受到乐趣,还可以学到一些科学知识和生活常识。然而在抢答过程中,单靠视觉是很难判断出哪组最先完成抢答操作。为了辨别哪一组或哪一位选手获得答题权,必须要设计一个智能抢答控制系统——智能抢答器。 抢答器作为一种电子产品,已被人们所熟知并广泛应用于各种智力知识竞赛场合。抢答器在竞赛中有很大用处,通过抢答器的指示灯显示,数码管显示和警示蜂鸣等手段,能准确,公正,直观地判断出第1抢答者并协助比赛的顺利进行。但是,目前使用的抢答器大多数都采用了逻辑电路进行设计,分立元件较多,造成抢答器的成本较高。此外一般抢答器由模拟电路,数字电路或二者结合组成,其智能化程度低,故障率高,显示简单。现代电子技术的发展要求电子电路朝数字化,集成化方向发展,因此设计出全集成电路的多路抢答器是现代电子技术发展的要求。 2 .设计任务 本设计要求学生结合现有的实际条件,以单片机为控制核心,设计一个8路智能抢答器。要求实现的功能如下: 1) 抢答器可同时供8名选手或8个代表队比赛,分别用8个按键S1~S8进行抢答。 2) 主持人可以通过智能抢答器的按键设定每道题的抢答时间和回答时间。 3) 具有清零和非法抢答控制功能,并由主持人操纵,避免选手在主持人说“开始”前提前抢答,违反规则。 4) 当主持人启动“开始抢答键”后,定时器进行减计时,在10s内无人抢答表示所有参赛选手或参赛队对本题弃权,抢答时间耗尽后禁止抢答。 5) 倒计时5s时,如果仍无人抢答,则系统每1s报警一次,用以提示参赛选手。 6) 抢答器具有锁存与显示功能。即选手按下按键,锁存相应选手的参赛号码,并在LED数码管上显示,同时扬声器发出报警声响提示。选手抢答实行优先锁存,其他按键者将不能响应,以便公平地选择第一个抢答者。 7) 参赛选手在设定的时间内进行抢答,抢答有效,显示器上显示选手的编号同时进入回答问题的30s倒计时。 8) 倒计时期间,如果主持人想终止倒计时,可以按下“停止”按键,系统

基于51单片机八路抢答器的设计大学论文

毕业设计(论文) 题 目: 基于51单片机的抢答器系统设计 函授站点: 中国矿业大学继续教育学院 学习层次: 专科 班级名称: 徐工技师学院 函机电2015班 姓名: 学号: 中国矿业大学继续教育学院 20 年 月 日

摘要 随着科学技术的发展和普及,各种各样的竞赛越来越多,其中抢答器的作用也就显而易见。目前很多抢答器基本上采用小规模数字集成电路设计,使用起来不够理想。因此设计一更易于使用和区分度高的抢答器成了非常迫切的任务。现在单片机已进入各个领域,以其功耗小、智能化而著称,所以若利用单片机来设计抢答器,便使以上问题得以解决.针对以上情况,本文设计出以STC89C52RC单片机为核心的八路抢答器。我们采用了数字显示器直接指示,自动锁存显示结果,并自动复位的设计思想,它能根据不同的抢答输入信号,经过单片机的控制处理并产生不同的与输入信号相对应的输出信号,最后通过LED数码管显示相应的路数,即使两组的抢答时间相差几微秒,也可分辨出是哪组优先按下的按键,它充分利用了单片机系统的优点,具有结构简单、功能强大、可靠性好、实用性强的特点。 本设计是以八路抢答为基本理念。考虑到依需设定限时回答的功能,利用51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间。用开关做键盘输出,扬声器发生提示。同时系统能够实现:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为犯规;满时后系统计时自动复位及主控强制复位;按键锁定,在有效状态下,按键无效非法。 关键词:STC89C52RC;共阴数码管;按键;蜂鸣器

八路抢答器说明书概要

烟台大学 51单片机课程设计说明书课题:八路抢答器 学生姓名:王志林 学号:201056501312 院系:机电汽车工程学院 指导老师:姜风国 同组成员:张凤礼、张体栋、程事业、范光科2013 年 06 月 05 日

目录 1 设计任务 (2) 2 系统总体方案 (2) 3 硬件设计 (3) 3.1 控制系统所需硬件 (3) 3.2 硬件原理介绍 (4) 4 软件设计 (6) 4.1 软件总体设计 (6) 4.2 程序流程图 (7) 5 软件仿真...................................................................................... (9) 5.1 Keil软件 (9) 5.2在Proteus软件 (9) 6小结 (10) 附1:源程序代码 (11) 附2:参考文献 (18)

1 .设计任务 本设计要求学生结合现有的实际条件,以51单片机为控制核心,设计一个8路智能抢答器。要求实现以下功能: 1) 有一主持人和8个参赛队员 2) 当主持人按下抢答按键,参赛队员在10秒内可以抢答,并且抢答器开始倒计时。剩余5秒时,如果仍无人抢答,则系统每1s报警一次。如超出10秒则不能抢答;如抢答成功,则显示抢答队号。 3) 抢答成功则需在60秒内回答完成,如超出时间则抢答无效,显示无效指示。如果60秒完成回答,则抢答成功,显示有效。剩余5秒时,如果仍无人回答,则系统每1s报警一次。 4) 当主持人按下复位键时,系统回到初始状态。 5) 倒计时期间,如果主持人想终止倒计时,可以按下“停止”按键,系统会自动进入准备状态。 主要硬件设备:AT89C51单片机,8输入3态缓冲器/线驱动器74LS244,六反相驱动器7404,共阳极LED数码管等,12MHZ晶振,74LS04反相器,手动开关,按键若干,报警喇叭。 2.系统总体方案 2.1整体方案设计 该智能抢答器以AT89C51单片机为控制核心,控制精度较高,操作误差主要来自晶振自身所造成的误差。其他外围电路包括复位电路,时钟电路,报警电路,LED显示电路,抢答按键等。该智能抢答器具有计时记忆功能,一次时间设置完,复位后不需重新进行时间设定;通过按键扫描输出按键信息,并通过单片机将它转化为在七段数码管上显示的字符型。单片机的P1口为8组抢答按键的输入口,P0.0~P0.6为数码管的段选口,P2.0~P2,2为数码管的片选口。P3.6为报警电路的控制口。智能抢答器的整体方案设计图如下所示。

基于单片机的八路抢答器

目录 设计总说明 ................................................................................................. 错误!未定义书签。INTRODUCTION ....................................................................................... 错误!未定义书签。第1章绪论 (2) 1.1 课题研究现状 (2) 1.2 目的与意义 (2) 1.3 课题研究的内容 (3) 第2章系统总体方案设计 (3) 2.1 设计要求 (3) 2.2 方案选择 (4) 第3章系统硬件设计 (5) 3.1 八路抢答器整体方案设计 (5) 3.1.1 系统概述 (5) 3.1.2 系统框图 (5) 3.2 最小系统模块 (5) 3.2.1 STC89C52简介 (5) 3.2.2 最小系统电路 (8) 3.3 键盘扫描电路 (9) 3.4 蜂鸣器报警电路 (10) 3.5 数码管显示模块 (11) 第4章系统软件设计 (12) 4.1 总体程序设计 (12) 4.2 抢答/答题时间设置 (14) 4.3 数码管动态扫描程序 (14) 第5章总结 (14) 参考文献 (15) 附录一:原理图 (15) 附录二:元件清单 (16) 附录三:C语言程序 (16)

基于单片机的八路抢答器 第1章绪论 1.1课题研究现状 随着我国抢答器市场的迅猛发展,与之相关的核心生产技术应用与研发必将成为业内企业关注的焦点。技术工艺,是衡量一个企业是否具有先进性,是否具备市场竞争力,是否能不断领先于竞争者的重要指标依据。了解国内外抢答器生产核心技术的研发动向、工艺设备、技术应用及趋势对于企业提升产品技术规格,提高市场竞争力十分关键。 目前市场上抢答器种类繁多,功能各异,价格差异也很大。那么选择一款真正适合的抢答器就非常重要。 抢答器一般分为电子抢答器和电脑抢答器。目前电子抢答器的中心构造一般都是由数字电子集成电路组成,其搭配的配件不同又分为,非语音非记分抢答器和语音记分抢答器。非语音记分抢答器构造很简单,就是一个抢答器的主机和一个抢答按钮组成,在抢答过程中选手是没有记分的显示屏。语音记分抢答器是由一个抢答器的主机、主机的显示屏以及选手的记分显示屏等构成,具有记分等功能。电子抢答器多适用于学校和企事业单位举行的简单的抢答活动。电脑抢答器又分为无线电脑抢答器和有线电脑抢答器。无线电脑抢答器是由主机和抢答器专用的软件和无线按钮构成。无线电脑抢答器利用电脑和投影仪,可以把抢答气氛活跃起来,一般多使用于电台等大型的活动。有线电脑抢答器也是由主机和电脑配合起来,电脑再和投影仪配合起来,利用专门研发的配套八路智能抢答器的设计的抢答器软件,可以十分完美的表现抢答的气氛。 抢答器作为一种电子产品,早已广泛应用于各种智力和知识竞赛场合,但目前所使用的抢答器有很多的缺点,有的电路较复杂不便于制作,可靠性低,实现起来很困难;有的则用一些专用的集成块 ,而专用集成块的购买又很困难。而我所设计的八路智能抢答器,具有元件普通 ,易于购买等优点,很好地解决了制作困难和难于购买的问题。在国内外已经开始普遍应用。 1.2目的与意义 在知识比赛中,特别是做抢答题目的时候,在抢答过程中,为了知道哪一组或哪一位选手先答题,必须要设计一个系统来完成这个任务。如果在抢答中,靠视觉是很难判断出哪组先答题。怎样来设计抢答器,能使以上问题得以解决?即使两组的抢答时间相差几微秒,也可分辨出哪组优先答题?通过研究并在设计验证后发现,采用单片机技术设计的抢答器与传统的抢答器相比,首先,电路连接简单,因为大多数功能单元都通过

数电课程设计八路抢答器

数字电子技术课程设计报告八路智力竞赛抢答器的设计 专业:电子信息科学及技术 班级: 2012级1班 姓名: 学号: 指导老师: 电子通信及物理学院 日期: 2015 年 1 月 10 日

指导教师评语

1设计要求 在当代社会中企业、学校和电视台等单位常举办各种智力竞赛, 抢答记分器是必要设备。过去在举行的各种竞赛中我们经常看到有抢答的环节,举办方多数采用让选手通过举答题板的方法判断选手的答题权,这在某种程度上会因为主持人的主观误断造成比赛的不公平性。人们于是开始寻求一种能不依人的主观意愿来判断的设备来规范比赛。因此,为了克服这种现象的惯性发生人们利用各种资源和条件设计出很多的抢答器,从最初的简单抢答按钮,到后来的显示选手号的抢答器,再到现在的数显抢答器,其功能在一天天的趋于完善不但可以用来倒计时抢答,还兼具报警等等功能,有了这些更准确地仪器使得我们的竞赛变得更加精彩纷呈,也使比赛更突显其公平公正的原则。在这一背景下本文利用74LS系列芯片设计了一种有效、便捷的八路数字抢答器。 设计要求如下:利用数字电路设计一个八路抢答器,允许八路参加,并具有锁定功能,用LED显示最先抢答的队号码,系统设置外部清除键,按动清除键,LED显示器

自动清零灭灯。数字显示功能:数字抢答器定时为30S,启动开启键以后要求Ⅰ)定时开始;Ⅱ)扬声器要短暂报警;Ⅲ)发光二极管亮灯;如果在30S内抢答有效,计时结束,30S内抢答无效,发光二极管灯灭。 2 设计任务 本次描述的八路抢答器功能指标为:设计一个能支持八路抢答的智力竞赛抢答器;主持人按下开始抢答的按键后,有短暂的报警声提示抢答人员抢答开始且指示灯亮表示抢答进行中;在开始抢答后数码管显示30秒倒计时;有抢答人员按下抢答键后,在数码管上显示抢答成功人员的编号,倒计时暂停,同时后续抢答人员的抢答将无效;当主持人再次按下按键回到复位状态,倒计时的数码管保持显示30,显示人员编号的数码管灭,指示灯灭。 本次设计的电路由包括抢答电路、定时电路、报警电路在内的三部分电路组成。抢答电路由按键、锁存器、优先编码器、数码管译码驱动器等器件组成;定时电路由555定时器、计数器、锁存器、数码管译码驱动器、开关等器件组成;报警电路由蜂鸣器、单稳态脉冲触发芯片等器件

基于单片机STC89C52RC的八路抢答器课程设计报告75092282

基于单片机STC89C52RC的八路抢答器课程设计报告75092282

信息与电子工程学院 课程设计报告 课程单片机技术应用 设计题目基于单片机STC89C52RC的八路抢答器专业应用电子技术 班级11级4班 成员姓名学号分工成绩 软件部分 硬件部分

目录 一、课程设计概述.................................................................................................................... - 1 - 1.1课程设计背景 (1) 1.2课程设计内容 (1) 1.3课程设计技术指标 (1) 二、方案的选择及确定............................................................................................................ - 1 - 2.1方案一:集成数字电路 (1) 2.2方案二:单片机 (2) 2.3方案分析比较: (2) 三、硬件设计............................................................................................................................ - 3 - 3.1系统硬件设计 (3) 3.2复位电路的设计 (3) 3.3时钟电路设计 (3) 3.4显示电路设计 (4) 3.5按键电路设计 (5) 3.6报警电路设计 (6) 3.7电源模块设计 (7) 四、系统软件设计.................................................................................................................... - 7 - 4.1系统的功能流程 (7) 4.2主程序流程图 (7) 五、系统调试过程.................................................................................................................... - 9 - 5.1软件调试 (9) 5.2硬件调试 (10) 六、总结.................................................................................................................................. - 13 - 七、遇到的问题及解决方法.................................................................................................. - 13 - 八、参考文献.......................................................................................................................... - 13 - 九、附录.................................................................................................................................. - 14 - 9.1仪器与设备 (14) 9.2元器件清单 (14)

51单片机的音乐跑马灯设计

摘要 单片机技术是一门不可或缺的技术,对我们将来的工作以及生活和学习都有很密切的联系。近年来,随着电子技术和微机计算机的迅速发展,单片机的档次不断提高,其应用领域也在不断的扩大,已在工业控制、尖端科学、智能仪器仪表、日用家电、汽车电子系统、办公自动化设备、个人信息终端及通信产品中得到了广泛的应用,成为现代电子系统中最重要的智能化的核心部件。 本设计使用AT89C52芯片,利用P0的8个端口连接8个发光二极管,P1的8个端口连接8个发光二极管,通过P0.0到P0.7的值和P1.0到P1.7的值控制“跑马灯”的亮灭,以达到显示效果。设计的中断程序要对多个按键动作进行响应,灯光变换的花样有15种,用模式按钮切换。按下模式按钮键,程序将按十五种模式切换,每按一次模式按钮键,切换一次跑马灯模式,而加速按钮和减速按钮可以改变闪烁速度;最后一种模式为音乐模式,加速按钮可切换音乐。 在单片机运行时,可以在不同状态下让跑马灯显示不同的组合,作为单片机系统正常的指示。当单片机系统出现故障时,可以利用跑马灯显示当前的故障码,对故障做出诊断。此外,跑马灯在单片机的调试过程中也非常有用,可以在不同时候将需要的寄存器或关键变量的值显示在跑马灯上,提供需要的调试信息。 关键词:音乐跑马灯;AT89C52单片机;74LS245驱动芯片;LED发光二极管

1 设计概述 (1) 1.1设计目的 (1) 1.2设计作用 (1) 1.3设计要求 (1) 1.4系统设计框图 (1) 2元器件介绍 (3) 2.1AT89C52单片机 (3) 2.2驱动芯片74LS245 (3) 2.3其他元件及功能 (4) 3 硬件电路设计 (6) 3.1单片机最小系统 (6) 3.2LED显示部分 (7) 3.3按钮控制部分 (7) 3.4数码管显示电路 (8) 3.5蜂鸣器部分 (8) 3.6系统总电路图 (9) 4 软件设计 (10) 4.1 程序流程图 (10) 4.2 程序设计 (10) 5 结束语 (32) 参考文献 (33)

基于51单片机的8路抢答器

基于51单片机的8路抢答器 摘要 此次设计提出了用AT89S51单片机为核心控制元件,设计一个简易的抢答器,本方案以AT89S51单片机作为主控核心,与晶振、数码管、蜂鸣器等构成八路抢答器,利用了单片机的延时电路、按键复位电路、时钟电路、定时/中断等电路,设计的八路抢答器具有实时显示抢答选手的号码和抢答时间的特点,还有复位电路,使其再开始新的一轮的答题和比赛,同时还利用汇编语言编程,使其实现一些基本的功能。 本设计的系统实用性强、判断精确、操作简单、扩展功能强。它的功能实现是比赛开始,主持人读完题之后按下总开关,即计时开始,此时数码管开始进行30s的倒计时,直到有一个选手抢答时,对应的会在数码管上显示出该选手的编号和抢答所用的时间,同时蜂鸣器也会发出声音,以提示有人抢答本题,如果在规定的60s时间内没有做出抢答,则此题作废,即开始重新一轮的抢答。在抢答和回答时间的最后5s,蜂鸣器都会给予报警提示。 关键词:单片机、AT89S51、抢答器

目录 第一章前言 (1) 第二章各模块的选择和论证 (3) 2.1抢答器显示模块选择 (3) 2.2 控制器选择 (4) 2.3 键盘选择 (5) 2.4 时钟频率电路的设计 (7) 2.5 复位电路的设计 (7) 2.6 报警电路 (8) 2.7 AT89C51单片机简单概述 (8) 2.7.1 AT89C51单片机的结构 (8) 2.7.2 AT89C51单片机管脚说明 (9) 第三章模块最终方案的设计 (12) 3.1总体设计思路 (12) 3.2 功能介绍 (12) 3.3 抢答器的软件设计 (12) 3.4 数码显示软件设计 (13) 第四章系统调试与仿真 (15) 4.1 软件调试问题分析 (15) 4.2 Proteus 仿真 (16) 第五章电路板的制作与检查 (17) 5.1 焊接的问题及解决 (17) 第六章总结 (18)

基于单片机的八路抢答器设计

XXX大学(学院)本科生毕业设计基于单片机的八路抢答器设计 学生姓名 所在专业 所在班级 申请学位 指导教师职称 副指导教师职称 答辩时间

目录 设计总说明 ................................................................................................................................. I INTRODUCTION ..................................................................................................................... II 第1章绪论 (1) 1.1 概述 (1) 第2章系统总体方案设计 (1) 2.1 设计要求 (1) 2.2 方案选择 (1) 2.2.1 单片机的选择 (1) 第3章系统硬件设计 (2) 3.1 整体方案设计 (2) 3.1.1 系统概述 (2) 3.1.2 系统框图 (2) 3.2 最小系统模块 (2) 3.2.1 STC89C52简介 (2) 3.2.2 最小系统电路 (4) 3.3 显示电路 (5) 3.3.1 数码管简介 (5) 数码管概述 (5) 3.3.2 数码管显示模块电路 (6) 3.4按键模块电路 (7) 3.5 报警模块电路 (8) 第4章软件设计 (8) 4.1 程序语言及开发环境 (8) 4.2 抢答器原理 (9) 4.2.1 主程序流程图设计 (9) 4.2.2 显示抢答违规流程图 (11) 4.2.3 抢答成功流程图 (11) 第5章硬件组装与调试 (12) 5.1 元器件的选择与测量 (12) 5.2 元件的焊接与组装 (12) 5.3 电路的调试 (13) 5.3.1 调试方法 (13) 5.3.2 调试步骤 (13)

单片机跑马灯c语言程序

#include //头文件 #define uchar unsigned char //宏定义 sbit Beep = P3^4; // 蜂鸣器 uchar code led[]={ 0xff,0xfe,0xfd,0xf7,0xef,0xbf,0x7f,0x00 }; /**********延时子函数************/ void delay(unsigned int time) { unsigned int i,j; for(i=0;i0;j-=2) { P0 = led[j]; delay(500); } for(j=5;j>0;j-=2) { P0 = led[j]; delay(500); } } } /*****************计数器中断1***************/ void inttre() interrupt 3

{ unsigned int i,j; i=10; for(j=0;j<10;j++) { Beep=1; delay(i); Beep=0; delay(i); i+=60; } } /*******************外部中断1***************/ void inttrer() interrupt 2 { unsigned int i; for(i=1;i<7;i++) { P0 = led[i]; delay(500); } }

八路抢答器解析

电子课程设计报告课程设计名称:数电课程设计 课程设计题目:八路抢答器 姓名:班级学号: 专业:电子信息科学与技术 同组人: 指导老师: 南昌航空大学电子信息工程学院 2016年9月20日

目录 第一章设计要求 1.1基本要求-------------------------------------------------------------3 1.2提高要求-------------------------------------------------------------3第二章系统的组成及工作原理 2.1系统的组成框图-----------------------------------------------------3 2.2系统的工作原理-----------------------------------------------------4 第三章电路设计 3.1.1抢答电路的设计----------------------------------------------5 3.1.2定时电路的设计---------------------------------------------6 3.1.3报警电路的设计---------------------------------------------7 3.1.4时序电路的设计----------------------------------------------8 3 . 1 . 5总电路原理---------------------------------------------------------------10 第四章电路实验与调试 4.1Multisilm仿真---------------------------------------------------11 第五章设计总结 附录(元件清单) 第一章设计要求

基于51单片机的8路抢答器

基于51单片机的8路抢答器

摘要 抢答器作为一种工具,已广泛应用于各种智力和知识竞赛场合。但抢答器的使用频率较低,且有的要么制作复杂,要么可靠性低。作为一个单位,如果专门购一台抢答器虽然在经济上可以承受,但每年使用的次数极少,往往因长期存放使(电子器件的)抢答器损坏,再购置的麻烦和及时性就会影响活动的开展,因此设计了本抢答器。 本设计是以八路抢答为基本理念。考虑到依需设定限时回答的功能,利用AT89C51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间。用开关做键盘输出,扬声器发生提示。同时系统能够实现:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效;抢答限定时间和回答问题的时间可在1-99s设定;可以显示是哪位选手有效抢答和无效抢答,正确按键后有音乐提示;抢答时间和回答问题时间倒记时显示,满时后系统计时自动复位及主控强制复位;按键锁定,在有效状态下,按键无效非法。 关键词:51单片机,抢答器,时间设定

目录 1 抢答器设计功能分析 (1) 1.1 数字抢答器的概述 (1) 1.2 设计任务与要求 (1) 2 方案设计 (2) 3 硬件电路设计 (3) 3.1 总体设计 (3) 3.2 外部振荡电路 (3) 3.3 复位电路的设计 (4) 3.4 显示电路的设计 (4) 3.5按钮输入电路的设计 (4) 3.6 发声 (5) 4 系统软件设计 (6) 4.1 程序系统结构图 (6) 4.2 程序流程图 (6) 4.3 程序代码: (9) 4.3.1 查询程序: (10) 4.3.2 非法抢答处理程序: (10) 4.3.3 倒计时程序(包括有效抢答程序): (11) 4.3.4 正常抢答处理程序: (13) 4.3.5 犯规抢答程序: (14) 4.3.6 显示程序: (15) 4.3.7 延时(显示和去抖动用到): (16) 4.3.8 TO溢出中断(响铃程序): (17) 4.3.9 T1溢出中断(计时程序): (17) 总结 (18) 参考文献 (19)

相关主题
文本预览
相关文档 最新文档