完善资料让更多小伙伴认识你,还能领取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); } } |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
自定义系统时钟频率后,用库函数和微带两种方式点亮LED灯,为什么灯的闪烁频率不一致?
779 浏览 2 评论
955 浏览 2 评论
1902 浏览 0 评论
【嵌入式SD NAND】基于FATFS/Littlefs文件系统的日志框架实现
695 浏览 0 评论
求助!STM32F4单片机编程与设计sEMG信号采集电路问题
877 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-3-29 22:01 , Processed in 0.489306 second(s), Total 78, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 深圳华秋电子有限公司
电子发烧友 (电路图) 粤公网安备 44030402000349 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号