单片机编程:让led数码管显示数字0到9

led数码管在单片机系统中应用非常普遍,是由发光二极管构成的。数码管由7个发光二极管组成的一个“日”字形,如果需要显示小数点,那么就再加上一个点,就是8段数码管。

数码管显示亮度高,相应速度快,分共阴极和共阳极两种形式,常用的有单个的和4联的,还有两联的和专门用来显示时间的。

/***************************************************
 *程序功能:点亮一个led数码管,让它显示数字从0到9  *
 *日期:2015.5.11							       *
****************************************************/
#include <reg52.h>
#define LONG 50000
#define SHORT 10000

//先定义字形码,table数组中装下了自形0到9
unsigned int table[] = {0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, 0x80, 0x90};

//延时函数
void delay(int i) {
	while(i--) {
	}
}

void main() {
	int i = 0;
	while(1) {
		for(i = 0; i < 10; i++) {
	  		P0 = table[i];
	  		delay(LONG);
		}
	}
}
时间: 2024-10-21 00:07:07

单片机编程:让led数码管显示数字0到9的相关文章

51单片机第三弹---数码管显示

先把定义拉过来: LED数码管是由多个发光二极管封装在一起组成"8"字型的器件,引线已在内部连接完成,只需引出它们的各个笔划,公共电极.LED数码管常用的段数一般为7段,有的另加一个小数点 .LED数码管根据LED的接法不同,分为共阴和共阳两类 . 贴原理图 其实就两点 :由于板子上有8个数码管,而每个数码管有8段,称选择显示哪一个数码管的东西为位选,称单个数码管显示数字几的东西为段选,位选由P2.2  p2.3 p2.4 控制 数码管IO口为P0 对于每一个数码管,显示数字几只要控制

4位共阳数码管 显示数字,调节亮度,时钟调时,

/*************************************************** 程序名:   4位共阳数码管驱动程序 编写时间: 2015年11月14日 硬件支持: STC12C4052AD 接口说明: 点扫描   数码管是 字段  管脚  MCU IO口 a 13脚  P1.0 b  9脚  P1.1 c  4脚  P1.2 d  2脚  P1.3 e  1脚  P1.4 f 12脚  P1.5 g  5脚  P1.6 dp 8脚  P1.7 1位 14脚  P3.0

单片机4*4按键数码管显示0-9

#include<reg51.h> #define KEY P1 //键盘 #define SEG P0 //数码管 sbit COM=P2^0; // 数码管com sbit OC = P2^1;//573锁存器 char code TAB[]={//0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xa7,0xa1,0x84,0x84,0xbf,0x7f};//共阳极 0x3f,0x06,0x5b,0x4f,0x66,

第3讲 数码管显示

一. 数码管显示原理 我们最经常使用的是七段式和八段式LED数码管,八段比七段多了一个小数点,其它的基本同样.所谓的八段就是指数码管里有八个小LED发光二极管,通过控制不同的LED的亮灭来显示出不同的字形.数码管又分为共阴极和共阳极两种类型,事实上共阴极就是将八个LED的阴极连在一起,让其接地,这样给不论什么一个LED的还有一端高电平,它便能点亮.而共阳极就是将八个LED的阳极连在一起.其原理图例如以下. 当中引脚图的两个COM端连在一起,是公共端,共阴数码管要将其接地,共阳数码管将其接正5伏电

单片机与控制实验(1)——数码管显示

一.实验目的和要求 初步学习和掌握MCS-51的体系结构和汇编语言,了解Keil编程环境和程序下载工具的使用方法.了解数码管输出的原理及编程方式. 二.实验设备 单片机测控实验系统 STC-ISP程序下载工具 Keil开发环境 三.实验内容 使用MCS-51汇编语言编写程序,完成如下功能: 1. 使用三个数码管显示十进制数值(001~999,可任意设置): 2. 每隔1秒,该数值自动减一,直到归零; 3. 归零后的下一秒,显示一个新的十进制数值(001~999,可任意设置): 4. 每隔1秒,新

一天:51单片机从入门到一个动态数码管显示数字控制

最近进的公司是一个做路由器的..很多嵌入式工程师.有个项目( 智能空调控制)是跟嵌入式工程师对接,我做APP+PHP..他做服务器.我们用MQTT(由于emqtt是用erlang写的,所以我也学了点erlang,后期有时间分享一下,这个语言很好,很强大.特别抽象).这个项目激发了我对嵌入式的兴趣,于是乎.开始从51单片机搞起了..所以就有了这篇文章...今天搞得东西挺多.我最近都是笔记形式,不想以前写的那么详细...因为学的东西太多,白天在公司搞项目,没时间写太具体... 今天学了什么呢? >k

单片机入门-矩阵键盘控制数码管显示

任务简述:通过按下4X4矩阵键盘实现数码管对应显示数字 实现方式:通过行列分接法,可以节省使用单片机的I/O口,扫描矩阵键盘是否有按下,判断P2端口得到的值. protues 硬件系统 单片机晶振复位电路: 锁存器.上拉电阻: 4x4矩阵键盘: 代码实现: void key44scan(void)//键盘扫描函数 { uint t; P2=0xfe; t=P2; t=t&0xf0; if(t!=0xf0) { delay(); t=P2; switch(t) { case 0xee:keynum

单片机 &amp; 4&#215;4矩阵键盘 &amp; 4位串行595数码管显示

1 #include ? <reg52.h> 2 #define uchar unsigned char 3 #define uint unsigned int 4 //Led数码管数 5 sbit DIO = P2^0;//串行数据输入 6 sbit LRCLK = P2^1;//时钟脉冲信号——上升沿有效 7 sbit LSCLK = P2^2;//打入信号————上升沿有效 8 unsigned char code LED_0F[] = 9 {// 0 1 2 34 5 6 78 9 A

【单片机】时钟及温度的显示

回头看我所写的文章,基本都是软件方面的,是个典型的"欺软怕硬"的人.然而,在最开始的时候,我学习的是硬件.在前面文章<我的2013–一起从心开始>一文中写道,我在大一暑假的时候开始了单片机的学习,在大二.大三期间做过些小东西.刚进入程序员的领域的时候,显然是单片机带我入了门.下面我将写写用单片机做过的一些东西,权当纪念. 本文介绍我大一暑假学完单片机后,在大二上学期为参加学校星火杯而完成的作品(最终没有参加比赛).这个电子制作是关于用单片机显示时间的作品,其功能就用单片机控