资源简介
4位串行595数码管资料。测试芯片 STC89C52
DIO接 P1.0 RCK接P1.1 SCK接P1.2 上电 数码管会显示4 3 2 1
代码片段和文件信息
#include
unsigned char code fseg[]={0xc00xf90xa40xb00x990x920x820xf80x800x90};
unsigned char code segbit[]={0x800x400x200x100x080x040x020x01};
unsigned char disbuf[4]={0000};
//-----------------------------------------------------------------------------
// 函数原形定义
#define uchar unsigned char
void main (void); // 主函数
void LED4_Display (void); // LED显示
void LED_OUT(uchar X); // LED单字节串行移位函数
unsigned char code LED_0F[]; // LED字模表
sbit DIO = P1^0; //串行数据输入
sbit RCLK = P1^1; //时钟脉冲信号——上升沿有效
sbit SCLK = P1^2; //打入信号————上升沿有效
//-----------------------------------------------------------------------------
// 全局变量
uchar LED[8]; //用于LED的8位显示缓存
//*****************************************************************************
// 主程序
//
void main (void)
{
LED[0]=1;
LED[1]=2;
LED[2]=3;
LED[3]=4;
while(1)
{
LED4_Display ();
}
}
void LED4_Display (void)
{
unsigned char code *led_table; // 查表指针
uchar i;
//显示第1位
led_table = LED_0F + LED[0];
i = *led_table;
LED_OUT(i);
LED_OUT(0x01);
RCLK = 0;
RCLK = 1;
//显示第2位
led_table = LED_0F + LED[1];
i = *led_table;
LED_OUT(i);
LED_OUT(0x02);
RCLK = 0;
RCLK = 1;
//显示第3位
led_table = LED_0F + LED[2];
i = *led_table;
LED_OUT(i);
LED_OUT(0x04);
RCLK = 0;
RCLK = 1;
//显示第4位
led_table = LED_0F + LED[3];
i = *led_table;
LED_OUT(i);
LED_OUT(0x08);
RCLK = 0;
RCLK = 1;
}
void LED_OUT(uchar X)
{
uchar i;
for(i=8;i>=1;i--)
{
if (X&0x80) DIO=1; else DIO=0;
X<<=1;
SCLK = 0;
SCLK = 1;
}
}
unsigned char code LED_0F[] =
{// 0 1 2 3 4 5 6 7 8 9 A b C d E F -
0xC00xF90xA40xB00x990x920x820xF80x800x900x8C0xBF0xC60xA10x860xFF0xbf
};
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-12-31 18:01 4位串行595数码管资料\
文件 35880 2013-12-31 18:01 4位串行595数码管资料\4位595数码管电路原理图.pdf
目录 0 2013-12-31 17:59 4位串行595数码管资料\HC595驱动8位led的8051程序\
文件 799 2013-08-30 17:52 4位串行595数码管资料\HC595驱动8位led的8051程序\1.plg
文件 4908 2013-08-30 17:52 4位串行595数码管资料\HC595驱动8位led的8051程序\74HC595.LST
文件 853 2013-08-30 17:52 4位串行595数码管资料\HC595驱动8位led的8051程序\74HC595.OBJ
文件 1959 2013-08-30 17:52 4位串行595数码管资料\HC595驱动8位led的8051程序\74HC595.c
文件 685 2013-08-30 17:52 4位串行595数码管资料\HC595驱动8位led的8051程序\LED
文件 1803 2013-08-30 17:52 4位串行595数码管资料\HC595驱动8位led的8051程序\LED.M51
文件 938 2013-08-30 17:52 4位串行595数码管资料\HC595驱动8位led的8051程序\LED.hex
文件 43 2013-08-30 17:52 4位串行595数码管资料\HC595驱动8位led的8051程序\LED.lnp
文件 435 2013-08-30 17:52 4位串行595数码管资料\HC595驱动8位led的8051程序\LED.plg
文件 55318 2013-08-30 17:52 4位串行595数码管资料\HC595驱动8位led的8051程序\LED.uvopt
文件 13411 2013-08-30 17:52 4位串行595数码管资料\HC595驱动8位led的8051程序\LED.uvproj
文件 55322 2013-08-30 17:52 4位串行595数码管资料\HC595驱动8位led的8051程序\LED_uvopt.bak
文件 13404 2013-08-30 17:52 4位串行595数码管资料\HC595驱动8位led的8051程序\LED_uvproj.bak
文件 6376 2013-08-30 17:52 4位串行595数码管资料\HC595驱动8位led的8051程序\STARTUP.A51
文件 14043 2013-08-30 17:52 4位串行595数码管资料\HC595驱动8位led的8051程序\STARTUP.LST
文件 273 2013-08-30 17:52 4位串行595数码管资料\HC595驱动8位led的8051程序\STARTUP.OBJ
文件 78 2013-12-03 17:29 4位串行595数码管资料\接线说明.txt
- 上一篇:最小二乘法FORTRAN
- 下一篇:基于单片机设计的脉搏测量仪(毕设)
评论
共有 条评论