历史上的今天
今天是:2025年08月17日(星期日)
2020年08月17日 | 单片机控制16x16点阵显示姓名
2020-08-17 来源:51hei

单片机源程序如下:
#include "reg51.h"
#define uchar unsigned char
#define uint unsigned int
#define Lie P1
sbit SHCP = P2^0;
sbit DS = P2^1;
sbit STCP = P2^2;
uchar code led[ ] ={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0xFE,0xFF,0x22,0x04,0x5A,0x08,0x86,0x07,0x08,0x20,0x88,0x11,0x68,0x0D,
0x18,0x41,0x0F,0x81,0xE8,0x7F,0x08,0x01,0x08,0x05,0x08,0x09,0x08,0x30,0x00,0x00, // 陈
0x00,0x40,0x00,0x38,0xFC,0x00,0x44,0x00,0x44,0x3C,0x44,0x40,0x44,0x40,0xFF,0x43,
0x44,0x4C,0x44,0x40,0x44,0x40,0x44,0x70,0xFC,0x04,0x00,0x08,0x00,0x30,0x00,0x00, //忠
0x20,0x04,0x10,0x04,0x08,0x04,0xFC,0x05,0x03,0x04,0x20,0x04,0x20,0x04,0x10,0xFF,
0x7F,0x04,0x88,0x04,0x88,0x04,0x84,0x04,0x82,0x04,0xE0,0x04,0x00,0x04,0x00,0x00, //华
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
//uchar led[]={}
void shift16bit(uchar dat1,uchar dat2) //595输出16位数据
{
uchar i;
STCP=0;
for(i=0;i<8;i++)
{
SHCP=0;
if(dat1 &0x80) DS=1;
else DS=0;
dat1<<=1;
SHCP=1;
}
for(i=0;i<8;i++)
{
SHCP=0;
if(dat2 &0x80) DS=1;
else DS=0;
dat2<<=1;
SHCP=1;
}
STCP=1;
}
void delay(uint x)
{
uint i;
for(i=0;i void main() { uchar i,x=0; uint n; while(1) { for(n=0;n<10;n++) for(i=0;i<16;i++) { Lie=i; shift16bit(led[2*i+1+2*x],led[2*i+2*x]); delay(10); } x++; if(x==48) x=0; /* for(n=0;n<100;n++) for(i=0;i<16;i++) { Lie= i; shift16bit(led[x][2*i+1],led[x][2*i]); delay(100); } x++; if(x==4) x=0; */ } }
上一篇:51单片机驱动OLED
史海拾趣
|
饱和电感是一种磁滞回线矩形比高,起始磁导率高,矫顽力小,具有明显磁饱和点的电感,在电子电路中常被当作可控延时开关元件来使用。由于其独特的物理特性,使之在高频开关电源的开关噪声抑制,大电流输出辅路稳压,移相全桥变换器,谐振变换器 ...… 查看全部问答> |
|
请教如下两个问题: 1. synplify不能综合状态机的“when others”状态:我用的是VHDL,编码风格中要求对case语句的使用要做到取值完全覆盖,即要加一个“when others”的判断(我想Verilog也一样吧,用default?),用c ...… 查看全部问答> |
|
请教vxworks系统下U盘识别问题,现象如下: 1.512M朗科U盘可以识别,并能读写U盘; 2.1G联想U盘曾经可以识别,并能读写,但是现在一直都不能再识别,不能再次读写。但此U盘在PC机上可以正常使用; 3.1G金士顿U盘不能识别 请大虾们赐教,感激不 ...… 查看全部问答> |
|
我刚学PROTEL,如果是一个有很多元件的双层板或者是三层板。如何布线呢。 能不能选中一层后,隐藏掉其他层的线啊,密密麻麻的看的眼花啊。 大哥大姐,我新手,没分啊,多谢了… 查看全部问答> |
|
个人补充说明 在其他ARM上实现了1588 PTP协议的软件实现,但是由于芯片不支持1588协议,精度不够,所以改在8962加入硬件时间标记,达到微秒级对时精度要求。… 查看全部问答> |




