内容来自小蜜蜂老师~
静态显示
题目要求:

代码
#include"reg52.h"
unsigned char code SMG_Duan[] = {0xC0,0xF9,0xA4,0xB0,0x99,
0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E};
void Delay(unsigned int t)
{
while(t--);
while(t--);
}
void HC138(unsigned char n)
{
switch(n)
{
case 4:P2=(P2&0x1f)|0x80;break;
case 5:P2=(P2&0x1f)|0xa0;break;
case 6:P2=(P2&0x1f)|0xc0;break;
case 7:P2=(P2&0x1f)|0xe0;break;
}
}
void SMG_bit(unsigned char pos,unsigned char dat)
{
HC138(6);
P0=0x01<<pos;
HC138(7);
P0=dat;
}
void SMG_static()
{
unsigned i=0,j=0;
for(i=0;i<8;i++)
{
for(j=0;j<10;j++)
{
SMG_bit(i,SMG_Duan[j]);
Delay(600);
Delay(600);
}
}

本文档详细介绍了使用51单片机通过HC138译码器实现静态和动态显示SMG_Duan字符矩阵的方法。静态显示部分展示了如何逐位设置矩阵元素,而动态显示则演示了周期性地切换字符,如2022年动态显示。涉及到了定时延时、HC138选择器和P0口的控制。
最低0.47元/天 解锁文章
715

被折叠的 条评论
为什么被折叠?



