有大佬可以帮忙看一下这个嘛,下面是程序,然后这个所运行出来的效果如视频所示,如果我想达到照片中的效果,这个程序应该怎么改呀,感谢各位大佬 https://v.youku.com/v_show/id_XNjM3MDY0OTA0MA==.html- #include <REGX52.H>
- #define uchar unsigned char
- #define uint unsigned int
- #define smg_port P0
- sbit smg_a=P2^2;
- sbit smg_b=P2^3;
- sbit smg_c=P2^4;
- uchar smg_code[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x4f};
- void Delay1000ms(void)
- {
- unsigned char data i, j, k;
- _nop_();
- i = 8;
- j = 1;
- k = 243;
- do
- {
- do
- {
- while (--k);
- } while (--j);
- } while (--i);
- }
- void smg_play(void)
- {
- uchar i=0;
-
- for(i=0;i<8;i++)
- {
- switch(i)
- {
- case 0:smg_c=1;smg_b=1;smg_a=1;break;
- case 1:smg_c=1;smg_b=1;smg_a=0;break;
- case 2:smg_c=1;smg_b=0;smg_a=1;break;
- case 3:smg_c=1;smg_b=0;smg_a=0;break;
- case 4:smg_c=0;smg_b=1;smg_a=1;break;
- case 5:smg_c=0;smg_b=1;smg_a=0;break;
- case 6:smg_c=0;smg_b=0;smg_a=1;break;
- case 7:smg_c=0;smg_b=0;smg_a=0;break;
- }
- smg_port=smg_code[i];
- Delay1000ms();
- }
- }
-
- void main()
- {
- while(1)
- {
- smg_play();
- }
- }
复制代码
|