单片机计数显示器

合集下载

51单片机的电子计数器

51单片机的电子计数器

基于51单片机的电子计数器一.什么是电子计数器?电子计数器是利用数字电路技术数出给定时间内所通过的脉冲数并显示计数结果的数字化仪器。

二.基本组成:电子计数器主要由输入电路、比较电路、时间基准电路、控制电路和计数显示电路等部分组成。

1.输入电路:电子计数器的输入电路主要有三个作用,一是阻抗变换,二是电压放大,三是整形,所以它有三个组成部分。

阻抗变换的目的是通过提高输入端的阻抗来减小对被测信号源的分流,常用晶体管射极跟随器或场效应管源极跟随器来实现。

电压放大采用输入放大器,它们除需具有一定的放大倍数外,还需要有较宽的通频带,以保证电子计数器有一定的灵敏度和测量范围。

整形电路的作用是对被测量整形,使输至比较电路入口的波形规整化,成为前、后沿较陡的矩形脉冲,以保证计数电路能被可靠地触发,整形电路常用施密特触发器来实现。

2.比较电路:电子计数器的比较电路是由一个与门电路来实现被测信号(如频率)与标准时间信号的比较的。

3.时间基准电路(时基电路):电子计数器是用比较法进行测量的,也就是将被测信号与一系列标准时间信号进行比较。

4.控制电路:控制电路是电子计数器的指挥系统,在控制电路所送出的各种控制信号的指挥下,协调计数器各单元电路的工作。

5.计数显示电路:电子计数器的计数电路是对来自闸门的脉冲个数/N进行计数,并将计数结果用数字显示出来的仪器。

为了提高计数器的测量速度,并使每一次测得的数据段相对稳定地显示出来,常在计数电路后加上寄存器,用来暂时寄存测量所得的数据。

6.自校:自校是电子计数器对其内部基准信号源进行测量的一种功能,可借以检查自身的逻辑功能是否正常。

三.如何实现?实现计数功能,比较方便的办法是利用单片机内部的定时/计数器。

也可以采用下面三种方法:1.采用时基电路计数:例如采用555电路,外接必要的元器件(电阻和电容),即可构成硬件电路。

但不可编程。

2.采用可编程芯片计数:这种定时芯片的定时值及定时范围很容易用软件来确定和修改,此种芯片定时功能强,使用灵活。

认识单片机的定时器计数器

认识单片机的定时器计数器

void main(void) { TMOD=0x01;
TH0=-25000/256; TL0=-25000%256; TR0=1; ET0=1; EA=1; while(1); } void timer0(void) interrupt 1 { TH0=-25000/256;
TL0=-25000%256; P10=~P10; }
根据定时时间T,及公式(1)、(2)分别可以求出初 值N为:
方式1: N=216-T×fosc/12
(3)
方式2、方式3 :N=28-T×fosc/12 (4)
如果fosc=12MHZ,以上公式可简化为
方式1: N=216-T
方式2、方式3 :N=28-T
例如:系统的时钟频率是12MHz,在方式1下,如果希望定时 器/计数器T0的定时时间T为10ms,则初值N =216-T=6553610000=55536
任务一、认识单片机的定时器/计数器
一、定时器/计数器及其应用 在单片机应用系统中,定时或计数是必不可少的。例如: 测量一个脉冲信号的频率、周期,或者统计一段时间里 电机转动了多少圈等。常用的定时方法有:
1、软件定时 软件定时是依靠执行一段程序来实现的,这段程序本身 没有具体的意义,通过选择恰当的指令及循环次数实现 所需的定时,由于执行每条指令都需一定的时间,执行 这段程序所需总的时间就是定时时间。 软件定时的特点是无需硬件电路,但定时期间CPU被占 用,增加了CPU的开销,因此定时时间不宜过长,而且 定时期间如果发生中断,定时时间就会出现误差。
led=_crol_(led,1); 满10次变量led左移1位送P0口
P0=led;
}
}
[案例3] 用定时器的计数方式实现外部中断。如图 所示,P0口控制8只发光管轮流点亮,发光管点 亮时间为500ms,单脉冲电路控制发光管的移动 方向,按下单脉冲按钮,发光管左移,再按下发 光管右移 。

单片机原理及应用实验报告

单片机原理及应用实验报告

