BLGM423 Gömülü Sistem Tasarımı

Benzer belgeler
PD103 BUTON LED UYGULAMA DEVRESİ UYGULAMA ÖRNEKLERİ MALZEME LİSTESİ

PIC MİKROKONTROLÖR TABANLI MİNİ-KLAVYE TASARIMI

void setup() fonksiyonu: Bu fonksiyon program ilk açıldığında bir kere çalışır ve gerekli kalibrasyon, setup komutlarını buraya yazarız.

DENEY-2. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ

LPC2104 Mikro Denetleyicisini KEIL İle Programlamak

MİKRODENETLEYİCİLER ÖRNEK PROGRAMLAR

PİC HAKKINDA KISA KISA BİLGİLER GİRİŞ/ÇIKIŞ PORTLARI

TUŞ TAKIMI (KEYPAD) UYGULAMALARI

PIC PROGRAMLAMA STEP MOTOR SÜRÜCÜ VE KONTROL AMAÇ NEDİR? Unipolar Step Motorlar. Uç TESPİTİ NASIL YAPILIR?

BQ Modbus Analog Giriş Kartı 6 Kanal 4 20mA. Kullanım Kılavuzu. Doküman Versiyon: BQTEK

Sistem Gereksinimleri: Uygulama Gelistirme: PIC Mikroislemcisinin Programlanmasi: PIC Programlama Örnekleri -1

7. Port Programlama. mikroc Dili ile Mikrodenetleyici Programlama Ders Notları -42- Şekil 2.1. Atmega16 mikrodenetleyici pin şeması

Program Kodları. void main() { trisb=0; portb=0; while(1) { portb.b5=1; delay_ms(1000); portb.b5=0; delay_ms(1000); } }

Deney No Deney Adı Tarih. 3 Mikrodenetleyici Portlarının Giriş Olarak Kullanılması / /201...

DENEY-6. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ

Mikroişlemciler Ara Sınav---Sınav Süresi 90 Dk.

DENEY-1. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ

Hacettepe Robot Topluluğu

B.Ç. / E.B. MİKROİŞLEMCİLER

BQ Modbus Analog Giriş Kartı 6 Kanal PT100 - PT1000. Kullanım Kılavuzu. Doküman Versiyon: BQTEK

Deney 4. Gerçek Zamanlı Kesme Uygulamaları

DENEY 9-A : PIC 16F877 ve LM-35 ile SICAKLIK ÖLÇÜM UYGULAMASI

8 Ledli Havada Kayan Yazı

MANUEL KAZAN KONTROL PANELİ

EEProm 24C08 UYGULAMA AMAÇ 24C08 MCU_VCC. e r : d e G. Sayfa - 1

BUTON KONTROLÜ. Pull-Down Bağlantı (Ters Bağlantı) Butona basılmadığında Giriş=1 Butona basıldığında Giriş=0

Birol Çapa Özen Özkaya Güz Dönemi Eğitimleri

FP52 PROXIMITY KART OKUYUCUSU KULLANIM KILAVUZU

DEBUGER (Komut seti kontrol prosedürü)

BSF STATUS,5 ;bank1 e geçiş CLRF TRISB ;TRISB= BCF STATUS,5 ;bank0 a geçiş

Deney 10: Analog - Dijital Dönüştürücüler (Analog to Digital Converters - ADC) Giriş

İLERI MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı

Çizgi İzleyen Robot Yapımı

LCD (Liquid Crystal Display )

REVİZYON DURUMU. Revizyon Tarihi Açıklama Revizyon No

LCD (Liquid Crystal Display)

UYGULAMA 1 24V START CPU V LO. Verilen PLC bağlantısına göre; START butonuna basıldığında Q0.0 çıkışını aktif yapan PLC programını yazınız.

Horoz Programlanabilir Zaman Rölesi

BQ352 Modbus Röle Cihazı 24 Kanal. Kullanım Kılavuzu. Doküman Versiyon: BQTEK

MPLAB IDE ve ISIS ile ASSEMBLY DİLİNDE UYGULAMA GELİŞTİRMEK

XC8 ile PİC uygulamaları

