单片机/MCU论坛
登录
直播中
王建峰
7年用户
157经验值
擅长:嵌入式技术 系统
私信
关注
[问答]
用74HC595 进行层扫描与列扫描的光立方显示。部分源码。有点看不懂求解答..
开启该帖子的消息推送
74HC595
d=60000;
dd=60000;
while(dd--)
{
while(d--)
{
sta
ti
c uchar layer=0;
for(j=0;j<8;j++) //LED正极驱动循环扫描8层
{
for (i=0;i<8;i++) //循环8次,每一次将光立方的一层动画数据装入buffer[]数组
{
buffer
=display[layer]
; //调用层暂存数组将用于光立方显示的二维数组里的一层显示数据装入其中
}
xiansi1(); //
单片机
发送数据给74HC595
cheng=0x01<
DS2 = ~cheng&0x01; //发送层扫描数据
SH_CP2 = 1;
SH_CP2 = 0; //移位寄存器移位
ST_CP=1;
ST_CP=0; //控制显示列
ST_CP2=1;
ST_CP2=0; //控制显示层
if (layer<7)
layer++; //为扫面上一层 做准备(光立方一个静止图形是从最底层开始扫描)
else
layer=0;
delay(2);
}
}
}
layer对0x1进行位移。。
按程序来看,位移8次(0~7)只有7次有效,就只能点亮7层led.
这样看话,完全可以不用层扫描。想列扫描那样实现
程序 这样写是想实现什么功能啊!? 谁帮我看看...
回帖
(3)
人中狼
2017-5-30 21:49:59
0-7是8次,到了7,也就是第八次,需要回零的,这里好像同时对两个595操作,所以应该是选定了层后,输入这一层的显示数据,再移到下一层,具体的可能有电路和完整的595驱动就比较好理解
0-7是8次,到了7,也就是第八次,需要回零的,这里好像同时对两个595操作,所以应该是选定了层后,输入这一层的显示数据,再移到下一层,具体的可能有电路和完整的595驱动就比较好理解
举报
王建峰
2017-5-30 22:10:57
可是我感觉层扫描时,第一次写入0 余下七次写1
。是这样吗?
可是我感觉层扫描时,第一次写入0 余下七次写1
。是这样吗?
举报
周豪
2018-11-9 15:50:42
有完整的程序吗
有完整的程序吗
举报
更多回帖
rotate(-90deg);
回复
相关问答
74HC595
如何使用三片
74HC595
对一个8X8双色点阵
进行
控制呢
2021-10-25
1521
为什么
74HC595
的输出端一直为低电平?
2014-11-12
15091
光
立方
控制板原理图
2013-11-28
3913
74HC595
是如何去驱动数码管的
2021-08-02
2335
关于proteus仿真LED
显示
屏的一个问题
2015-09-09
8068
点阵
扫描
频率与点阵大小有关系吗?
2017-10-31
4523
****8
光
立方
原理求助
2013-03-19
3895
基于51单片机的led点阵独立控制
2014-03-22
2108
基于arduino nano的
光
立方
疑问
2015-10-30
12575
为什么
光
耦输入端被打开
2022-11-09
3435
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
首页
论坛版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分