《单片机原理及应用》实验报告姓名:学号:班级:应用物理指导教师:日期:实验1 计数显示器一、实验目的熟悉51单片机的基本输入输出应用,掌握Proteus模块的原理图绘图方法及单片机系统仿真运行方法二、实验原理由共阴极数码管LED1和LED2、P0口、P2口,上拉电阻RP1及Vcc组成的输出电路;由按钮开关BUT、P3.7和接地点组成的输入电路,该电路在编程软件的配合下,可实现计数显示功能:可统计按钮BUT的按压次数,并将按压结果以十进制数形式显示出来;当显示值达到99后可自动从1开始,无限循环。

三、实验内容(1)观察Proteus模块的软件结构,熟悉菜单栏、工具栏、对话框等基本单元功能(2)学会选择元件、画导线、修改属性等基本操作(3)学会可执行文件加载及程序仿真运行方法(4)验证计数显示器的功能四、实验要求提交实验报告并包括如下内容:电路原理图、电路原理分析、仿真运行截图及实验小结1.实验原理图2.仿真运行截图3.实验小结通过这次实验让我认识了kell和proteus软件的基本功能,学会了用kell编写程序用proteus仿真运行。

在这次实验中同时也遇到了很多问题。

比如因为第一次使用这两个软件对界面还不太熟悉,浪费了很多的时间也产生了很多错误,但之后与同学们的交流过程中,慢慢的对这两个软件有了更深入的了解,在后期仿真的时候才能得心应手的处理问题。

这个计数显示器的实验让我进一步了解了单片机与数码管的魅力,看到了电子元件的神奇之处,只要按动按键就能让数码管的数字逐次加一,这大大激发了我的学习单片机兴趣,这次实验也会成为我以后学习单片机的奠基石,因为它打开了我认识单片机的大门,让我认识到了单片机的魅力,并让我沉浸其中。

实验2 指示灯开关控制器一、实验目的学习51单片机I/O口基本输入输出功能,掌握汇编语言的编程与调试方法。

二、实验原理输入电路由外接在P1口的8只拨动开关组成;输出电路由外接在P2口的8只低电平驱动的发光二极管组成。

单片机电子秒表显示器

单片机电子秒表显示器

实验课程:单片机原理及应用实验项目:电子秒表显示器实验地点:计算机中心三楼一号机房班级:姓名:学号:指导教师:实验日期: 2019-12-18一、实验目的掌握中断和定时/计数器工作原理,熟悉C51编程与调试方法。

二、实验原理实验电路原理图如图所示。

在编程软件配合下,要求实现如下功能:数码管的初始显示值为“00”;当1s产生时,秒计数器加1;秒计数到60时清0,并从“00”重新开始,如此周而复始进行。

软件编程原理为:采用T0定时方式1中断法编程,其中1s定时采用20次50ms定时中断的方案实现。

三.实验内容(1)理解定时器的工作原理,完成定时中断程序的编写与调试。

(2)练习μVision3与ISIS的联机仿真方法。

四.实验结果(1)C51源程序/*电子秒表显示器程序*/#include<reg51.h>unsigned char count=0; //定义中断次数计数器unsigned char second=0;//定义秒计数unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f} ;//0-9数码管段码timer0() interrupt 1//T0中断函数声明/*以下函数实现秒计数实现方式为: count 自增,若count=20则count清零,s增1*/ {count++; //count增1if(count==20)//若count=20{count=0;//count清零second++;//s增1}if(second==60)second=0;//若s=60,s清零P0=table[second/10];//P0对s取整P2=table[second%10];//P0对s取余TH0=0x3c;//T0重新载计数初值TL0=0xb0;}main(){TMOD=0x01;//T0定时(50ms)方式1初始化TH0=0x3c;//T0赋计数初值TL0=0xb0;P0=table[second/10];//P0与P2显示初始值0 P2=table[second%10];ET0=1;//启动T0EA=1;//开中断TR0=1;//启动定时器0while(1);//无限循环}(2)仿真运行结果截图五.实验总结做好一件事的前提是对自己做的事情有充分的了解和认识,做好完全的准备才能够有保证将这件事情做好,学习也是如此,想要做好一个程序,就要将他的工作过程以及条件搞清楚才能将程序编好编清楚。

基于AT89C51单片机的计数器设计

