华强电子网

电子元器件
采购信息平台

扫码下载
手机洽洽

  • 微信小程序

    让找料更便捷

  • 扫码下载手机洽洽

    随时找料

    即刻洽谈

    点击下载PC版
  • 华强电子网公众号

    电子元器件

    采购信息平台

  • 华强电子网移动端

    生意随身带

    随时随地找货

  • 华强商城公众号

    一站式电子元器件

    采购平台

  • 芯八哥公众号

    半导体行业观察第一站

用单片机AT89C2051制作的口语测试计时器

来源:-- 作者:-- 浏览:569

标签:

摘要: 本文介绍的用单片机AT89C2051制作的口语测试计时器,采用倒计时方式,剩余时间一目了然。时间到了还会发出报警声。   一、硬件电路工作原理    电路见附图,由单片机电路和数码显示电路等组成。使用复位和开始两个按钮,用三位数码管分别显示分和秒。   AT89C205l、TX、R1、Cl等组成单片机电路。数码管DSl~DS3、VTl~VT3、R3~R12等组成数码显示电路。本机采用动态显示方式,

  本文介绍的用单片机AT89C2051制作的口语测试计时器,采用倒计时方式,剩余时间一目了然。时间到了还会发出报警声。

  一、硬件电路工作原理
  
  电路见附图,由单片机电路和数码显示电路等组成。使用复位和开始两个按钮,用三位数码管分别显示分和秒。

  AT89C205l、TX、R1、Cl等组成单片机电路。数码管DSl~DS3、VTl~VT3、R3~R12等组成数码显示电路。本机采用动态显示方式,使用共阳数码管,P3.3~P3.5口作数码管的位码输出,通过三极管驱动数码管。P1.0~P1.6口作段码输出,用以驱动数码管的各字段。BL是自带振荡器的讯响器。当P3.0输出低电平时,BL发出报警声。

 

  二、软件设计
  
  程序用C语言编写,由主程序、定时器T0中断服务程序、定时器Tl中断服务程序、延时子程序等模块组成。主程序主要完成程序的初始化和对开始按键Sl的检测。

  TO中断服务程序由动态扫描显示等部分组成。TO的中断时间设置为5ms。采用三位显示,TO每中断一次显示一位,3次中断,即15ms,刷新一次数据。程序中用到三个数组:DisoTab[l0]用来存放字形码;BitTab[3]存放位驱动码;DispBuf[3]存放待显示的数,其中DispBuf[0]存放分钟数,DispBuf[1]、DispBuf[2]分别存放秒的十位和个位。Tl中断服务程序用作时间计数。中断时间设置为50ms。为了获得1秒钟的时间。使用了变量n,T1每中断一次n加l。当n=20时即得到1秒的时间。程序中s作秒计数,m作分计数,它们的初始值为s=O。m=5。当n计满20时s减l(当s为O时结果取59):当s计满60个数时m减1:m、s均为0说明5分钟的定时时间到。BL发出1秒钟报警声。

  在计时过程中。如果要提前结束计时,只需按一下复位键S2,这时数码显示5:00;当按开始键S1后。倒计时开始。

  三、元器件选择与安装
  
  DSl~DS3选共阳LED数码管,BL选用内部带振荡器的讯响器。其余元器件的参数见附图。

  先将C语言源程序用KEILC51编译成目标文件。即HEX文件。再用编程器将HEX文件写入AT89C205l中。安装时,将表示分的数码管DSI和表示秒的数码管DS2、DS3分开一定的距离。

型号 厂商 价格
EPCOS 爱普科斯 /
STM32F103RCT6 ST ¥461.23
STM32F103C8T6 ST ¥84
STM32F103VET6 ST ¥426.57
STM32F103RET6 ST ¥780.82
STM8S003F3P6 ST ¥10.62
STM32F103VCT6 ST ¥275.84
STM32F103CBT6 ST ¥130.66
STM32F030C8T6 ST ¥18.11
N76E003AT20 NUVOTON ¥9.67