光立方8*8*8_方案STC89C52RC+ULN2803A+U74HC573G,共520顆LED,調試階段,還有一些很多需要優化的地方,大家多多指點,相互學習,提高大家技術技能。
Altium Designer畫的原理圖和PCB圖如下:(51hei附件中可下載工程文件)
單片機源程序如下:
- #include<reg52.h>
- #define uint unsigned int
- #define uchar unsigned char
- #define num 93
- #define wait 2
- #define X P2
- #define Y P0
- #define Z P1
- uchar i,j,k;
- uint count,temp;
- uchar Z_Seg[8] ={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80}; //共陽極
- uchar Y_Seg[8] ={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80}; //選擇使能8個74HC573芯片,高電平隨輸入而輸出,低電平鎖存
- uchar code display[]={
-
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- …………省略, 詳見附件…………
- };
-
- void init()
- {
- count=0;
- temp=0;
- k=0;
- TMOD=0x01;
- TH0=0x4c;
- TL0=0x00;
- IE=0X82;
- TR0=1;
- }
- void delay()
- {
- uchar m;
- for(m=0;m<30;m++);
- }
- void time0() interrupt 1
- {
-
- TH0=0x4c;
- TL0=0x00;
- k++;
- if(k==wait)
- {
- k=0;
- temp++;
- if(temp==num)
- temp=0;
- }
- }
- void main()
- {
- init();
- while(1)
- {
- for(i=0;i<8;i++)
- {
- Z = Z_Seg[i];
- for(j=0;j<8;j++)
- {
- Y = Y_Seg[j];
- X = display[count++];
- delay();
- }
- }
- count=64*temp;
- }
- }
復制代碼
程序+PCB原理圖:
光立方8X8X8_方案STC89C52RC ULN2803A U74HC573G.7z
(616.29 KB, 下載次數: 44)
2022-9-27 22:17 上傳
點擊文件名下載附件
|