blikání LED

R

ryusgnal

Guest
Jak napsat C program, aby se LED bliká s 1 sec zpoždění.

 
ryusgnal napsal:

Jak napsat C program, aby se LED bliká s 1 sec zpoždění.
 
Dejte časové smyčce z tohoto:
[Http://www.newton.dep.anl.gov/askasci/comp99/CS042.htm]
Do této:
Kód:

int main (void) (

while (1) (

led_on ();

for (int i = 0; i <0xFFFF; i );

led_off ();

for (int i = 0; i <0xFFFF; i );

)

return 0;

)
 
ahoj
Proč mě nemáš používat zpoždění kalkulačka pro to, když budete potřebovat budu přesouvat ono.

jde o

 
crowinu napsal:ryusgnal napsal:

Jak napsat C program, aby se LED bliká s 1 sec zpoždění.
 
Kód:

# Include <reg51.h>neplatné timer0_init (void);/************************************************* *****************************/

/ * Definovat oblast * /

/************************************************* *****************************/

# Define time_high 0xFB / / Změna času zde

# Define time_low 0xB4 / / Změna času zdesbit impulsu = P1 ^ 0;/************************************************* *****************************/

/ * Hlavní běžné plochy * /

/************************************************* *****************************/

void main (void) (Puls = 0;timer0_init (); / / init timer0

while (1) (/ / opakovat u zde

)

)

/************************************************* *****************************/

/ * Timer0 přerušení rutinní plocha * /

/************************************************* *****************************/

neplatné int_timer0 (void) přerušení 1 (

TF0 = 0;

TR0 = 0;Pulsní = ~ puls;TH0 = time_high;

TL0 = time_low;

TR0 = 1;

)

/************************************************* *****************************/

/ * Funkce Init plocha * /

/************************************************* *****************************/

neplatné timer0_init (void) (

TMOD & = 0xF0;

TMOD | = 0x10;

TH0 = time_high;

TL0 = time_low;

ET0 = 1;

EA = 1;

TR0 = 1;

)
 
Snažte se používat přerušení časovače intervalu, pak si můžete dát blikání LED uvnitř přerušení služby běžné.

 
Budete potřebovat CCS kompilátor pro můj kód.
Omlouváme se, ale musíte přihlásit a prohlížet tuto přílohu

 
Kopírovat tento kódy a montujeme
, / / / Program začíná zde / / /
; Připojte vedla k Portb, 0

Seznam p = 16f877A
# Include <p16F877A.inc>

BSF STATUS, Rp0
clrf TRISB; všechny TRISB kolíky OUTPUT
BCF STATUS, Rp0

hlavní
BSF PORTB, 0; Led připojen PB0
volání Wait1_sec
BCF PORTB, 0
volání Wait1_sec
goto hlavní

volání Wait1_sec

cblock
d0
d1
d2
endc
Wait1_sec;!1sec za 4mhz XTAL!!
MOVLW 0x08, ty OSC není neomezená, je mi líto
MOVWF d0, prosím, řekni mi,
MOVLW 0x2F
MOVWF d1
MOVLW 0x03
MOVWF d2
Delay_0
decfsz d0, f
goto 2 dolarů
decfsz d1, f
goto 2 dolarů
decfsz d2, f
goto Delay_0

goto 1 dolarů
návrat

konec
;//// END / / / /
; Tento způsob je velmi silný, aby se vaše vlasy na CSS ....

 

Welcome to EDABoard.com

Sponsor

Back
Top