基于AT89C51单片机的计数器设计

基于AT89C51单片机的计数器设计单片机(Microcontroller)是一种集成了微处理器、存储器和各种输入输出功能的芯片,广泛应用于嵌入式系统中。

AT89C51单片机是英特尔公司生产的一款典型的8位微控制器,其具有强大的功能和灵活的设计特性,被广泛应用于工业控制、汽车电子、消费类电子产品等领域。

在众多应用中,计数器是一种常见的电子器件,被广泛应用于各种领域,比如工业控制、实验测量、智能家居等。

基于AT89C51单片机的计数器设计,可以实现对信号的计数和显示,具有较高的稳定性和可靠性。

本文将介绍基于AT89C51单片机的计数器设计。

首先介绍AT89C51单片机的基本特性和引脚布局,然后讨论计数器的原理和设计思路,最后给出具体的设计方案和实现步骤。

一、AT89C51单片机的基本特性和引脚布局AT89C51是一款高性能、低功耗的8位CMOS微控制器,其主要特性包括:1. 内置4KB闪存程序存储器,用于存储用户程序;2. 128字节RAM,用于存储临时数据和寄存器;3. 32个通用I/O引脚,用于连接外部器件和传感器;4. 完整的串行通信接口(UART),用于与外部设备进行通信;5. 定时器/计数器和PWM输出,用于实现各种定时和计数功能;6. 多种工作模式选择,包括被动低功耗模式和中断工作模式。

AT89C51单片机的引脚布局如下图所示:(图片)P0、P1、P2和P3是AT89C51单片机的四个通用I/O端口,分别具有8个引脚,用于连接外部设备和传感器。

X1和X2是晶体振荡器的输入和输出端,用于提供时钟信号。

RESET 是复位端,用于复位单片机。

EA和PSEN是扩展ROM控制端和程序存储器的读取端,用于外接ROM和实现程序存储。

ALE/PROG是地址锁存器的输入,用于地址总线的多路选择。

RXD 和TXD是串行通信接口的接收和发送端口,用于与外部设备进行通信。

二、计数器的原理和设计思路计数器是一种常用的数字电路,用于对输入信号进行计数和显示。

液晶显示器MCU介绍

液晶显示器MCU介绍

扩存储器和输入/输出接口芯片。在液晶显示器中, 时,才能显示出最佳的效果。如果输入到液晶显示器的分
开关量控制电路和模拟量控制电路都是并行输入/ 辨率高于或低于最佳分辨率,则要在主控电路中进行图
输出端口。
像的缩放处理。例如,液晶屏的固有分辨率是 1024×
②串行输入/输出接口:串行输入/输出接口是 768,当输入 800×600/ 60 Hz 的信号时,经转换后,输出
提供给显示器生产厂家,厂家可根据应用的需要来设
b.MCU 外部设置一片 EEPROM 存储器。对于此类微
计接口和编制程序,因此适应性较强,应用较广泛。图 控制器电路,程序存储在 MCU 内部的 ROM 中,数据(用
2 所示是微控制器硬件组成框图。
户数据、工厂模式数据等)存储在 MCU 外部的 EEPROM
液晶显示器驱动板 MCU 电路介绍(上)
笙朴德慧 衣英刚
微 控 制 器 (MCU),不 是 完 成 某 一 个 逻 辑 功 能 的 屏幕上显示出相应的 OSD 显示,并按照这些指令来
芯片,而是把一个计算机系统集成到一个芯片上,具 修改寄存器的值,然后把修改后的值写入 EEPROM 中
体说,就是把中央处理器(CPU)、随机存储器 RAM、只读 保存下来,并且把新的数据或者指令传送到液晶显
微控制器内部的存储器包括两个部分:
成的,如存/取数据、模拟量存储等操作,否则,微控
①随机存储器 RAM:用来存储程序运行时的中间
制器不能正常工作。
数据。在微控制器工作过程中,这些数据可能被改写,
微控制器的振荡电路一般由外接的晶体、电容和 所以 RAM 中存放的内容是随时可以改变的。
微控制器内电路共同组成。晶体多采用 12 MHz 或 24 MHz,

单片机实验一计数显示器

单片机实验一计数显示器

