RPi & Windows IoT Core & C# – 1 – Blink v2 (Timerlı)


using System;
using Windows.Devices.Gpio;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;

namespace App1
{
public sealed partial class MainPage : Page
{

// Pin tanımlamaları
private const int LED_PIN = 12;

// Nesne Tanımlamaları
private GpioPin pin;
private GpioPinValue pinDegeri;

private DispatcherTimer zamanlayici;

public MainPage()
{
this.InitializeComponent();

zamanlayiciOlustur();

pinHazirliği();

zamanlayici.Start();

}

public void pinHazirliği()
{
// gpio nesnesi tanımlaması
var gpio = GpioController.GetDefault();

// Pin çıkış ayarlamaları
pin = gpio.OpenPin(LED_PIN); // Pin açtık
pin.SetDriveMode(GpioPinDriveMode.Output); // Pini çıkış yaptık

}

public void zamanlayiciOlustur()
{
zamanlayici = new DispatcherTimer(); // zamanlayici oluşturma
zamanlayici.Interval = TimeSpan.FromMilliseconds(500); // zaman aralığı
zamanlayici.Tick += zamanlayicininİsleyecegiFonksiyon; // zamanlayici fonksiyon tanımlaması

}

private void zamanlayicininİsleyecegiFonksiyon(object sender, object e)
{
// durumlara göre sorgu tanımlamaları
if ( pinDegeri == GpioPinValue.High)
{
pinDegeri = GpioPinValue.Low;
pin.Write(pinDegeri);
}
else
{
pinDegeri = GpioPinValue.High;
pin.Write(pinDegeri);
}
}
}

}

 

Hakan Kaya
Yarı zamanlı mühendis. Yarı zamanlı eğitmen. Biraz da film sever.
error: 5846 sayılı Fikir ve Sanat Eserleri Kanunu tarafında içeriklerin izinsiz kopyalanması, paylaşılması ve çoğaltılması yasaktır.