專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計實例 >> 瀏覽文章

單片機(jī)自學(xué)筆記之流水燈

作者:佚名   來源:本站原創(chuàng)   點擊數(shù):  更新時間:2011年05月29日   【字體:
#include<reg52.h>  //52系列單片機(jī)頭文件
#include<intrins.h>  //C51庫自帶頭文件

#define uchar unsigned char //宏定義無符號字符型為uchar
#define uint unsigned int  //宏定義無符號整型為uint

void delay(uint z);   //聲明延時函數(shù)
uchar aa;   //定義無符號變量
void main()   //主函數(shù)
{
 aa=0xfe;  //給變量賦初值
 while(1)  //大循環(huán),無限循環(huán)
 {
  P1=aa;  //給P1口賦值1010 1010
  delay(500); //調(diào)用延時子函數(shù)延時500毫秒
  aa=_crol_(aa,1);//調(diào)用intrins.h中的循環(huán)左移函數(shù)   
 }
}


void delay(uint z)  //帶參數(shù)延時子函數(shù),延時z毫秒
{
 uint x,y;  //定義局部變量,局部變量只在此子函數(shù)范圍內(nèi)有效,退出子函數(shù)時,變量空間自動釋放
 for(x=z;x>0;x--) //雙重for循環(huán)語句
  for(y=110;y>0;y--); //利用循環(huán)語句實現(xiàn)CPU延時,占用CPU  
}


/*
intrins.h頭文件描述:
內(nèi)部函數(shù) 描述
_crol_ 字符循環(huán)左移
_cror_ 字符循環(huán)右移
_irol_ 整數(shù)循環(huán)左移
_iror_ 整數(shù)循環(huán)右移
_lrol_ 長整數(shù)循環(huán)左移
_lror_ 長整數(shù)循環(huán)右移
_nop_ 空操作8051 NOP 指令
_testbit_ 測試并清零位8051 JBC 指令
*/
關(guān)閉窗口

相關(guān)文章