51单片机数码管0到9循环程序

“51单片机数码管0到9循环程序”相关的资料有哪些?“51单片机数码管0到9循环程序”相关的范文有哪些?怎么写?下面是小编为您精心整理的“51单片机数码管0到9循环程序”相关范文大全或资料大全,欢迎大家分享。

51单片机数码管电子时钟程序

标签:文库时间:2024-10-01
【bwwdw.com - 博文网】

这是一个以8位数码管做的电子时钟程序,包括整点报时

#include<reg52.h>

#define uint unsigned int #define uchar unsigned char

uchar miao,fen,shi,m,f,s,num,num2,num1,num4;

uchar code table1[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; sbit beep=P3^7; void delay(uint z) { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); }

void xiansi( uchar aa,uchar bb,uchar cc) { P2=0xdb; P0=0xbf; delay(1); P0=0xff; // num2++;

if(num1==1&num2==0|num1==1&num2==1) { P2=0xff; P0=table1[aa%10]; delay(1); P0=0xff; P2=0xff;

单片机按键扫描数码管显示C语言程序

标签:文库时间:2024-10-01
【bwwdw.com - 博文网】

单片机按键扫描数码管显示C语言程序

按键扫描数码管显示程序共定义了6个键的功能:K1、K2、K3、K4以及K5、K8组成的一对复合键,其中K2,K3为连击键,K5为上档键。在正常工作模式下按K1则切换至状态,在设定模式下按K1键循环选择4个数码管中的某个,被选中的数码管闪烁,此时单按K2键显示数值加1;常按K2显示数值以一定速度递增,同时数码管停止闪烁,当K2松开,数码管恢复闪烁,显示数值停留在K2松开前的值上。K3完成的功能和K2类似。其完成减操作。这2个键只有在设定状态才有效,可以有效防止误操作。K4为确认键,按下该键回到正常显示状态,所有指示灯熄灭,数码管显示刚刚设定的数值。K5+K8这对复合键执行复位操作,任何情况下同时按下K5和K8或先按下K5再按下K8,所有数码管的显示全为0,指示灯全灭,进入正常显示状态。同时程序还对如下几个异常操作进行了处理: 1. 2个或多个功能键同时按下

2. 一个功能键按下未释放,又按另一个功能键,然后再松开其中一个功能键 3. 先按下功能键再按下上档键

4. 多个上档键和一个功能键同时按下,此时不做处理。等到松开其他上档键,只剩下一个上

5. 档键和一个功能键时才执行这对复合键;或松开所有上档

51单片机不加锁存器数码管动态显示0-999

标签:文库时间:2024-10-01
【bwwdw.com - 博文网】

51单片机不加锁存器数码管动态显示0-999

使用STC89C52RC单片机,数码管为共阳数码管PNP驱动,P3.4-P3.6控制位选,P0口控制段选信号,图中P8接到有上拉电阻的P0口,P9接到P3.4-P3.6,附上图和程序!

#include

sbit wei1=P3^6; /*百位*/ sbit wei2=P3^4; /*个位*/ sbit wei3=P3^5; /*十位*/

unsigned char code LedChar[] = { //数码管显示字符转换表 0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90, 0x88, 0x83, 0xC6, 0xA1, 0x86, 0x8E };

void delay(int z);

unsigned char i=0; //动态扫描的索引 unsigned int cnt=0; //记录 T0 中断次数 void main() {

unsigned long sec=0; //记录经过的秒数 EA=1; //使能总中断

TMOD=0x01; //设置 T0 为模式 1

TH0=0xB8; //为 T0 赋初值 0

51单片机不加锁存器数码管动态显示0-999

标签:文库时间:2024-10-01
【bwwdw.com - 博文网】

51单片机不加锁存器数码管动态显示0-999

使用STC89C52RC单片机,数码管为共阳数码管PNP驱动,P3.4-P3.6控制位选,P0口控制段选信号,图中P8接到有上拉电阻的P0口,P9接到P3.4-P3.6,附上图和程序!

#include

sbit wei1=P3^6; /*百位*/ sbit wei2=P3^4; /*个位*/ sbit wei3=P3^5; /*十位*/

unsigned char code LedChar[] = { //数码管显示字符转换表 0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90, 0x88, 0x83, 0xC6, 0xA1, 0x86, 0x8E };

void delay(int z);

unsigned char i=0; //动态扫描的索引 unsigned int cnt=0; //记录 T0 中断次数 void main() {

unsigned long sec=0; //记录经过的秒数 EA=1; //使能总中断

TMOD=0x01; //设置 T0 为模式 1

TH0=0xB8; //为 T0 赋初值 0

基于51单片机的DS18B20数码管显示程序

标签:文库时间:2024-10-01
【bwwdw.com - 博文网】

///////共阳数码管////////////////

#include //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义 #include \#include \

#define DuanPort P0 //定义数据端口 程序中遇到DataPort 则用P0 替换 #define WeiPort P2 //定义数据端口 程序中遇到DataPort 则用P2 替换

sbit duan=P3^0;//定义锁存使能端口 段锁存 sbit wei=P3^1;// 位锁存 sbit LED=P3^7;

bit ReadTempFlag;//定义读时间标志 unsigned int num=0,num1=0;

//////************数码管共阳****************///////////

unsigned char code DuanMa[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};// 显示段码值0~9

unsigned char code WeiMa[]={0x01,0x02,0x04,0x08,0x10,0

单片机按键扫描数码管显示C语言程序

标签:文库时间:2024-10-01
【bwwdw.com - 博文网】

单片机按键扫描数码管显示C语言程序

按键扫描数码管显示程序共定义了6个键的功能:K1、K2、K3、K4以及K5、K8组成的一对复合键,其中K2,K3为连击键,K5为上档键。在正常工作模式下按K1则切换至状态,在设定模式下按K1键循环选择4个数码管中的某个,被选中的数码管闪烁,此时单按K2键显示数值加1;常按K2显示数值以一定速度递增,同时数码管停止闪烁,当K2松开,数码管恢复闪烁,显示数值停留在K2松开前的值上。K3完成的功能和K2类似。其完成减操作。这2个键只有在设定状态才有效,可以有效防止误操作。K4为确认键,按下该键回到正常显示状态,所有指示灯熄灭,数码管显示刚刚设定的数值。K5+K8这对复合键执行复位操作,任何情况下同时按下K5和K8或先按下K5再按下K8,所有数码管的显示全为0,指示灯全灭,进入正常显示状态。同时程序还对如下几个异常操作进行了处理: 1. 2个或多个功能键同时按下

2. 一个功能键按下未释放,又按另一个功能键,然后再松开其中一个功能键 3. 先按下功能键再按下上档键

4. 多个上档键和一个功能键同时按下,此时不做处理。等到松开其他上档键,只剩下一个上

5. 档键和一个功能键时才执行这对复合键;或松开所有上档

红外遥控键值解码数码管显示单片机程序

标签:文库时间:2024-10-01
【bwwdw.com - 博文网】

红外遥控键值解码数码管显示单片机程序

; 9012遥控键值读取器 *
;* 数码管显示, P0口为数码管的数据口 *
;* *
;* K17键按下,继电器吸合。K19键按下,继电器关闭。 *
;* *

;-----------------------------------------------
IRCOM EQU 20H ;20H-23H IR使用

IRIN EQU P3.2
BEEP EQU P2.4
RELAY EQU P2.6
;-------------------

0-9数码管显示实验

标签:文库时间:2024-10-01
【bwwdw.com - 博文网】

桂林航天工业学院学生实验报告

课程名称 单片机原理及应用 实验项目名称 0-9数码管显示实验 实验日期 专业班级 开课系(部)及实验室 学生姓名 指导教师 李精华 四院 巡天408 学号 实验成绩 教师评语: 1 2 3 4 5 实验方法 □有创新 □有改进 □有缺陷 □合理 实验结果 □一次成功 □改进后成功 □ 不成功 文字表述 □简明通顺 □重复冗长 □没有实质内容 实验态度 □严谨认真 □循规蹈矩 □敷衍应付 综合评价 □优秀 □良好 □中等 □及格 □不及格 教师签名: 批改时间: 年 月 日 一、实验目的 1、熟悉51单片机的项目开发过程。 2、掌握单片机C程序的基本结构及编程思想。 3、掌握单片机C程序设计的方法和步骤。 4、培养学生综合应用能力。 二、实验内容 1、绘制51单片机控制的数码管显示电路原理图; 2、用单片机C语言编程实现电路功能; 3、下载到开发板验证; 三、主要仪器设备 序 号 1 2 3 型 号 XP 名 称 电脑 单片机开发板 Keil编程软件 数

数码管动态显示的51单片机时钟设计

标签:文库时间:2024-10-01
【bwwdw.com - 博文网】

一看就会,适合初学者参考

T0,T1同时开中断,和别人的有点不一样

源程序如下

//数码管设计的可调电子钟 //K1,K2分别调整小时和分钟 #include #include

#define uchar unsigned char #define uint unsigned int

uchar code DSY_CODE[]={0xC0,0xF9,0xA4,0xB0,0x99, //共阳段码 0x92,0x82,0xF8,0x80,0x90,0xFF}; uchar DSY_BUFFER[]={0,0,0xBF,0,0,0xBF,0,0}; //显示缓存 ucharScan_BIT; //扫描位,选择要显示的数码管 uchar DSY_IDX; //显示缓存索引 ucharKey_State; //P1端口按键状态 uchar h,m,s,s100; //十分秒 ,1/100s void DelayMS(uchar x) //延时 {

uchar i;

while(x--) for(i=0;i<120;i++);

}

void Increase_Hour() //小时处理函数 {

if(++h>23)h=0;

DSY_BUF

单片机和数码管设计的电子时钟

标签:文库时间:2024-10-01
【bwwdw.com - 博文网】

本设计是基于单片机和数码管还有74hc573设计的电子时钟,具有可调时和日历还有闹钟的功能。

单片机数码管 显示电子时钟论文

学 校: 黑龙江科技学院 专业名称: 通信工程 班 级: 10-2班 姓 名:日 期: 2012/11/11

本设计是基于单片机和数码管还有74hc573设计的电子时钟,具有可调时和日历还有闹钟的功能。

摘要

此设计以at89c52单片机为核心控制元件,与数码管和蜂鸣器和按键结合,在应用c语言来实现电子时钟的显示和调制功能。本次设计运用了KEIL和protues仿真软件来进行调试,并给出了完整的设计电路和KEIL程序代码,并画出了编程的逻辑流程图。通过调试和运行,最终完成了一个完整的电路仿真,其功能是实现时间和日历的现实并且都能进行相应的调整,同时还能进行闹铃的设置并在达到预定的时间时闹铃。

关键字:at89c51单片机、数码管、时钟

一、电子时钟功能概述

本次电子时钟作品分由单片机部分、数码管显示部分、按键部分和蜂鸣器电路相互连接组成。这样硬件部分就组成了一个电子时钟的基本完整的电路。电子时钟的工作过程是:接通电源时时钟开始工作,时钟分为三个状态:正常计时、显示日历