单片机原理及应用实验报告一实验名称:计数显示器实验指导老师:学生姓名:班级:学号:【实验目的】熟悉51单片机的基本输入\输出应用,掌握Proteus ISIS模块的原理图绘图方法及单片机系统仿真运行方法。

【实验方法】实验电路原理图如图1.1所示,图中含有如下五个分支电路:共阴极数码管LED1和LED2,P0口,P2口,上拉电阻RP1以及Vcc组成的输出电路;由按钮开关BUT,P3.7和接地点组成的输入电阻;由C1,C2,晶振X1,引脚XTAL1,XTAL2与接地点组成的时钟电路;由C3,R1,引脚RST和Vcc组成的上电复位电路;由Vcc和引脚(EA非)组成的片内ROM选择电路(简称片选电路)。

在编程软件的配合下,该电路可实现如下计数功能显示,可统计按钮BUT的按压次数,并将按压的结果以十进制形式显示出来;当显示值达到99后可自动从一开始循环。

图1.1【实验内容】观察Proteus ISIS模块的软件结构,熟悉菜单栏,工具栏,对话框等基本单元功能,如图1.2图1.2选择元件(1.3),画导线(1.4),画总线(1.5),修改参数(1.6)等基本操作图1.3图1.4图1.5图1.6 学会可执行文件加载及程序仿真运行方法;如图1.7图1.7验证计数显示器的共能。

【电路原理图分析】上拉电阻的存在是因为P0口不能正常输出信号“1”(因为漏极开路),所以接上拉电阻是必须的。

【实验程序】#include<reg51.h>void delay(unsigned int c) ; //申明延时函数,延时时间为c*10mssbit key=P3^7; //位申明unsigned char code duanma[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//0、1、2、3、4、5、6、7、8、9的显示码void main(){ int a,b;int i=0;while(1){if(key!=1){delay(1); //延时消抖(实际电路中会出现颤抖)if(key==1) //判断按键是否松开,松开之后才会自加一,不然计数不作处理i++;}if(i==100)i=1;a=i/10;b=i%10;P0=duanma[a]; //输出相应的十位P2=duanma[b]; //输出相应的各位}}void delay(unsigned int c) //延时程序10ms{unsigned char a, b;for (;c>0;c--){for (b=0;b<38;b++){for (a=0;a<130;a++);}}}【仿真运行截图】【实验小结】由于C语言有比较好的移植性,所以我从我的单片机教程上移植了数码显示管的断码,本着是16个I/0口控制两个数码管就没用到相应的74LS138译码器来选择哪个数码管显示(即位选),就是实验程序调试时发现延时的时间控制不是那么好控制,远远没有定时器那么精确。

单片机 科学计数法显示

单片机 科学计数法显示

单片机上显示科学计数法的方法,可以采用以下步骤:
1.将需要显示的数字转换成浮点数类型。

2.使用printf函数,以科学计数法的格式输出这个浮点数。

例如,如果需要显示一个8位的数字,并且想把小数点也点亮的话,那么可以将8个阳极全部送高电平,如果想要显示0的话,除了第“g, dp”这两位送低电平外,其余引脚全部都送高电平,这样它就显示出0字了。

需要注意的是,如果使用共阴数码管,那么在连接单片机时可能需要加驱动电路,可以用上拉电阻的方法或使用专门的数码管驱动芯片,比如74HC573、74HC245等,其输出电流较大,电路接口简单。

以上信息仅供参考,建议咨询专业的技术人员以获得权威解答。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验课程:单片机原理及应用
实验项目:计数显示器
实验地点:计算机中心三楼一号机房班级:
姓名:
学号:
指导教师:
实验日期:
三、实验步骤(硬件类:电路图或原理框图、操作过程等;软件类:任务、流程图、关键代码与注释等)
实验内容:
(1)观察Proteus ISIS模块的软件结构,熟悉菜单栏,工具栏,对话框等基本单元功能。

(2)学会选择元件,画导线,画总线,修改属性等基本操作。

(3)学会可执行文件加载及程序仿真运行方法。

(4)验证计数显示器的功能。

实验步骤:
1.选取所需原件
所需元件主要有:共阴极数码管两个、上拉电阻、按钮开关Button、时钟电路、片内ROM选择电路和上电复位电路等
2.进行元件布局
3.将元件连接完成
4.实现验证。

相关文档
最新文档