时钟一:51单片机用替换的方法在数码管上显示时钟
来源:互联网 发布:淘宝店的信誉如何提升 编辑:程序博客网 时间:2024/06/05 10:34
主文件clock.c:
#include <reg52.h>
#include "./delay/delay.h"
#define PORTLEN P0
sbit bit_select = P2^0;
sbit seg_select = P2^1;
unsigned char src[8] = {0x3f,0x3f,0x40,0x3f,0x3f,0x40,0x3f,0x3f};
unsigned char qrc[8] = {0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
unsigned char second1[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void main()
{
unsigned char i;
unsigned char j = 0;
unsigned char k = 0;
unsigned char l = 0;
unsigned char m = 0;
unsigned char n = 0;
unsigned char q = 0;
unsigned char num = 0;
unsigned char count = 0;
while(1)
{
for(i = 0; i < 8; i++)
{
PORTLEN = src[i];
seg_select = 1;
seg_select = 0;
PORTLEN = qrc[i];
bit_select = 1;
bit_select = 0;
delay_ms(2);
}
count++;
if(count == 65)
{
j++;
count = 0;
if(j == 10)
{
k++;
j = 0;
if(k == 6)
{
l++;
k = 0;
if(l == 10)
{
m++;
l = 0;
if(m == 6)
{
n++;
m = 0;
if(n == 10)
{
q++;
src[0] = second1[q];
}
if(n == 4)
{
num++;
if(num == 3)
{
src[7] = second1[0];
src[6] = second1[0];
src[4] = second1[0];
src[3] = second1[0];
src[1] = second1[0];
src[0] = second1[0];
n = 0;
q = 0;
num =0;
continue;
}
}
src[1] = second1[n];
}
src[3] = second1[m];
}
src[4] = second1[l];
}
src[6] = second1[k];
}
src[7] = second1[j];
}
}
}
延时函数delay.c
void delay_us(unsigned char t)
{
while(--t);
}
void delay_ms(unsigned char t)
{
while(t--)
{
delay_us(245);
delay_us(245);
}
}
包含声明头文件delay.h
#ifndef _DELAY_H_
#define _DELAY_H_
extern void delay_us(unsigned char t);
extern void delay_ms(unsigned char t);
#endif
- 时钟一:51单片机用替换的方法在数码管上显示时钟
- 单片机数码管时钟显示
- 利用单片机的数码管模拟时钟的显示时间
- 51单片机 时钟程序设计 数码管可闪烁显示数值
- 利用数码管显示的时钟
- 用单片机定时器和数码管实现的电子时钟
- 数码管显示时钟
- DS1302时钟数码管显示
- 数码管显示时钟
- 时钟六:在LCD1602上显示时钟
- 凌阳61单片机使用7段数码管显示数字时钟的程序
- 模拟时钟在LCD上的显示
- 模拟时钟在LCD上的显示
- [51]数码管作时钟
- 单片机显示时钟
- 【单片机】数码管时钟掉点保存
- C51单片机实现六位数码管时钟
- 【单片机】时钟及温度的显示
- Golang1.7动态库的使用,C和Golang的动态库以及使用
- 一致性哈希算法(consistent hashing)
- BZOJ - 1609/USACO - Feb08 Silver Eating Together 麻烦的聚餐 重庆一中高2018级竞赛班第九次测试 2016.9.10 Problem 2
- 后台学习之---ServletContext学习
- 设计模式——观察者模式(C++)
- 时钟一:51单片机用替换的方法在数码管上显示时钟
- jdbc连接mysql数据库出现中文乱码需要注意的问题
- 多重部分和
- linux ubuntu samba 服务器
- CSDN写博客添加代码两种方法
- FFmpeg浅尝辄止(一)——工欲善其事,必先利其器
- effective stl 第12条: 切勿对STL容器的线程安全性有不切实际的依赖
- HTML基本标记
- 从实际出发,深切感受当地教育