51单片机74HC595驱动一位数码管显示程序

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

51单片机74HC595驱动一位数码管显示程序

#include

#include

#define uchar unsigned char

#define uint unsigned int

sbit SCLK=P1^0; //SHCP 第11脚移位寄存器时钟输入

sbit MOSI=P1^1; //DS 第14脚串行数据输入

sbit RCLK=P1^2; //STCP 第12脚存储寄存器时钟输入

unsigned char code Tab[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,

0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};//共阴数码管

void In_595(unsigned char dat)

{

unsigned char i;

for(i=0;i<8;i++)

{

if((dat<

MOSI=1;

else MOSI=0;

SCLK=0;

_nop_();

SCLK=1;

}

}

void Out_595()

{

RCLK=0;

_nop_();

_nop_();

RCLK=1;

_nop_();

_nop_();

RCLK=0;

}

main()

{ In_595(Tab[8]);

Out_595();

while(1) ;

}

#include

#include

#define uchar unsigned char

#define uint unsigned int

sbit SCLK=P1^0; //SHCP 第11脚移位寄存器时钟输入

sbit MOSI=P1^1; //DS 第14脚串行数据输入

sbit RCLK=P1^2; //STCP 第12脚存储寄存器时钟输入

unsigned char code Tab[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,

0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};//共阴数码管void send(uchar dat)

{

uint i;

for(i=0;i<8;i++)

{

if((dat<

MOSI=1;

else MOSI=0;

SCLK=0;

_nop_();

SCLK=1;

}

RCLK=0;

_nop_();

_nop_();

RCLK=1;

}

main()

{ send(Tab[8]); while(1) ;

}

相关文档
最新文档