Frage

Barrido de led

B
Bridget Centeno
@lupita
316 Aufrufe
0 Kommentare

Es un barrido de leds en una tablilla protoboard donde tienen que prender los led de izquierda a derecha y de derecha a izquierda

Arduino (C++)
1#include <xc.h>
2
3#define _XTAL_FREQ 4000000
4
5// CONFIG
6#pragma config FOSC = INTRC_NOCLKOUT
7#pragma config WDTE = OFF
8#pragma config PWRTE = ON
9#pragma config MCLRE = ON
10#pragma config CP = OFF
11#pragma config CPD = OFF
12#pragma config BOREN = ON
13#pragma config IESO = OFF
14#pragma config FCMEN = OFF
15#pragma config LVP = OFF
16
17void main(void)
18{
19    // Oscilador interno a 4 MHz
20    OSCCON = 0x61;
21
22    // PORTD como salida
23    TRISD = 0x00;
24
25    // Apagar todos los LEDs al comenzar
26    PORTD = 0x00;
27
28    while(1)
29    {
30        // ===== IZQUIERDA A DERECHA =====
31
32        PORTD = 0b00000001;   // LED 1 - RD0
33        __delay_ms(500);
34
35        PORTD = 0b00000010;   // LED 2 - RD1
36        __delay_ms(500);
37
38        PORTD = 0b00000100;   // LED 3 - RD2
39        __delay_ms(500);
40
41        PORTD = 0b00001000;   // LED 4 - RD3
42        __delay_ms(500);
43
44        PORTD = 0b00010000;   // LED 5 - RD4
45        __delay_ms(500);
46
47        PORTD = 0b00100000;   // LED 6 - RD5
48        __delay_ms(500);
49
50        PORTD = 0b01000000;   // LED 7 - RD6
51        __delay_ms(500);
52
53        PORTD = 0b10000000;   // LED 8 - RD7
54        __delay_ms(500);
55
56
57        // ===== DERECHA A IZQUIERDA =====
58
59        PORTD = 0b01000000;   // LED 7
60        __delay_ms(500);
61
62        PORTD = 0b00100000;   // LED 6
63        __delay_ms(500);
64
65        PORTD = 0b00010000;   // LED 5
66        __delay_ms(500);
67
68        PORTD = 0b00001000;   // LED 4
69        __delay_ms(500);
70
71        PORTD = 0b00000100;   // LED 3
72        __delay_ms(500);
73
74        PORTD = 0b00000010;   // LED 2
75        __delay_ms(500);
76
77        PORTD = 0b00000001;   // LED 1
78        __delay_ms(500);
79    }
80}

0 Kommentare

Melde dich an, um zu kommentieren

Sei der Erste, der kommentiert.

Barrido de led | BlueGrays