西安航空职业技术学院 毕业设计论文
3 智能抢答器系统的硬件电路
3.1 抢答器的电源控制与分析
抢答器同时供6名选手或6个代表队比赛,分别用6个按钮表示。设置一个系统清除和抢答控制按扭,以及两个抢答时间的加和减,答题时间的加和减。控制模块使用单片机,型号为STC89C51,由单片机执行程序控制各个组件实现功能。显示方面使用4位共阴极的数码管,用动态扫描的显示方式显示数字号码,并且有一个蜂鸣器发声。
3.2 中央控制器
抢答器必须用到一些显示模块,对于一般的电子设计主要考虑以下两种显示方案。 方案一:使用液晶屏显示。液晶显示屏具有轻薄短小、低耗电量、无辐射危险,平面直角显示以及影像稳定不闪烁等优势,可视面积大,画面效果好,分辨率高,抗干扰能力强的特点。但由于选手和编号信息量比较少,且由于液晶是以点阵的模式显示各种符号,编程工作量大,控制器的资源占用较多,其成本也偏高。在使用时,不能有静电干扰,否则易烧坏液晶显示芯片,不易维护。
方案二:在使用传统的数码管显示。数码管具有:低能耗、低损耗、低压、寿命长、耐老化、防晒、防潮、防火、防高(低)温,对外界环境要求低,易于维护,同时其精度高,称量快,精确可靠,操作简单。数码显示是采用BCD编码显示数字,程序编译容易,资源占用较少。
综上所述,选用方案二,这里使用四位共阴极数码管作为显示模块。
图3-1 四位共阴极数码管
3.3 抢答器的控制模块
采用STC89C51作为系统控制器的CPU方案。单片机算术运算功能强,软件编程灵活、自由度大,可以用软件编程实现各种算法和逻辑控制,并且由于其功耗低、体积小、技术成熟和成本低等优点,使其在各个领域应用广泛。
STC89C51单片机是一种低功耗、高性能CMOS 8位微控制器,具有8k在系统可编程Flash存储器,与工业80C52产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,
3
西安航空职业技术学院 毕业设计论文
使得STC89C51单片机为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
图3-2 STC89C51引脚图
STC89C51具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,STC89C51可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
89C51基本外围电路: ①时钟电路:
单片机的时钟信号用来提供单片机片内各种微操作的时间基准,时钟信号通常用两种电路形式得到:内部振荡和外部振荡。STC89C51单片机内部有一个用于构成振荡器的高增益反向放大器,引脚XTALl和XTAL2分别是此放大电器的输入端和输出端,由于采用内部方式时,电路简单,所得的时钟信号比较稳定,实际使用中常采用这种方式,其外接晶体振荡器(简称晶振)或陶瓷谐振器就构成了内部振荡方式,片内高增益反向放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起可构成一个自激振荡器并产生振荡时钟脉冲。外接晶体以及电容C1和C2构成并联谐振电路,它们起稳定振荡频率、快速起振的作用,其值均为30pF左右,晶振频率选12MHz。
图3-3 晶振电路
4
西安航空职业技术学院 毕业设计论文
②复位电路:
为了初始化单片机内部的某些特殊功能寄存器,必须采用复位的方式,复位后可使CPU及系统各部件处于确定的初始状态,并从初始状态开始正常工作。单片机的复位是靠外电路来实现的,在正常运行情况下,只要RST引脚上出现两个机器周期时间以上的高电平,即可引起系统复位,但如果RST引脚上持续为高电平,单片机就处于循环复位状态。复位后系统将I/O口寄存器置为0FFH,堆栈指针SP置为07H,SBUF内置为不定值,其余的寄存器全部清0,内部RAM的状态不受复位的影响,在系统上电时RAM的内容是不定的。复位操作有两种情况,即上电复位和手动(开关)复位。本系统采用手动复位和上电复位组合方式。
图3-4 复位电路
3.4 抢答器的输入模块
键盘是单片机不可缺少的输入设备,是实现人机对话的纽带。
行列式键盘是用N条I/O线作为行线,M条I/O线作为列线组成的键盘,在行线和列线的每个交叉点上,设置一个按键中按键的个数是M*N个。这种形式的键盘结构,能够有效的提高单片机系统中I/O的利用率。
CPU对键盘的扫描可以采用取程序控制的随机方式,即只有在CPU空闲时才去扫描键盘,响应操作人员的键盘输入,但CPU在执行应用程序的过程中,不能响应键盘输入,对键盘的扫描可以采用定时方式,即利用单片机内部定时器每隔一定时间对键盘扫描一次,这样控制方式,不管键盘上有无键闭合,CPU总是定时的关心键盘状态。
最简单的编码方式就是根据I/O输入口所直接反映的相应按键,按下的状态进行编码,称按键直接状态码,对于这样编码的独立式键盘,CPU可以通过直接读取I/O口的状态来获取按键的直接状态编码值,根据这个值直接进行按键识别,这样形式的键盘结构简单,按键识别容易。
3.5 抢答器其他模块
发声模块:经过一个三极管和电容组成的电流放大电路驱动蜂鸣器,改变通电频率从而改变发声的音调。
5
西安航空职业技术学院 毕业设计论文
3.6 系统主体原理图
控制芯片采用单片机STC89C51,显示功能采用4位的共阴极数码管,输入硬件是用独立式键盘,用蜂鸣器发声来提示抢答的成功。
P12DCRP11KCOM1VCC12S11110AFS29S387BU34-LEDR1R2R3R4R5R6R7R8S1afS231234567C8G9AFBEDdpVCCS4S3S2S1AFBEDdp4039383736353433323130292827262524232221135CGS1P1.0P1.1P1.2P1.3P1.41.05(RXD)P31.16TXD)PP33.2((INT0)ALE/PROGP1.7EA/VPPP3.3(INT1)RST(A15)P2.7(A14)P2.6P3.4(T0)(A13PE2.5P)SNP3.5(T1)(A12)P2.4P3.6(WR)(A11)P2.3P3.7(RD)(A10)P2.2(AD0)P0.0(AD1)P0.1(AD2)P0.2(AD3)VC.CP03(AD4)P0.4(AD5)P0.5(AD6)P0.6(AD7)P0.7135SWITCH(A9)P2.1(A8)P2.0246CGS4EDdp123456cgS4edpS3bVCCXTAL2XTAL1U1STC89C51246GNDR22.2KbeQ1PNPVCC1234567819011121314151617181920+C110uFcLS112MHzC330SPEAKERK9K1024START13RESET2413qiangjiaK112413qiangjianK122413dajiaK132413dajianY1R110KC230K113S12413K224S213K324S313K424S413K524S513K624S613K1424 图3-6 主体原理图
4 程序设计说明
4.1 抢答主体程序
4.1.1 程序流程
程序不断地扫描单片机的各个输入端口,即各个选手的按键。当有按键按下时将成功抢答的选手组号显示在数码管上,同时蜂鸣器响起,直到启动键再次被按下时则继续扫描各个输入端口,进入下一轮的抢答。
开始
6
西安航空职业技术学院 毕业设计论文
初始化
第一组 是 否 第二组 是 显示组号 否 第三组 是 蜂鸣器响起
否 第四组 是
否 第五组 是
否 第六组 是
图4-1 程序流程图
4.1.2 程序注释
主题程序如下:
#include
#define uchar unsigned char #define uint unsigned int
sbit start=P3^0; //主持人按键开始 sbit reset=P3^1;
7
//复位
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于单片机的6路抢答器设计(2)在线全文阅读。
相关推荐: