導航:首頁 > 編程語言 > 花樣流水燈程序3種變化

花樣流水燈程序3種變化

發布時間:2021-12-09 02:53:39

❶ 求C51單片機 按鍵切換三種樣式流水燈代碼

#include<reg51.h>
#include<intrins.h>
#defineucharunsignedchar
ucharled,tm,key;
sbitK=P1^0;
voidt0isr()interrupt1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
tm++;
if(tm>=10)
{
tm=0;
switch(key)
{
case0:led=_crol_(led,1);P0=led;break;
case1:led=_cror_(led,1);P0=led;break;
case2:led=~led;P0=led;break;
default:break;
}
}
}
main()
{
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
TR0=1;
ET0=1;
EA=1;
led=0xfe;
key=0;
while(1)
{
if(K==0)
{
while(K==0);
key++;
key%=3;
if(key==0)led=0xfe;
elseif(key==1)led=0x7f;
elseled=0x55;
}
}
}

❷ 求:單片機 花樣 流水燈 程序

設一個標志位flag, 以標志位的5種狀態對應發光二極體的5種工作狀態,如當flag=1;發光二極體工作在1,當flag=2;發光二極體工作在2,......!然後根據定時器定時功能,5秒到,刷新flag的值,程序如下;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;/*程序功能:定時5S到切換LED顯示狀態.
;作者:w418781840.2008.5.29 */
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
FLAG BIT 30H ;定義標志位
ORG 0
LJMP MAIN
ORG 0BH
LJMP AGA
;;;;;;主程序;;;;;;;;;;;;
ORG 0030H
MAIN: MOV FLAG,#01H ;標志位清0
MOV TMOD,#01H ;賦值50MS
MOV TH0,#3CH
MOV TL0,#0B0H
MOV R0,#100 ;中斷100*50=5S
SETB EA
SETB ET0
SETB TR0
SJMP $
;;;;;;;;;中斷服務程序;;;;;;;;;;;;;;
AGA: MOV TH0,#3CH
MOV TL0,#0B0H
DJNZ R0,LOOP ;5S到否?否,返回
INC FLAG ;到,標志加1
MOV A,FLAG
CJNE A,#05,L1 ;掃描5種狀態了否?
MOV FLAG,#01H ;是,歸0,重新開始
;;;;;;;;;切換程序;;;;;;;;;;;;
L1: CJNE A,#01H,L2 ;判斷是否是狀態1?否,轉判斷2
LCALL LED1 ;是,調有狀態1
SJMP LOOP ;返回
L2: CJNE A,#02H,L3 ; 以下跟上面判斷相同
LCALL LED2
SJMP LOOP
L3: CJNE A,#03H,L4
LCALL LED3
SJMP LOOP
L4: CJNE A,#04H,L5
LCALL LED4
SJMP LOOP
L5: CJNE A,#05H,LOOP
LCALL LED5
LOOP: RETI
;;;;;;LED子程序區;;;;;;;;;;
LED1: RET
LED2: RET
LED3: RET
LED4: RET
LED5: RET
/////////////////
///////////////////////////////
/*程序功能:定時5S到切換LED顯示狀態.
作者:w418781840.2008.5.29 */
//========聲明區===========
#include <reg51.h>
unsigned char count=0;
unsigned char flag=1;
void led1(void);
void led2(void);
void led3(void);
void led4(void);
void led5(void);
//=========函數=========
main()
{ TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
while(1)
{ switch(flag)
{ case 1:led1();break;
case 2:led1();break;
case 3:led1();break;
case 4:led1();break;
case 5:led1();break;
}
}

}
//==========中斷服務============
void timer0(void) interrupt 1
{ TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
if(++count==100)
{ count=0;
flag++;
if(flag==5)
flag=1;
}

}
//========5種狀態函數區=========

❸ 請幫忙編寫一個花樣流水燈單片機程序(要求1,3,5,7燈亮,2,4,6,8燈亮然後全滅)

先把P1口全部接低電平!
ORG 0000H
AJMP START
ORG 0040H
AA:MOV P1,#55H
ACALL DELAY
MOV P1,#0AAH
ACALL DELAY
MOV P1,#00H
ACALL DELAY
AJMP AA

DELAY:MOV R5,#256
LOOP2:MOV R4,#256
LOOP1:NOP
NOP
DJNZ R4,LOOP1
DJNZ R5,LOOP2
RET

❹ 一個花樣流水燈單片機程序(要求1,3,5,7燈亮,2,4,6,8燈亮然後全滅)

先把P1口全部接低電平。

ORG 0000H。
AJMP START。
ORG 0040H。
AA:MOV P1,#55H。


ACALL DELAY。
MOV P1,#0AAH。
ACALL DELAY。
MOV P1,#00H。


ACALL DELAY。
AJMP AA。

DELAY:MOV R5,#256。
LOOP2:MOV R4,#256。
LOOP1:NOP。
NOP。


DJNZ R4,LOOP1。
DJNZ R5,LOOP2。
RET。

單片機(Single-Chip Microcomputer)是一種集成電路晶元,是採用超大規模集成電路技術把具有數據處理能力的中央處理器CPU、隨機存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統、定時器/計數器等功能(可能還包括顯示驅動電路、脈寬調制電路、模擬多路轉換器、A/D轉換器等電路)集成到一塊矽片上構成的一個小而完善的微型計算機系統。

在工業控制領域廣泛應用。從上世紀80年代,由當時的4位、8位單片機,發展到現在的300M的高速單片機。

單片機又稱單片微控制器,它不是完成某一個邏輯功能的晶元,而是把一個計算機系統集成到一個晶元上。相當於一個微型的計算機,和計算機相比,單片機只缺少了I/O設備。概括的講:一塊晶元就成了一台計算機。

