欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
16層彩色廣州塔源程序
[打印本頁]
作者:
GYY0529
時間:
2017-6-19 15:13
標題:
16層彩色廣州塔源程序
QQ截圖20170619144757.jpg
(105.24 KB, 下載次數: 87)
下載附件
原理圖
2017-6-19 15:12 上傳
單片機測試程序:
#include<reg52.h> //頭文件
#define uint unsigned int //宏定義
#define uchar unsigned char //宏定義
#include<intrins.h> //循環函數的頭文件
uchar code table0[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//從低位往高位滅一個燈流水
uchar code table1[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};//從高位往低位滅一個燈流水
uchar code table2[]={0xfe,0xfa,0xf8,0xf0,0xe0,0xa0,0x80,0x00};//從低位到高位逐步全部熄滅
uchar code table3[]={0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00};//從高位到低位逐步全部熄滅
uchar code table4[]={0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff};//從低位到高位逐步全部點亮
uchar code table5[]={0x80,0xa0,0xe0,0xf0,0xf8,0xfa,0xfe,0xff};//從高位到低位逐步全部點亮
uchar code table6[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};//從低位到高位,亮一個燈移動
uchar code table7[]={0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};//從高位到低位,亮一個燈移動
uchar code table8[]={0xfc,0xfe,0xff,0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00,0x80,0xc0,0xe0,0xf0,0xf1};
uchar code table9[]={0x03,0x01,0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff,0x7f,0x3f,0x1f,0x0f,0x07};
uchar code table10[]={0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff,0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01};
uchar code table11[]={0xff,0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe};
uchar code table12[]={0x1f,0x0f,0x07,0x03,0x01,0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff,0x7f,0x3f};
uchar code table13[]={0xe0,0xf0,0xf8,0xfc,0xfe,0xff,0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00,0x80,0xc0};
uchar i,b;
sbit r1=P3^2; //紅色上8層片選
sbit r2=P3^3; //紅色下8層片選
sbit b1=P3^4; //綠色上8層片選
sbit b2=P3^5; //綠色下8層片選
sbit g1=P3^6; //藍色上8層片選
sbit g2=P3^7; //藍色下8層片選
void delay(uint z) //延時函數
{
uint x,y;
for(x=z;x>0;x--)
for(y=314;y>0;y--);
}
/******************************************/
void liushui0()//兩列紅色逆時針轉動
{
r1=1; //開紅色使能
r2=1; //開紅色使能
P0=0xff;//
for(i=0;i<8;i++)
{
P1=table6[i];
P2=table6[i];
delay(30);
}
P1=0x00;P2=0x00;
P0=0x00;
r1=0; //關紅色使能
r2=0; //關紅色使能
}
void rr()//紅色亮一會兒
{
r1=1;
r2=1;
P0=0xff;
P2=0xff;
P1=0xff;
delay(100);
P0=0x00;
r1=0;
r2=0;
P2=0x00;
P1=0x00;
}
/******************************************/
void liushui1()//兩列綠色逆時針轉動
{
g1=1; //開綠色使能
g2=1; //開綠色使能
P0=0xff;//
for(i=0;i<8;i++)
{
P1=table6[i];
P2=table6[i];
delay(30);
}
P1=0x00;P2=0x00;
P0=0x00;
g1=0; //關綠色使能
g2=0; //關綠色使能
}
void gg()//綠色亮一會兒
{
g1=1;
g2=1;
P0=0xff;
P2=0xff;
P1=0xff;
delay(100);
P0=0x00;
g1=0;
g2=0;
P2=0x00;
P1=0x00;
}
/******************************************/
void liushui2()//兩列藍色逆時針轉動
{
b1=1; //開藍色使能
b2=1; //開藍色使能
P0=0xff;//
for(i=0;i<8;i++)
{
P1=table6[i];
P2=table6[i];
delay(30);
}
P1=0x00;P2=0x00;
P0=0x00;
b1=0; //關藍色使能
b2=0; //關藍色使能
}
void bb()//藍色亮一會兒
{
b1=1;
b2=1;
P0=0xff;
P2=0xff;
P1=0xff;
delay(100);
P0=0x00;
b1=0;
b2=0;
P2=0x00;
P1=0x00;
}
void liushui3()//紅色單層向上移動
{
P1=0xff;P2=0xff;
b2=1;
for(i=0;i<8;i++)
{
P0=table7[i];
delay(30);
}
P0=0x00;
b2=0;
/********* **********/
P1=0xff;P2=0xff;
b1=1;
for(i=0;i<8;i++)
{
P0=table7[i];
delay(30);
}
P0=0x00;
b1=0;
}
/***********************/
void liushui4()//紅、黃、綠、青、藍、洋紅、白、紅,向上流動
{
uchar a,b,c;//綠、紅、藍
a=0x8d;
b=0x38;
c=0xe1;
/////////////
r1=1;P0=b;r1=0;
r2=1;P0=b;r2=0;
g1=1;P0=a;g1=0;
g2=1;P0=a;g2=0;
b1=1;P0=c;b1=0;
b2=1;P0=c;b2=0;
P1=0xff;P2=0xff;
for(i=0;i<8;i++)
{
a=_cror_(a,1);//循環左移
b=_cror_(b,1);//循環左移
c=_cror_(c,1);//循環左移
delay(80);//延時
r1=1;P0=b;r1=0;
r2=1;P0=b;r2=0;
g1=1;P0=a;g1=0;
g2=1;P0=a;g2=0;
b1=1;P0=c;b1=0;
b2=1;P0=c;b2=0;
}
P3=0xff;P0=0x00;P3=0x00;
P1=0x00;P2=0x00;
}
/*************************************************/
void liushui5()//紅、黃、綠、青、藍、洋紅、白、紅,向下流動
{
uchar a,b,c;//綠、紅、藍
a=0x8d;
b=0x38;
c=0xe1;
/////////////
r1=1;P0=b;r1=0;
r2=1;P0=b;r2=0;
g1=1;P0=a;g1=0;
g2=1;P0=a;g2=0;
b1=1;P0=c;b1=0;
b2=1;P0=c;b2=0;
P1=0xff;P2=0xff;
for(i=0;i<8;i++)
{
a=_crol_(a,1);//循環左移
b=_crol_(b,1);//循環左移
c=_crol_(c,1);//循環左移
delay(80);//延時
r1=1;P0=b;r1=0;
r2=1;P0=b;r2=0;
g1=1;P0=a;g1=0;
g2=1;P0=a;g2=0;
b1=1;P0=c;b1=0;
b2=1;P0=c;b2=0;
}
P3=0xff;P0=0x00;P3=0x00;
P1=0x00;P2=0x00;
}
void liushui6()//白色單層向上
{
uchar a,b,c;//綠、紅、藍
a=0x80;
b=0x80;
c=0x80;
/////////////
r2=1;P0=b;r2=0;
g2=1;P0=a;g2=0;
b2=1;P0=c;b2=0;
P1=0xff;P2=0xff;
for(i=0;i<8;i++)
{
a=_cror_(a,1);//循環左移
b=_cror_(b,1);//循環左移
c=_cror_(c,1);//循環左移
delay(25);//延時
r2=1;P0=b;r2=0;
g2=1;P0=a;g2=0;
b2=1;P0=c;b2=0;
}
P3=0xff;P0=0x00;P3=0x00;
P1=0x00;P2=0x00;
/*****************************************/
r1=1;P0=b;r1=0;
g1=1;P0=a;g1=0;
b1=1;P0=c;b1=0;
P1=0xff;P2=0xff;
for(i=0;i<8;i++)
{
a=_cror_(a,1);//循環左移
b=_cror_(b,1);//循環左移
c=_cror_(c,1);//循環左移
delay(25);//延時
r1=1;P0=b;r1=0;
g1=1;P0=a;g1=0;
b1=1;P0=c;b1=0;
}
P3=0xff;P0=0x00;P3=0x00;
P1=0x00;P2=0x00;
}
/****************************************************/
void liushui7()//白色單層向下
{
uchar a,b,c;//綠、紅、藍
a=0x01;
b=0x01;
c=0x01;
/////////////
r1=1;P0=b;r1=0;
g1=1;P0=a;g1=0;
b1=1;P0=c;b1=0;
P1=0xff;P2=0xff;
for(i=0;i<8;i++)
{
a=_crol_(a,1);//循環左移
b=_crol_(b,1);//循環左移
c=_crol_(c,1);//循環左移
delay(25);//延時
r1=1;P0=b;r1=0;
g1=1;P0=a;g1=0;
b1=1;P0=c;b1=0;
}
P3=0xff;P0=0x00;P3=0x00;
P1=0x00;P2=0x00;
/*****************************************/
r2=1;P0=b;r2=0;
g2=1;P0=a;g2=0;
b2=1;P0=c;b2=0;
P1=0xff;P2=0xff;
for(i=0;i<8;i++)
{
a=_crol_(a,1);//循環左移
b=_crol_(b,1);//循環左移
c=_crol_(c,1);//循環左移
delay(25);//延時
r2=1;P0=b;r2=0;
g2=1;P0=a;g2=0;
b2=1;P0=c;b2=0;
}
P3=0xff;P0=0x00;P3=0x00;
P1=0x00;P2=0x00;
}
/********************************************************************/
void liushui8()//6色向上流動
{
P1=0x00;P2=0x00;
P1=0xff;P2=0xff;
for(i=0;i<16;i++)
{
r2=1;P0=table8[i];r2=0;
r1=1;P0=table9[i];r1=0;
P1=0x00;P2=0x00;
P1=0xff;P2=0xff;
/******/
g2=1;P0=table10[i];g2=0;
g1=1;P0=table11[i];g1=0;
P1=0x00;P2=0x00;
P1=0xff;P2=0xff;
b2=1;P0=table12[i];b2=0;
b1=1;P0=table13[i];b1=0;
delay(25);
}
P3=0xff;P0=0x00;P3=0x00;
}
/***********************************************************************/
void liushui9()//6色向下流動
{
P1=0x00;P2=0x00;
P1=0xff;P2=0xff;
for(i=16;i>0;i--)
{
r2=1;P0=table8[i];r2=0;
r1=1;P0=table9[i];r1=0;
P1=0x00;P2=0x00;
P1=0xff;P2=0xff;
/******/
g2=1;P0=table10[i];g2=0;
g1=1;P0=table11[i];g1=0;
P1=0x00;P2=0x00;
P1=0xff;P2=0xff;
b2=1;P0=table12[i];b2=0;
b1=1;P0=table13[i];b1=0;
delay(25);
}
P3=0xff;P0=0x00;P3=0x00;
}
/********************************************************************************
*********************************************************************************
*********************************************************************************/
void main()
{
r1=1;P0=0x80;r1=0;
r2=1;P0=0x80;r2=0;
g1=1;P0=0x00;g1=0;
g2=1;P0=0x00;g2=0;
b1=1;P0=0x00;b1=0;
b2=1;P0=0x00;b2=0;
P1=0x00;
P2=0x00;
/**************************************/
while(1)
{
/* */
liushui0();//兩列紅色逆時針轉動
liushui1();//兩列綠色逆時針轉動
liushui2();//兩列藍色逆時針轉動
liushui3();//紅色單層向上移動
// gg();//綠色亮一會兒
// rr();//紅色亮一會兒
// bb();//藍色亮一會兒
//
// liushui4();//紅、黃、綠、青、藍、洋紅、白、紅,向上流動
// liushui4();//紅、黃、綠、青、藍、洋紅、白、紅,向上流動
// liushui4();//紅、黃、綠、青、藍、洋紅、白、紅,向上流動
//
// liushui5();//紅、黃、綠、青、藍、洋紅、白、紅,向下流動
// liushui5();//紅、黃、綠、青、藍、洋紅、白、紅,向下流動
// liushui5();//紅、黃、綠、青、藍、洋紅、白、紅,向下流動
//
//
// liushui6();//白色單層向上
// liushui7();//白色單層向下
//
//
// liushui8();//6色向上流動
// liushui8();//6色向上流動
// liushui8();//6色向上流動
// liushui9();//6色向下流動
// liushui9();//6色向下流動
// liushui9();//6色向下流動
/******************************************/
}
}
復制代碼
作者:
nn5499
時間:
2017-6-19 20:54
哇,好厲害好厲害。
作者:
qch4223565
時間:
2017-12-7 10:32
謝謝樓主的分享。
作者:
絆腳石13
時間:
2017-12-17 15:22
厲害 厲害 仿制一個
作者:
daiziqust
時間:
2018-5-19 14:57
不錯,寫的很詳細,贊一個。。
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1