?? 2_7.c
字號:
/*******************************************************************/
/* TX-1C單片機實驗板實驗例程 */
/* 2007年8月第二期培訓班課后習題詳解 */
/* 作者:郭天祥 */
/* 郵箱:txmcu@163.com */
/* 網站:www.txmcu.com(天祥電子) */
/*【版權】Copyright(C)天祥電子 www.txmcu.com All Rights Reserved */
/*【聲明】此程序僅用于學習與參考,引用請注明版權和作者信息! */
/* */
/*******************************************************************/
/*
間隔300ms先奇數亮再偶數亮,
循環三次;一個燈上下循環三次;
兩個分別從兩邊往中間流動三次;
再從中間往兩邊流動三次;8個全部閃爍3次;
關閉發光管,程序停止。
*/
/*********************************************************/
#include<reg52.h> //52單片機頭文件
#include <intrins.h> //包含有左右循環移位子函數的庫
#define uint unsigned int //宏定義
#define uchar unsigned char //宏定義
void delay(uint z) //延時函數,z的取值為這個函數的延時ms數,如delay(200);大約延時200ms.
{ //delay(500);大約延時500ms.
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void main() //主函數
{
uchar a,i,j;
for(j=0;j<3;j++) //寄偶交替
{
P1=0x55; //點亮小燈
delay(300); //延時300毫秒
P1=0xaa;
delay(300); //延時300毫秒
}
for(j=0;j<3;j++) //流水燈
{
a=0xfe;
for(i=0;i<8;i++)
{
P1=a; //點亮小燈
delay(300); //延時300毫秒
a=_crol_(a,1);
}
}
P1=0xff;
for(j=0;j<3;j++) //從兩邊往中間流
{
P1=0x7e; //點亮小燈
delay(300); //延時300毫秒
P1=0xbd;
delay(300); //延時300毫秒
P1=0xdb; //點亮小燈
delay(300); //延時300毫秒
P1=0xe7;
delay(300); //延時300毫秒
}
P1=0xff;
for(j=0;j<3;j++) //從中間往兩邊流
{
P1=0xe7; //點亮小燈
delay(300); //延時300毫秒
P1=0xdb;
delay(300); //延時300毫秒
P1=0xbd; //點亮小燈
delay(300); //延時300毫秒
P1=0x7e;
delay(300); //延時300毫秒
}
P1=0xff;
for(j=0;j<6;j++) //全部閃爍
{
P1=~P1; //點亮小燈
delay(300); //延時300毫秒
}
P1=0xff;
while(1);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -