一个变态的项目,要用一个几毛钱的单片机驱动64个LED,64个按键输入。
-
74HC595 和 74HC165 都安排上了。
-
-
http://www.mcublog.cn/software/2020_01/74hc165-jilian/
uint8_t ReadByte_165(void) { u8 i,dat=0; CLK_H; SL_H; for(i=0;i<8;i++) { dat=dat<<1; if(DAT==1) dat=dat+1; CLK_L; Delay_Us(1); CLK_H; } sw_buf = dat; for(i=0;i<8;i++) { dat=dat<<1; if(DAT==1) dat=dat+1; CLK_L; Delay_Us(1); CLK_H; } in_buf = dat; CLK_L; SL_L; return dat; }
其中,CLK是CP,SL是PL,DAT是Q7。
-
https://www.amobbs.com/thread-4445280-1-1.html
uchar OUT_165() { uchar i,aa,DATA_BUF; for(i=0;i<8;i++) { CLK2=1; aa<<=1; //这里要先移位,否则会出现最低位被补0而最高位被移出的现象 delay(10); CLK2=0; //上升沿脉冲 if(OUT_data==1) aa|=0x01; DATA_BUF=aa; //将串行移出的8位数据存在DATA_data中 } return(DATA_BUF); } while(1) { STR=1; for(j=0;j<4;j++) { send_4094(buffer[j]); } STR=0; delay(7); //此处延时不可丢 S_L=1; //置入并行数据 delay(40); S_L=0; //启动串行移位,准备好 delay(5); for(j=0;j<4;j++) { b[j]=OUT_165(); } }
-
-
突然想给你找一下,我们学校用的51开发平台,因为里面就是使用总线进行连接的各个外设,每个外设只需要一根总线连接即可
-
Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号