微控制器中流水燈如何控制,微控制器c語言編了個流水燈,用按鍵怎麼實現它暫停。

2022-03-04 23:49:20 字數 2556 閱讀 6927

1樓:匿名使用者

硬體連線很簡單,只要將8個led指示燈接在p1口上 另一端通過220歐姆的電阻接+5v電源上,就可以了。

主要靠軟體控制,簡單的可以使用左移或右移指令,將低電平0 逐漸移入暫存器中,即控制led指示燈逐漸乙個乙個地點亮或乙個乙個地熄滅。

複雜點: 可以進行花式流水控制。

例如: 可以由兩邊逐漸向內點亮 然後再由內逐漸向外乙個乙個熄滅。

還可以由由內逐漸向兩邊內點亮 然後再由兩邊漸向內逐乙個乙個熄滅。

在程式的實現上 可以把各種花式流水的p1口亮滅狀態字 事先定義成陣列 然後每隔一定的時間

取出送p1口顯示。

呵呵 俺只提供給你乙個號的演算法 程式就自己動手自立更生。

2樓:超愛吃榴蓮的貓

學習電路基礎和微機原理的基礎知識,一切自然就懂了

3樓:

是要程式還是硬體電路?

給你個程式,c51的:

#include

#include //含-crol-函式的標頭檔案#define uint unsigned int//巨集定義#define uchar unsigned charvoid delay(uint z) //延時函式void main(void)}

4樓:智軒學堂

用plc實現流水燈的控制

微控制器c語言編了個流水燈,用按鍵怎麼實現它暫停。

5樓:諾諾百科

實現流水燈的方式有很多種(中斷,定時器,延時等等),看用哪種方式,最簡單的是延時做流水燈,那麼在死迴圈裡面增加按鍵檢測,判斷出有按鍵按下來時,再進入死迴圈,程式不往下走就可以暫停,再按跌出死迴圈。

#include //51系列微控制器定義檔案

#define uchar unsigned char //定義無符號字元

#define uint unsigned int //定義無符號整數

void delay(uint); //宣告延時函式

void main(void)

uint i;

uchar temp;

uint flag1=0;  按鍵標誌位bai

uint flag2=0;

while(1)

flag1 = keyscan();

if(flag1==1)(flag2=~flag2); //如果一旦檢測到一次按鍵掃瞄就把標誌位2 開啟;再次就關閉;

if(flag2==1)// 如果標誌位開啟就開始流水燈

temp=0x01;

for(i=0;i<8;i++) //8個流水燈逐個閃動

p1=~temp;

delay(100); //呼叫延時函式

temp<<=1;

6樓:

利用外部中斷可以,在中斷函式裡面寫入你要執行的讓流水燈停止的程式,設定乙個全域性變數flag=0;每次進入中斷就取反,通過判斷flag的值來決定是暫停還是繼續

7樓:

可以用定時器設定流水燈的時間間隔,按鍵控制定時器開關

51微控制器流水燈程式

8樓:電路diy手工

來自理科生的浪漫,用51微控制器製作心形流水燈

9樓:安迪的快樂時光

花樣流水燈的玩法,乙個51微控制器8位埠輪流輸出16顆燈珠,

10樓:匿名使用者

推薦你看郭天祥十天學會微控制器,回講實際程式的,講的挺好的

51微控制器,控制流水燈的兩種狀態程式

微控制器控制流水燈的程式

11樓:

#include

void delay(unsigned int cnt)

main()}}

12樓:匿名使用者

org 0000h

ajmp main

org 0030h

main:

mov a,#0feh

loop :

mov p1,a

acall delay

rl a

ajmp loop

delay:

mov r7,#100

d_loop2 :

mov r6,#255

d_loop1:

mov r5,#255

djnz r5,$

djnz r6,d_loop1

djnz r7,d_loop2

retend

13樓:匿名使用者

#include

#include

#define uint unsigned int#define uchar unsigned charuchar temp;

void delay(uint z)

void main() }

使用C實現串列埠通訊,接受和控制微控制器

我是柳之葉 通常,在c 中實現串列埠通訊,我們有四種方法 第一 通過mscomm控制元件這是最簡單的,最方便的方法。可功能上很難做到控制自如,同時這個控制元件並不是系統本身所帶,所以還得註冊。可以訪問 http www.devhood.com tutorials tutorial details.a...

微控制器通過串列埠控制另外微控制器問題

撒辰狂綺南 沒試過兩個微控制器直接tx對rx,rx對tx。貌似這樣不安全。我試過加上max232的。如圖所示的那種,不要九針底座。u2的t1out可以直接連線到u3的r1in。再u2的r1in直接連線到t1out.另外兩個微控制器的地線一定要相連,即電壓0點相同。可用u2的地線和u3的地線相連即可。...

求基於51微控制器的流水燈的設計

摩凌文 include define uint unsigned int define uchar unsigned charsbit keya p2 1 這裡看你把按鍵設定在哪個引腳上,這個是實現功能2 sbit keyb p2 2 這個是實現功能2sbit keyc p2 7 實現功能3void...