完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
本帖最后由 ghw1997 于 2020-1-20 00:42 编辑
#include"reg52.h" #include ***it rck=P3^5; ***it sck=P3^6; ***it si=P3^4 ; void spend( char ii) { char a; for(a=0;a<8;a++) { si=ii>>7; ii<<=1; sck=0; sck=1; } } void main() { spend(0xff); rck=0; rck=1; } |
|
相关推荐
8个回答
|
|
|
这几个程序没看出有什么不同,可以试试改用共阳的LED,要加限流电阻,使用共阴LED,就是要595输出电流点亮LED,但对于有的需要电流大的LED,595可能无法点亮,所以用共阳LED比较好,控制好限流电阻,LED都能点亮
最佳答案
|
|
|
|
|
|
本帖最后由 ghw1997 于 2020-1-20 00:41 编辑
#include"reg52.h" #include ***it rck=P3^5; ***it sck=P3^6; ***it si=P3^4 ; void spend( char ii) { char a; for(a=0;a<8;a++) { si=ii>>7; ii<<=1; sck=0; sck=1; } } void main() { spend(0xff); rck=0; rck=1; } 是这个,全灭。共阴管子 |
|
|
|
|
|
#include"reg52.h"
#include ***it rck=P3^5; ***it sck=P3^6; ***it si=P3^4 ; void spend( char ii) { char a; for(a=0;a<8;a++) { si=ii>>7; ii<<=1; sck=0; sck=1; } } void main() { spend(0xff); rck=0; rck=1; } 一开始是这个全灭,共阴 |
|
|
|
|
|
#include"reg52.h"
#include ***it rck=P3^5; ***it sck=P3^6; ***it si=P3^4 ; void spend( char ii) { char a; for(a=0;a<8;a++) { si=ii>>7; ii<<=1; sck=0; sck=1; } } void main() { spend(0xff); rck=0; rck=1; } 这个全不亮。共阴 |
|
|
|
|
|
|
|
|
|
|
|
我用int压也不行,但压其他都行
|
|
|
|
|
|
|
|
|
|
|
|
本帖最后由 ghw1997 于 2020-1-22 13:53 编辑
大佬门 我错了 我忘记把外接时钟给拔掉。。。程序是对的 点阵乱亮 我就挨个查,结果就查到0xff不亮,纠结了好久,刚看到跳线帽子没拔。。。 #include"reg52.h" ***it rck=P3^5; ***it sck=P3^6; ***it si=P3^4 ; int code duan[]={ 0x00,0x00,0x08,0x88,0x68,0x08,0x08,0x0F,0x08,0x08,0x28,0xC8,0x08,0x00,0x00,0x00, 0x81,0x81,0x82,0x82,0x84,0x88,0xB0,0xC0,0xB0,0x88,0x84,0x82,0x82,0x81,0x81,0x00, }; int code wei[]={ 0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80, 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80, } ; void spend( unsigned char i1,unsigned char i2, unsigned char i3,unsigned char i4) { char a; for(a=0;a<8;a++) { si=i1>>7; i1<<=1; sck=0; sck=1; } for(a=0;a<8;a++) { si=i2>>7; i2<<=1; sck=0; sck=1; } for(a=0;a<8;a++) { si=i3>>7; i3<<=1; sck=0; sck=1; } for(a=0;a<8;a++) { si=i4>>7; i4<<=1; sck=0; sck=1; } } void delay(int i) { while(--i) ; } void main() { int i; while(1) { for(i=0;i<16;i++) { spend(~wei[i+16],~wei,duan[i+16],duan); rck=0; rck=1; delay(10); } } |
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
STM32F405驱动DS1302时钟模块,输出时间错乱该怎么排查?
2776 浏览 2 评论
stm32f405rgt6驱动DS1302ZN出现时间错乱问题
2379 浏览 1 评论
stm32用fsmc读取ad7606采集数据,数据不变,只有开发版复位才更新数据
2255 浏览 0 评论
2367 浏览 1 评论
1625 浏览 1 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 18:43 , Processed in 0.943463 second(s), Total 87, Slave 70 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
3444