【51单片机实现0-7和8-1循环显示共阴数码管】2023-5-12

缘由https://ask.csdn.net/questions/7942557

cpp 复制代码
#include "reg52.h"
unsigned char code ShuMaGuan[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x00,0X80,64};//0~9隐.小数点-号
void main()
{
	unsigned char w=0,x=8,ys=0,sy=0;
	bit k=0;
	while(1)
	if(++ys==0)
	{
		P0=P1=255;
		if(!w)++w;
		P1=~w;
		w*=2;

		P0=ShuMaGuan[x-1];
		--x;
		if(!x)x=8;
	}
}

把之上基本的演化为自动循环的,数码管驱动编写原则是:消隐、送位值、送段值、延时。

cpp 复制代码
#include "reg52.h"
unsigned char code ShuMaGuan[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x00,0X80,64};//0~9隐.小数点-号
void main()
{//缘由https://ask.csdn.net/questions/7942557
	unsigned char w=0,x=8,ys=0,sy=0,m=0;
	bit k=0;
	while(1)
	if(++ys==0)
	{
		P0=P1=255;
		if(!w)++w;
		P1=~w;
		w*=2;

		P0=ShuMaGuan[k?x:x-1];
		if(!k)--x;else ++x;
		if(!k)if(!x)x=8;else;else if(x>8)x=1;else;
		if(++sy==0)if(++m>7){m=0;k=!k;if(k)x=1;else x=8;}
	}
}

坚决捍卫人类平安,严惩自招暴力肇事。甚不成人,又顽固不化,不接受言语文字教育,宁自选择挨揍教育方式,大人也只好不得已而为。

相关推荐
蜜桃味女焊匠人1 小时前
焊接生产线优化思路:解决手工焊、机器人焊气体浪费问题
人工智能·经验分享·其他·机器人
To_OC7 小时前
LC 51 N 皇后:我以为难的是回溯,结果栽在了对角线下标
javascript·算法·leetcode
2401_841495648 小时前
【操作系统】进程同步与互斥实验报告
c++·算法·操作系统·进程·并发·同步·互斥
克里斯蒂亚诺更新9 小时前
ruoyi角色权限的对应关系
笔记
a11177611 小时前
2FA 验证码生成器(github登录验证 app)
笔记·学习
人邮异步社区12 小时前
怎么把C语言学到精通?
c语言·开发语言
爱刷碗的苏泓舒12 小时前
PPP-AR 中的参考星选取:数学原理、评价指标与切换处理
算法·gnss·模糊度固定·ppp-ar·星间单差·参考星·卫星端偏差
破碎的南瓜13 小时前
sqli--sql注入过关笔记(1,2,3,4,5,9)
数据库·笔记·sql
你想知道什么?13 小时前
线性回归-学习笔记
笔记·学习·线性回归