推荐阅读最新更新时间:2024-10-25 10:22
51单片机-定时器&数码管扫描显示
1.定时器中断实现间隔切换 在第六章第4讲的测试代码中提到过数码管微闪烁问题,这是由于三八译码器的IO端口切换的间隔时间不均匀导致,这部分的问题宋老师已经在《手把手教你学51单片机》文档6.4.2节有详细解释,并在6.5.2节里解决了这个问题。数码管扫描函数我们使用定时器0强制实现间隔1ms切换三八译码器的IO输出,这样保证了每个数码管被点亮的时间都是均匀的。我们在主函数里不停地执行数码管显示函数。这里是测试代码,用定时器1实现add间隔50ms自增1,数码管显示add的值。 #include reg52.h #include function.h //详见第六章第8讲 #include timer.h u32 a
[单片机]
51单片机定时器程序超简单实现数码管24小时时钟显示
用74hc573实现数码管24小时时钟显示,对于74hc573芯片如果不了解可以看看文件里面的手册,不多说先上代码 /*以下程序是根据74hc573芯片的锁存器 **原理来写的 **若有不懂的地方可以看看文件夹的芯片 **手册或者百度*/ #include reg52.h typedef unsigned char u8; typedef unsigned int u16; //串口定义没什么好说的 sbit LSA = P2^2; sbit LSB = P2^3; sbit LSC = P2^4; u8 code mabiao ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
[单片机]
51单片机C编程(四、定时器秒表数码管显示)
这个程序实现了通过定时器定时的秒表,并通过两位的数码管显示 #include reg51.h #define uchar unsigned char #define uint unsingned int #define LED P0 uchar tab ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//共阳数码管数字码 uchar num,t,shi,ge; //----------------子函数初始化-------------------- void init(); void timer0(); void display(); void delay(uch
[单片机]
定时器0控制LED的闪烁时间;计数器1来控制数码管的显示
/* 定时器0控制LED的闪烁时间;计数器1来控制数码管的显示 */ #include reg52.h #define uint unsigned int #define uchar unsigned char sbit DULA = P2^6; sbit WELA = P2^7; sbit LED1 = P1^0; void display(uint i); void delay(uint z); uchar code arry = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; void delay(uint z) {
[单片机]
定时器控制数码管扫描显示
************************************************************************************ 功能:定时器控制两位数码管扫描显示 器件:STC12C5A32S2 两个数码管 ************************************************************************************/ #include config.h #define uint unsigned int #define uchar unsigned char #define ulong unsigned long int
[单片机]
单片机C语言程序设计:定时器控制数码管动态显示
/* 名称:定时器控制数码管动态 显示 说明:8 个数码管上分两组动 态显示年月日与时分秒,本例的 位显示延时用定时器实现。 */ #include reg51.h #include intrins.h #define uchar unsigned char #define uint unsigned int //段码,最后一位是“-”的段码 uchar code DSY_CODE ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf}; //待显示的数据:09-12-25 与 23-59-58(分两组显示) uchar code Tabl
[单片机]
51单片机矩形键盘控制数码管显示0-F,以及LED灯的亮灭
电路图 总图 部分图1 部分图2 部分图3 元件清单 C语言程序 #include reg51.h #define uint unsigned int #define uchar unsigned char //共阳数码管编码表&LED灯 uchar code table = {0xc0,0xf9,0xa4,0xb0, 0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83, 0xc6,0xa1,0x86,0x8e}; //函数声明 void delay(uint time); //延时函数 void display(uchar k); //数码管显示0-F以及LED
[单片机]