Mikroişlemci Programlama Aşamaları

KAÇAK AKIM RÖLESİ. Sayfa 1

LED YAKMAK. Circuit 2. Kablo LED. Direnç. Arduino LED. Direnç (330ohm)

Code Composer Studio İndirilmesi ve Kurulması

BQ101 GSM Access Kontrol Ünitesi Windows Programı. Kullanım Kılavuzu. Doküman Versiyon: BQTEK

PIC 16F84 VE TEK BUTONLA BĐR LED KONTROLÜ

DENEY 21 IC Zamanlayıcı Devre

ETKİLEŞİMLİ TAHTA KORUMA SİSTEMİ KURULUM

BLGM 343 DENEY 8 * TCP İLE VERİ İLETİŞİMİ

SCRATCH KONU ANLATIM KAĞIDI BAY KODLAMA (baykodlama.blogspot.com)

MEB E-Posta Hizmetleri ve Outlook Programı

# PIC enerjilendiğinde PORTB nin 0. biti 1 olacak #PIC enerjilendiğinde PORTA içeriğinin tersini PORTB de karşılık gelen biti 0 olacak

PIC TABANLI, 4 BASAMAKLI VE SER

Erzurum Teknik Üniversitesi RobETÜ Kulübü Robot Eğitimleri. ARDUİNO EĞİTİMLERİ I Arş. Gör. Nurullah Gülmüş

Dizi elemanları yukarıdaki gibi tek tek tanımlanabileceği gibi matematiksel ifadelerdeki diziler gibi de tanımlanabilir.

PEY-D810 SĠNYALĠZASYON SĠSTEMĠ

1- UETDS-TİMBSOFT Nasıl İndirilir? 2- UETDS-TİMBSOFT Nasıl Yüklenir? 3- UETDS-TİMBSOFT a Nasıl Giriş Yapılır? 4- Personel Nasıl Eklenir ve

HARMES H-12 KULLANMA KILAVUZU

Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik.

TES. Kullanma Klavuzu TES 1330A DİJİTAL AYDINLANMA ÖLÇER TES ELECTRICAL ELEKTRONIC CORP.

SAYISAL MANTIK LAB. PROJELERİ

SAKARYA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ GÖMÜLÜ SİSTEMLER DENEY FÖYÜ

UZAYLIYLA SOHBET. Kedi kuklasını silip bu kuklalardan birini seçin ve projenize başlayın.

DENEY-7. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ

İLERI MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı

TAKSİ-DURAK MÜŞTERİ TAKİP PROGRAMI

Mikroişlemci ile Analog-Sayısal Dönüştürücü (ADC)

HESAP PLANI DEĞİŞİKLİĞİ

Ölçme ve Devre Laboratuvarı Deney: 1

ASP.NET CLASS KULLANARAK VERİTABANI İŞLEMLERİ

Programın Tanıtımı

16F84 ü tanıt, PORTB çıkış MOVLW h FF MOWF PORTB

Karadeniz Teknik Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi. Çevrimiçi Ara Sınav Kılavuzu

NB Ekran Seri Port Üzerinden Veri Okuma/Yazma. Genel Bilgi Protokol Oluşturma Veri Okuma Veri Yazma

5-14 KURULUM AYARLARI CALIŞMA FONKSİYONLARI MEKANÝK KURULUM ARIZA DURUMLARI GÜVENLÝK UYARILARI TEKNÝK ÖZELLÝKLER

10 ADIMDA KR AKADEMİ DVD İZLEME PROGRAMI KULLANIM KLAVUZU

ALARM KAPALI SNOOZE ALARM AÇIK

PSPICE Đ NASIL KULLANIRIM

BQ351 Modbus Röle Kontrol Ünitesi. Kullanım Kılavuzu. Doküman Versiyon: BQTEK

HESAP MAKİNASI YAPIMI

IOS (Apple) İŞLETİM SİSTEMLERİ İÇİN KURULUM. Ön Hazırlık ve Kurulum (Tamamını Okumadan Lütfen KURULUMA BAŞLAMAYIN )

SIMAN KULLANIM KILAVUZU

ML TFT 5 ARAYÜZ KULLANIM KILAVUZU

KONTROL VE OTOMASYON KULÜBÜ

BQ300 RF Röle Kontrol Ünitesi. Kullanım Kılavuzu. Doküman Versiyon: BQTEK

Kullanıcı Kılavuzu. Linksys PLEK500. Elektrik Hattı Ağ Adaptörü

DENEY 12 SCR ile İki yönlü DC Motor Kontrolü


DENEY-5. SABANCI ATL ÖĞRETMENLERİNDEN YAVUZ AYDIN ve UMUT MAYETİN'E VERDİKLERİ DESTEK İÇİN TEŞEKKÜR EDİYORUZ

PERKON PDKS Kurulum ve hızlı başlangıç rehberi

İNTERNET TABANLI PROGRAMLAMA

Ses Seviyesi Ölçer. Kullanım Kılavuzu. Kullanmadan önce bu kılavuzu tamamen okuyunuz

Kullanım Kılavuzu

ÇÖZÜM B İLG İ S AYAR

RS-232 ile Seviye Ölçüm Cihazı Kullanım Talimatnamesi

İçindekiler FPGA GELİŞTİRME KARTI ENERJİ BESLEMESİ:... 5 ENERJİ SİSTEMİ ŞEMASI:... 5 FPGA GELİŞTİRME KARTINA PROGRAM YÜKLEME:... 6

T.C. DÜZCE ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BMT103 ELEKTRİK DEVRE TEMELLERİ DERSİ LABORATUVARI DENEY NO: 7

Mikroişlemciler. Microchip PIC

Bu dersimizde pic pinlerinin nasıl input yani giriş olarak ayarlandığını ve bu işlemin nerelerde kullanıldığını öğreneceğiz.

Transkript:

1 BLGM423 Gömülü Sistem Tasarımı İkinci Çalışma Sayısal giriş ucunun çeşitli konum ve hareketlerini algılama Bu çalışmada tipik bir anahtara bağlanmış olarak kullanılan sayısal giriş ucundaki konum ve değişimleri algılayacağız. Bir anahtarın bir giriş ucuna bağlanması SPST (tek kutup tek atım) anahtar ve buton anahtar iki uçlu elle-anahtarlama elemanlarıdır. Bir SPST anahtarı ya da butonu işlemcinin giriş ucuna bağlarken kullanılan iki yaygın yöntemden birincisi anahtarın bir ucunu port girişine diğer ucunu toprağa bağlamaktır. Bu durumda anahtar devreyi kapatınca port girişi sıfır okur. Anahtar devreyi açınca 1 port girişindeki gerilimin yükselebilmesi için port girişinden kaynak gerilimine uygun değerde bir direnç (örneğin 10kOhm) yerleştirilir. Diğer yöntemde ise, anahtarın bir ucu port girişine, öbür ucu kaynak gerilimine bağlanır. Bu durumda anahtar devresi kapalıyken port ucundaki gerilim yüksektir ve porttan 1 okunur. Portun anahtar açıldığında sıfır okumasına sağlamak üzere de giriş ucu uygun bir dirençle (10k civarı) topraklanır. Bir ucu toprakta olan anahtar, devreden uzakta bile olsa bağlantı hatlarının biri toprakta olduğundan devreye ilettiği gürültü bir ucu gerilim kaynağında olma durumuna nazaran daha azdır. Biz devrelerimizde özel bir neden yoksa ucu topraklanmış anahtarları tercih edeceğiz. Anahtar durumunu ve değişimini okuma Diyelim ki diğer ucu toprağa bağlı bir anahtarı işlemcinin portlarından birine bağladık ve gömülü sistemimizin zaman tabanında düzenli olarak okuyup anahtarın çeşitli durumları ve bu durumlardaki değişimleri algılayarak gereken işleri yapmak istiyoruz. Öncelikle algılayabileceğimiz durumlarla tanışalım. Yazdığımız kod, anahtara daha ana döngüye girmeden bakıyorsa daha sonra açıp kapamanın çalışmaya etkisi olmaz. Bu kullanımı anahtar 0. dereceden algılanıyor olarak niteleyebiliriz. Gömülü sistem kodu anahtarın durumuna ana döngü içinde her gerektiğinde bakıyorsa, ve her seferinde açık ya da kapalı olmasına göre gereken işleri yapıyorsa bu kullanımı 1. dereceden algı olarak niteleyebiliriz. Anahtarın yalnızca açık ya da kapalı olmasına göre değil, açıktan kapalıya ya da kapalıdan açığa durum değiştirdiğinde gereken işleri yapmak üzere kullanılması tipik 2. dereceden algı olarak nitelenebilir.

2 Daha üst dereceden algıya, örneğin 3. dereceye örnek olarak anahtarın kapalı kaldığı süreyi de sayıp, anahtar açıldığında, mesela kapalı kaldığı süre 3 saniyeyi geçmemiş ise yapılmasını örnek verebiliriz. Böyle bir düğme yanlışlıkla basıldığında biraz uzun basılı tutarak işin iptal edilmesini, ya da farklı süreler için farklı işler yapılmasını sağlayabilir. Bu çalışmada bir port giriş ucuna bağlı bir buton anahtarın birinci, ikinci ve üçüncü derecede algılanmasına örnekler vereceğiz. Kullanacağımız devre Birinci bölüm sonunda oluşturduğumuz devreyi bu çalışmada kullanmaya devam edeceğiz. Anahtarın çeşitli durumlarını veya hareketlerini algıladığımızda yapılacak iş olarak bir sayıyı arttıracağız, ve sayıyı her döngüde PORTCden çıkaracağız. Birinci Bölüm: 1. dereceden anahtar koşulu algısı Bu çalışmanın amacı, BT1 ve BT2 butonlarından 1- BT1 basılı (kapalı devre) olduğu sürece sayi yı her döngüde arttırmak, 2- BT2 bırakılmış (açık devre) olduğu sürece sayi yı her döngüde arttırmak, ve her döngü sonunda sayıyı RC0... RC7 çıkış portu uçlarından çıkararak görebilmemizi sağlamaktır. Kodda yapılması gereken işleri şöyle sayabiliriz. i. BT1 ve BT2 nin durumuna bağlı olarak arttırılacak sayi ile, yakıp söndüreceğimiz LED gösterge için yaksondursayac ı tanımla (Satır- 7) ii. ana döngünün zaman tabanı için sure adlı sayacı tanımla (satır-8) iii. yaksondur() prosedürünü tanımla (satır 9-12) iv. Ana programda giriş çıkışları yapılandır (satır 14-18)

3 v. Ana döngüye girmeden yaksondursayac ve sayiyı sıfırla Ana döngüde vi. vii. viii. ix. BT1 basılıysa sayıyı arttır (satır-21). BT2 bırakılmışsa sayıyı arttır (satır-22) Sayiyı PORTC ye yolla. yaksondur() prosedürünü çağırıp LED i yak. x. 0.1 saniye bekle ve ana döngüyü tekrarla Bu işleri yapan aşağıdaki C programını D2A.C adıyla yazıp derleyebiliriz. 1. // LED durum gostergesi 2. // Amac: BT1 ve BT2 yi 3. // 1.Basılı durumda sayıyı arttırmak uzere 4. // 2.Tam basildigi anda sayiyi arttirmak uzere 5. // kullanmak ve sayıyı C portundan cıkarmak 6. // 7. char yaksondursayac,sayi; 8. int16 sure; 9. void yaksondur(void){ 10. if(yaksondursayac==0) PORTB.0=0; // LED yandi 11. else PORTB.0=1; 12. yaksondursayac++; if(yaksondursayac>9) yaksondursayac=0;} 13. void main(void){ 14. //Yapilandirma 15. TRISB.0=0; // RB0'i cikis yaptik 16. TRISB.1=1; // RB1'i giris yaptik 17. TRISB.2=1; // RB2'i giris yaptik 18. TRISC=0; // RC portu cikis oldu 19. yaksondursayac=0; sayi=0; 20. do{ 21. if(!portb.1){sayi++;}//bt1 basiliysa sayi artti 22. if(portb.2){++sayi;} //BT2 basili degilse sayi artar 23. PORTC=sayi; 24. yaksondur(); 25. sure=14285; do{}while(--sure);// 0.1 saniye bekle 26. }while(1); 27. } Hex kodunu ISISteki devrede çalıştırmadan önce işlemcimizin osilatör frekansının 4MHz, watchdog timer seçeneği off olmalı, program koduna D2A.hex ı bağlamalıyız. ISIS simulasyonu penceredeki görsel durumu her 50ms de bir güncellediğinden 10 ms de bir artan sayaç ve port çıkışı ekranda dört-beş artışa neden olur. Düğmeler basılı ve bırakılmışken PORTC çıkışındaki artışları daha kolay gözlemek üzere işlemcinin hızını 10 kez düşürebiliriz. Bunun için işlemcinin properties penceresinde osilator frekansı kutusuna 0.4MHz yazmamız yeterlidir. Böylece döngüdeki kod, butonu saniyede bir kez okuyup gereğini yapacaktır. İkinci Bölüm: 2. dereceden anahtar koşulu algısı Bu çalışmanın amacı, sayıyı BT1 ve BT2 butonlarından 1- BT1 basıldığı an (eskiden açık devreyken son okunuşta kapalı devre olduğunda) arttırmak,

4 2- BT2 bırakıldığı an (eskiden kapalı devreyken son okunuşta açık devre) olduğunda) arttırmak, ve her döngü sonunda sayıyı RC0... RC7 çıkış portu uçlarından çıkararak görebilmemizi sağlamaktır. Kodda yapılması gereken değişiklikleri şöyle sayabiliriz. 1- Anahtar durum değişikliğini algılamak için anahtarın hem önceki hem de son okunan durumuna bakmamız gerekir. Önceki durumu için eskiport, son durumu için yeniport adında iki yeni değişken kullanacağız. 2- Ana döngüye girmeden yeniportun değerini PORTB den okuyarak başlatacağız. 3- Döngünün başında yeniport u eskiport a aktarıp PORTB yi eskiport a okuyacağız (satır 21). 4- BT1 in basıldığı an eskiportun bit-1i 1 ve hem de yeniportun bit-1i 0 okunur. Bu koşul sağlanırsa sayi yı bir arttıracağız (satır 22-23). 5- BT2 nin bırakıldığı an için eskiportun bit-2 si 0, yeniport un bit-2si 1 olduğunda sayiyı arttıracağız (satır 24-25). Programı D2B.C dosyasına yazıp derlediğimiz D2B.hex dosyasını işlemciye bağlamalıyız. İşlemcinin watchdog timer opsiyonu off olmalıdır. 1- // LED durum gostergesi 2- // Amac: BT1 ve BT2yi 3- // 3.Basildigi anda sayiyi arttirmak uzere 4- // 2.Birakildigi anda sayuyu artturmak uzere 5- // kullanmak ve C portundan cikarmak 6- // 7- char yaksondursayac,sayi,eskiport,yeniport; 8- int16 sure; 9- void yaksondur(void){ 10- if(yaksondursayac==0) PORTB.0=0; // LED yandi 11- else PORTB.0=1; 12- yaksondursayac++; if(yaksondursayac>9) yaksondursayac=0;} 13- void main(void){ 14- //Yapilandirma 15- TRISB.0=0; // RB0'i cikis yaptik 16- TRISB.1=1; // RB1'i giris yaptik 17- TRISB.2=1; // RB2'i giris yaptik 18- TRISC=0; // RC portu cikis oldu 19- yaksondursayac=0; sayi=0; yeniport=portb; 20- do{ 21- eskiport=yeniport; yeniport=portb; 22- if(!yeniport.1 && eskiport.1) 23- {sayi++;}//bt1 basildigi anda sayi artti 24- if(yeniport.2 &&!eskiport.2) 25- {++sayi;}//bt2 basili degilse sayi artar 26- PORTC=sayi; 27- yaksondur(); 28- sure=14285; do{}while(--sure);// 0.1 saniye bekle 29- }while(1); 30- }

