當前位置:首頁 » 編程語言 » c語言跑馬燈

c語言跑馬燈

發布時間: 2023-03-20 21:20:12

1. 請問以下有關單片機跑馬燈的c語言程序各語句的含義(詳細)

#include <reg51.h> //51頭文件
#include <intrins.h> //包含移位函數_crol_
void Delay10ms(unsigned int c); //延時函數聲明

void main(void)
{
unsigned char LED;

LED = 0x01; //一個unsigned char有8位,每一位代表了一個燈,初始點亮第一盞燈
while(1)
{
P0 = LED; //點亮一盞燈

Delay10ms(50); //延時500ms,讓其量一會兒

LED = _crol_(LED,1); //向左移位函數,比如 0x01 --> 0x02 --> 0x04 -->0x08 ---> 0x10
}
}

void Delay10ms(unsigned int c) //延時函數
{
unsigned char a, b;

for (;c>0;c--) //三重循環延時,大約延時10ms
{
for (b=38;b>0;b--)
{
for (a=130;a>0;a--);
}
}
}

2. C語言設計跑馬燈程序

#include<reg51.h> //51系列單片機定義文件
#define uchar unsigned char //定義無符號字元
#define uint unsigned int //定義無符號整數
void delay(uint); //聲明延時函數
void main(void)
{
uint i;
uchar temp;
while(1)
{
temp=0x01;
for(i=0;i<8;i++) //8個流水燈逐個閃動
{
P1=~temp;
delay(100); //調用延時函數
temp<<=1;
}
}

void delay(uint t) //定義延時函數
{
register uint bt;
for(;t;t--)
for(bt=0;bt<255;bt++);
}
跑馬燈程序最基本的,c語言還未入門啊!!!

3. c語言跑馬燈跑馬速度問題

如下程序:
if(ledi==8)
{
ledi=0; //到了最後一個燈就換到第一個

//每跑一圈燈就根據預定設置的表格來決定下一圈的跑馬速度

speed=speedcode[i];

i++;if(i==2)i=0; ?你的速度設置不僅僅就2個呀(10個預定義的速度)

}
有兩種解決辦法:
一個就是將預定的速度加2倍
speedcode[30]={3,3,3,1,1,1,5,5,5,12,12,12,、、、、、、}
二是增加一全局變數uchar z=0;在i++前加上如下,前後不改:
、、、、、if(++z==3){z=0;i++;}、、、、、、、、、、、

4. 51單片機設計跑馬燈的程序用(c語言)編寫

|P1口接8個發光二極體共陽

#include <AT89X51.H>

unsigned char i;

unsigned char temp;

unsigned char a,b;

void delay(void)

{

unsigned char m,n,s;

for(m=20;m>0;m--)

for(n=20;n>0;n--)

for(s=248;s>0;s--);

}

void main(void)

{

while(1)

{

temp=0xfe;

P1=temp;

delay();

for(i=1;i<8;i++)

{

a=temp<<i;

b=temp>>(8-i);

P1=a|b;

delay();

}

for(i=1;i<8;i++)

{

a=temp>>i;

b=temp<<(8-i);

P1=a|b;

delay();

}

}

}

(4)c語言跑馬燈擴展閱讀:

Proteus 自從有了單片機也就有了開發系統,隨著單片機的發展開發系統也在不斷發展。 keil是一種先進的單片機集成開發系統。它代表著匯編語言單片機開發系統的最新發展,首創多項便利技術,將開發的編程/模擬/調試/寫入/加密等所有過程一氣呵成,中間不須任何編譯或匯編。

5. 用C語言編寫簡單跑馬燈程序(4個燈的)

如下程序:
if(ledi==8)
{
ledi=0; //到了最後一個燈就換到第一個

//每跑一圈燈就根據預定設置的表格來決定下一圈的跑馬速度

speed=speedcode[i];

i++;if(i==2)i=0; ?你的速度設置不僅僅就2個呀(10個預定義的速度)

}
有兩種解決辦法:
一個就是將預定的速度加2倍
speedcode[30]={3,3,3,1,1,1,5,5,5,12,12,12,、、、、、、}
二是增加一全局變數uchar z=0;在i++前加上如下,前後不改:
、、、、、if(++z==3){z=0;i++;}、、、、、、、、、、、

熱點內容
我的世界推薦適合萌新的伺服器 發布:2024-11-05 18:30:03 瀏覽:576
c語言考級 發布:2024-11-05 18:16:54 瀏覽:503
易語言不能編譯安卓app嗎 發布:2024-11-05 18:14:11 瀏覽:835
c語言重點知識 發布:2024-11-05 18:04:53 瀏覽:640
演算法分家 發布:2024-11-05 17:55:39 瀏覽:469
手游雲頂怎麼確定伺服器 發布:2024-11-05 17:52:03 瀏覽:777
天籟選哪個配置2021 發布:2024-11-05 17:50:26 瀏覽:812
rust怎麼找伺服器 發布:2024-11-05 17:49:45 瀏覽:487
sql觸發器insteadof 發布:2024-11-05 17:48:04 瀏覽:242
2022款macan配置怎麼選 發布:2024-11-05 17:14:17 瀏覽:114