51单片机点阵解析

这篇博客深入解析了51单片机点阵显示的代码,包括点阵显示数组、各种字符字模的定义,以及HC595芯片的数据传输过程。通过具体的HC595_data函数,解释了4个并联74HC595如何实现8x8点阵的逐位输入,强调了数据输入的实际顺序与直觉上的差异。
摘要由CSDN通过智能技术生成

感谢大熙熙 对51单片机点阵代码的详细分析

http://www.cnblogs.com/one-meter/p/4188277.html

网址阐述了他对代码的解析


不过部分代码解析不够透彻

我融入了个人对代码的理解

并且做了详细的解析


代码参考了普中给的代码

网上代码很多可以自己下载测试


代码如下



 #include <reg52.h>
 #include <intrins.h>


//重定义 函数变量
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
 //spi 所使用的 3个管脚 并进行定义


sbit MOSIO =P3^4;
sbit R_CLK =P3^5;
sbit S_CLK =P3^6;


//--点阵显示数组--//
uchar code tab0[] = {0x00, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08,
 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80,
 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00,
 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0x00}; 
//--10字模--//
uchar code tab1[] = 
{0, 0, 0, 0, 0, 0, 8, 24, 14, 36, 8, 66, 8, 66, 8, 66, 
 8, 66, 8, 66, 8, 66, 8, 36, 62, 24, 0, 0, 0, 0, 0, 0};


//--09字模--//
uchar code tab2[] = 
{0, 0, 0, 0, 0, 0, 24, 24, 36, 36, 66, 66, 66, 66, 66,
 66, 66, 100, 66, 88, 66, 64, 66, 64, 36, 3

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值