它的體積小、質量輕、價格便宜、為學習、應用和開發提供了便利條件。同時,學習使用單片機是了解計算機原理與結構的最佳選擇。

單片機的使用領域已十分廣泛,如智能儀表、實時工控、通訊設備、導航系統、家用電器等。

❺ 用C語言編寫一個花樣流水燈的程序及此程序的流程圖

#include<reg51.h>
#define uchar unsigned char
uchar num_code[]={0,1,2,3,4,5,6,7,8,9,1,3,5,7,9,0,2,4,6,8,0,1,2,3,4,5,6,7,0,1};
sbit add_1ms=P1^0;
void delay_nms(unsigned int n)//延遲n毫秒
{

uchar i;
while(n!=0)
{
for(i=250;i>0;i--);
n--;
}
}

main()
{
uchar k;
unsigned int m=500; //一開始0.5s
while(1)
for(k=0;k<30;k++)
{
if(add_1ms==0) //到2s的時候,間隔時間回復為0.5s
{
if(m==2000)
{
m=500;
}

else m=m+100; //按一次按鈕 間隔時間增加0.1s
}

P2=num_code[k] ;
delay_nms(m);

}

}

❻ 跪求一個按鍵控制流水燈的單片機程序,要三種花樣,且用reg52.h。急急急急!!!!

#include<reg52.h>
#include<intrins.h>
#defineucharunsignedchar
sbitkey=P1^0;
ucharled,time;
voidt0isr()interrupt1
{
TH0=(65536-60000)/256;
TL0=(65536-60000)%256;
switch(time)
{
case0:P0=led;led=_crol_(led,1);break;
case1:P0=led;led=_cror_(led,1);brea;
case2:P0=led;led=~led;break;
}
}
main()
{
TMOD=0x01;
TH0=(65536-60000)/256;
TL0=(65536-60000)%256;
TR0=1;
ET0=1;
EA=1;
led=0xfe;
while(1)
{
if(key==0)
{
while(key==0);
time++;
time%=3;
if(time==0)led=0xfe;
elseif(time==1)led=0x7f;
elseled=0x55;
}
}
}

❼ 求救:單片機花樣流水燈(16燈6種花樣)

不會有現成的完整程序給你的,得你自己寫,流水燈的樣式可以用查表。

❽ 花樣流水燈程序(至少兩種模式,用數碼管顯示模式的數字,用按鍵控制模式,並且實現燈的加速或減速

呵呵,我也來湊一個熱鬧啊!
//程序功能:用數組函數讓P1的8個二極體花樣閃爍
// K1 加速。K2 減速。K3 恢復正常。 K4 暫停1.5s後繼續。
//制 作 者:* *
//Q Q:*******
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit v1=P3^4;
sbit v2=P3^5;
sbit v3=P3^6;
sbit stop=P3^7;
uint x,y,z,aa;
uchar code led[]=
{
0xfc,0xf9,0xf3,0xe7,0xcf,0x9f,0x3f,0x7f,0xff,0xe7,
0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xc3,0x81,
0x00,0x81,0xc3,0xe7,0xff,0xaa,0x55,0x18,0xff,0xf0,
0x0f,0x00,0xff,0xf8,0xf1,0xe3,0xc7,0x8f,0x1f,0x3f,
0x7f,0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf8,0xff,
0x00,0x00,0xff,0xff,0x0f,0xf0,0xff,0xfe,0xfd,0xfb,
0xf7,0xef,0xdf,0xbf,0x7f,0xff,0x7f,0xbf,0xdf,0xef,
0xf7,0xfb,0xfd,0xfe,0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,
0x80,0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0x00,
0xff,0x00,0xff,0x00,0xff,0x00,0xff};
void delay(uint z)
{
for(x=z;x>0;x--)
for(y=124;y>0;y--);
}
void main()
{
uchar i;
z=150;
aa=0;
while(1)
{
for(i=0;i<97;i++)
{
if(v1==0)
z+=10;
if(v2==0)
z-=10;
if(z<20)
z=10;
if(v3==0)
z=124;
P1=led[i];
delay(z);
if(stop==0)
{
delay(10);
if(stop==0)
{
while(!stop);
delay(1500);
}
}
}
}
}

一樣的,如果你要數碼管顯示模式的話,只需要加上數碼管顯示的幾個句子就可以了,我就不幫你改了啊!!

呵呵

❾ 花樣流水燈程序

瓦打我大威德安慰打我打我打我

閱讀全文

與花樣流水燈程序3種變化相關的資料

熱點內容
許志安和羅美薇合作的電影名字 瀏覽:88
歐美四級有推薦的嗎? 瀏覽:79
數控斜車和平車編程有什麼區別 瀏覽:655
蘋果6下載軟體要登陸不了ID 瀏覽:317
三星9280安卓70刷機包 瀏覽:20
iphone5c704越獄 瀏覽:60
黃岡運營商三網大數據怎麼樣 瀏覽:225
ug編程幾何體被定義什麼意思 瀏覽:465
c頭文件功能 瀏覽:255
A1創世者電影中文版 瀏覽:794
大數據發展的趨勢分析 瀏覽:405
思晨電影叫什麼 瀏覽:85
徐錦江,葉子楣 瀏覽:781
盜賊制毒升級 瀏覽:177
女鼎爐采補至死小說 瀏覽:775
手機設置華碩路由器怎麼設置密碼 瀏覽:382
母乳人妻倫理 瀏覽:82
榮耀6手機無法升級 瀏覽:135
懷孕五十年生孩子電影 瀏覽:433
一個在二樓窗邊一個在泳池韓國 瀏覽:136

友情鏈接