【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;}
	}
}

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

相关推荐
La Pulga1 小时前
【FreeRTOS源码学习笔记】任务延时列表
笔记·mcu·学习·嵌入式·freertos·实时操作系统
Navigator_Z6 小时前
LeetCode //C - 1317. Convert Integer to the Sum of Two No-Zero Integers
c语言·算法·leetcode
Peter-OK6 小时前
PostgreSQL学习笔记(入门-进阶-精通说明)
笔记·学习·postgresql
D e re k ZH6 小时前
C++ 标准库算法全景指南
数据结构·c++·算法
冻柠檬飞冰走茶7 小时前
字母移动游戏题解:贪心求最长可保留连续子串(附 C 实现)
c语言·开发语言·数据结构·算法·动态规划
雪落漂泊8 小时前
C++算法 二分查找篇(上)
开发语言·c++·算法
成都蜀味缘餐饮技术培训学校8 小时前
手撕烤兔技术培训实战指南,秘制腌料配方比例与调制手法
大数据·经验分享·笔记·其他·微信公众平台
聪明的笨猪猪8 小时前
AI应用架构选型:架构师的核心决策困境与权衡
经验分享·面试·架构
希和20279 小时前
免费AI视频生成工具汇总(国内优先,适合做漫剧、短视频,Obsidian笔记版)
人工智能·笔记·音视频