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

P0口流水燈的編程實現(xiàn)

作者:佚名   來源:本站原創(chuàng)   點擊數(shù):  更新時間:2011年02月20日   【字體:
#include<reg51.h> 

#include<stdio.h>
#inclde<intrins. h>
void delay(unsigned char time)//必須聲明函數(shù),否則會出現(xiàn)下面的錯誤:
void main()
{
 P0 = 0xfe;//P必須大寫
while(1)
{
 delay(200);
 P0 = _cror_(P0,1);
 }
}
void delay()
{
 unsigned char I,j;
    for(i=0;i<=time;i++)
       {
        for(j=0;j<=200;j++)
          { _nop_();//空指令,根據(jù)單片機的機器周期計算
          }
       }
 }
 
另一實現(xiàn)的方法:
sbit 位的應(yīng)用
數(shù)據(jù)類型筆記:

數(shù)據(jù)類型
位數(shù)
字節(jié)數(shù)
數(shù)值范圍
說明
bit
1
 
0 or 1
位型
Signed char
8
1
-128——+127
有符號字節(jié)型
Unsigned char
8
1
0~255
字符或者八位無符號整數(shù)
enum
16
2
-32768~+32767
枚舉型
Signed short
16
2
-32768~+32767
有符號短整型
Unsigned short
16
2
0~6535
無符號短整型
Signed int
16
2
-32768~32767
 
Unsigned int
 
 
 
 
Signed long
 
 
 
 
Unsigned long
 
 
 
 
float
 
 
 
 
Sbit
1
 
0 1
位型
Sfr
8
1
0~255
8位特殊功能寄存器
Sfr16
 
 
 
 
 
 
 
 
 

程序代碼:
#include<reg51.h>
#include<stdio.h>
#include<intrins.h>
sbit P0_0 = P0^0;//I/O口的定義方法,兩者的區(qū)別,不這樣定義的話就會說沒有定義
   sbit P0_1 = P0^1;
   sbit P0_2 = P0^2;
   sbit P0_3 = P0^3;
   sbit P0_4 = P0^4;
   sbit P0_5 = p0^5;
   sbit P0_6 = P0^6;
   sbit P0_7 = P0^7;
void delay(unsigned char time);//函數(shù)聲明,重要
void main()
{
   while(1)
{
P0_0 = 0;
delay(200);
P0_1 = 0;
delay(200);
P0_3 = 0;
delay(200);
P0_4 = 0;
delay(200);
P0_5 = 0;
delay(200);
P0_6 = 0;
delay(200);
P0_7 = 0;
delay(200);
}
void delay(unsigned char time)
{
   unsigned char i,j;
   for(i=0;i<=time;i++)
{
      for(j=0;j<=200;j++)
         {
           _nop_()
         }
     }
}
   
控制亮滅程序:
#include<reg51.h>//端口定義已包含在此頭文件中,故P0可以直接賦值
#include<stdio.h>
#include<intrins.h>
void delay(unsigned char time);
void delay(unsigned char time)
{
   unsigned i,j;
   for(i=0;i<=time;i++)
      {
        for(j=0;j<=200;j++)
           {
            _nop_();
           }
       }
}
void main()
{
 while(1)
   {
    P0 = 0x00;
    delay(200);
    P0 = 0xff;
    delay(200);
   }
}
關(guān)閉窗口

相關(guān)文章