5 Üçüncü Bölüm: 3. dereceden anahtar koşulu algısı Bu çalışmanın amacı, BT1 butonu bırakıldığı an, eğer üç saniyeden az basıldıysa sayiyı arttırmak, üç saniyeyi geçtiyse sayıyı arttırmamaktır. Ayrıca her döngü sonunda sayıyı RC0... RC7 çıkış portu uçlarından çıkararak görebilmemizi sağlayacağız. Kodda yapılması gereken değişiklikleri şöyle sayabiliriz. 1- Anahtar durum değişikliğini algılamak için eskiport ve yeniport değişkenlerinin yanı sıra basılı kaldığı üç saniye süreyi sayacak ucsan değişkenine ihtiyaç var. 2- Ana döngüye girmeden yeniportun değerini PORTB den okuyarak başlatacağız. 3- Döngünün başında yeniportu eskiport a aktarıp PORTB yi eskiport a okuyacağız (satır 21). 4- BT1 in basıldığı an uçsanı sıfırlayacağız (satır 22-23). 5- BT1 basıldığı sürece ücsanı arttırıp 0.1 saniyeleri sayacağız (satır 24). 6- BT1 bırakıldığında an uçsan<30 ise sayiyı arttıracağız (satır 22-23). Programı D2C.C dosyasına yazıp derleyince oluşan D2C.hex dosyasını işlemciye program kodu olarak tanıtmalıyız. 1- // LED durum gostergesi 2- // Amac: BT1 ve BT2yi 3- // 5. Birakildigi anda sayiyi arttirmak uzere 4- // ama 3 saniye gecerse arttirmamak uzere 5- // kullanmak ve C portundan cikarmak 6- // 7- char yaksondursayac,sayi,eskiport,yeniport,ucsan; 8- int16 sure; 9- void yaksondur(void){ 10- if(yaksondursayac==0) PORTB.0=0; // LED yandi 11- else PORTB.0=1; 12- yaksondursayac++; if(yaksondursayac>9) yaksondursayac=0;} 13- void main(void){ 14- //Yapilandirma 15- TRISB.0=0; // RB0'i cikis yaptik 16- TRISB.1=1; // RB1'i giris yaptik 17- TRISB.2=1; // RB2'i giris yaptik 18- TRISC=0; // RC portu cikis oldu 19- yaksondursayac=0; sayi=0; eskiport=portb; 20- do{ 21- eskiport=yeniport; yeniport=portb; 22- if(!yeniport.1 && eskiport.1) 23- {ucsan=0;}//bt1 basildigi anda ucsani saymaya basla 24- if(!yeniport.1) ucsan++; // basiliysa ucsani arttir 25- if(yeniport.1 &&!eskiport.1)//bt1 birakilinca 26- {if(ucsan<30)++sayi;} // hem de ucsan<30 ise sayiyi arttir 27- PORTC=sayi; 28- yaksondur(); 29- sure=14285; do{}while(--sure);// 0.1 saniye bekle 30- }while(1); 31- }

6 Deney Sonrası Raporu Deney sonunda kalan sürede programı aşağıdaki işleri yapacak biçime getirmeniz istenecektir. 1- Raporunuza BLGM423 Deney 2 Raporu başlığını, ve hemen aşağısına Hazırlayan:.......... satırında adınız, soyadınız ve öğrenci numaranızı yazın. 2- Son programa gerekli değişiklikleri yaparak oluşturacağınız D2D.C programına BT1 butonu bırakılınca sayiya char olarak tanımlı ve içinde 1 olan artis değerinin eklenmesini sağlayın. Eğer buton bırakıldığında 3 sanıyeden uzun basılmışsa, sayıya artısı eklemek yerine artıs=-artıs yapın ki artısın değeri 1 ise -1, -1 ise 1 olsun. Böylece bir düğmeyle sayıyı hem arttırmak hem de azaltmak mümkün olsun. Program başlığı altında programınızı ve Test Prosedürü başlığı altında devrenin nasıl test edilebileceğini raporunuza yazın. Raporunuza bu deneyden öğrendiklerinizi belirten bir sonuç bölümü yazın ve BLGM423LAB@GMAIL.COM adresine deneyin yapıldığı gün içinde yollayın.