Vom avea la baza proiectul de la articolul ” Aplicatii cu Led-uri folosind PIC16F877 partea.I ” diferenta fiind doar de numarul de led-uri folosite 5 in cazul nostru.
Plecand de la schema:
SPER CA DATA VIITOARE O SA-MI ACHIZITIONEZ O TABLETA GRAFICA PENTRU A FACE DESENELE MAI BINE !!!!!
Va trebui sa aprindem cele 5 led-uri pe rand ( unul dupa altul ) D1 – D5 si apoi sa le stingem tot pe rand ( unul dupa altul ) D5 – D1.
Modul de creare a unui program este:
Visual C# 2010 Express ––- New Project –– MicroFramwork –– Netduino2 application –– etc.
Folosind cunostintele acumulate din articolul ” Pulsare Led ( onboard) Netduino 2 ” codul sursa va arata astfel:
using System;
using System.Net;
using System.Net.Sockets;
using System.Threading;
using Microsoft.SPOT;
using Microsoft.SPOT.Hardware;
using SecretLabs.NETMF.Hardware;
using SecretLabs.NETMF.Hardware.Netduino;
namespace NetduinoApplication1
{
public class Program
{
static OutputPort[] led = new OutputPort[8]; //declaram un vector in care tinem
// minte unde sunt conectate cele 5 // led-uri
public static void Main()
{
int i;
led[0] = new OutputPort(Pins.GPIO_PIN_D0, false); // declararea fiecarui led in
led[1] = new OutputPort(Pins.GPIO_PIN_D1, false); //parte, pinul unde este
led[2] = new OutputPort(Pins.GPIO_PIN_D2, false); //conectat si starea lui initiala
led[3] = new OutputPort(Pins.GPIO_PIN_D3, false);
led[4] = new OutputPort(Pins.GPIO_PIN_D4, false);
while (true)
{
for (i = 0; i <= 4; i++) // aprinde fiecare led in parte
{
led[i].Write(true);
Thread.Sleep(300); // asteapta 300 milisecunde
} // acest for se executa de 5 ori ( i=0;i=1,i=2,i=3,i=4 )
for (i = 4; i >= 0; i–) // stinge fiecare led pe rand in ordine inversa fata de // aprindere
{
led[i].Write(false);
Thread.Sleep(300); // asteapta 300 milisecunde
} // acest for se executa de 5 ori ( i=4;i=3,i=2,i=1,i=0 )
}
}
}
}
Mai jos va prezint un filmulet cu realizarea practica:
Lasă un răspuns