當前位置:編程學習大全網 - 編程語言 - 用五壹單片機c語言編程,p1口控制八個發光二極管,實現每隔壹秒,兩兩點亮,並循環。

用五壹單片機c語言編程,p1口控制八個發光二極管,實現每隔壹秒,兩兩點亮,並循環。

壹、#include<reg51.h>

void delay(unsigned char Xms)//延時Xms

{

int i,j;

for(X = i; X>0; X--)

for(j=110;j>0;j--);

}

void main()

{

P0 = 0x00; //P0.0~P0.7分別接八個發光二極管,剛開始全滅

while(1)

{

delay(1000);

P0 = 0xc0;//點亮前兩個發光二極管P0.0和P0.1;

delay(1000);//延時1秒

P0 = 0x30;//點亮第三個和第四個LED

delay(1000);

P0 = 0x0c;

delay(1000);

P0 = 0x03;

}

}

二、

#include <reg52.h>

#include <intrins.h>

#define uchar unsigned char

#define uint unsigned int

uchar temp, t0, t1;

bit t2;

sbit P10 = P1^0;

void main()

{

P10 = 1;

temp = 0xfe;

P0 = temp;

P2 = 0xff;

TMOD = 0x01;

TH0 = (65536 - 50000) / 256;

TL0 = (65536 - 50000) % 256;

ET0 = 1;

EA = 1;

TR0 = 1;

while(1);

}

void timer0() interrupt 1

{

TH0 = (65536 - 50000) / 256;

TL0 = (65536 - 50000) % 256;

t0++;

if(t0 == 10) {

t0 = 0;

t1++;

if(t1 == 8) {t1 = 0; t2 = ~t2; P10 = t2;}

temp = _crol_(temp, 1);

if(t2) {P0 = temp; P2 = 255;}

else {P2 = temp; P0 = 255;}

}

}

擴展資料:

例如:a = 3,b = 5,現交換a,b的值,這個問題就好像交換兩個杯子裏面的水,這當然要用到第三個杯子,假如第三個杯子是c,那麽正確的程序為:c = a; a = b; b = c;執行結果是a = 5,b = c = 3如果改變其順序,寫成:a = b; c = a; b =c;則執行結果就變成a = b = c = 5,不能達到預期的目的,初學者最容易犯這種錯誤。

順序結構可以獨立使用構成壹個簡單的完整程序,常見的輸入、計算、輸出三步曲的程序就是順序結構,例如計算圓的面積,其程序的語句順序就是輸入圓的半徑r,計算s = 3.14159*r*r,輸出圓的面積s。

百度百科-c語言

  • 上一篇:如圖所示,A、B兩立方體疊置在壹起放於水平桌面上,A的密度為ρA,B的密度為ρB,若它們的邊長比為lA:lB
  • 下一篇:編程在哪裏學
  • copyright 2024編程學習大全網