'**************************************************************** '* Name : Buton_16F628A.BAS * '* Author : Şinasi Yavuz * '* Notice : Copyright (c) 01,12,2010 * '* : * '* Date : 01,12,2010 * '* Version : 1.0 * '* Notes : * '* : * 'BAS: 'IF TUS0=0 THEN ‘Tuşa basılmadığı zaman Tus=1 dir basılınca 0 olur. 'TOGGLE LED0 ‘ LED’in durumunu değiştir yak veya söndür. 'WHILE TUS0=0 ‘ hala tuşa basılı tutuluyor ise 'wend ‘ bırakılıncaya kadar bekle. 'endIF ‘ tuş bırakılınca buraya geç. 'IF TUS1=0 THEN TOGGLE LED1 'IF TUS2=0 THEN TOGGLE LED2 'IF TUS3=0 THEN TOGGLE LED3 ' IF TUS4=0 THEN 'TOGGLE LED4 'WHILE TUS4=0 'WEND 'ENDIF ' TUS kullanımı son derece değişik neticeler verir. Yukarıdaki örnekte ' toplam 5 adet Tuş bulunmaktadır. İlk tuş ile sonuncu tuş korumaya alınmıştır. ' korumadan kasıt tuşa bir kere basılınca Toggle komutu icra edilmekte ancak ' tuş bırakılıncaya kadar başka hiç bir işlem yapılmamaktadır. ' Diğer tuşlarda ise koruma yoktur. Toggle komutu yerine getirildikten sonra ' program çok hızlı bir şekilde yeniden aynı tuşa bakmakta ve şayet halen basılı ' ise bir kez daha toggle komutunu icra etmektedir. Tüm tuşları deneyerek aradaki ' farkı görmeye çalışınız. Gerekirse PAUSE 100 süresini daha da kısaltarak farkı görmeye ' çalışınız. ' PAUSE 100 'GOTO BAS 'END '**************************************************************** DEFINE LOADER_USED 1 DEFINE OSC 4 '@ DEVICE pic16F628a,xt_OSC,mclr_off @ DEVICE pic16F628a, INTRC_OSC_NOCLKOUT,mclr_off But var portb.1 led var portb.0 i var byte OPTION_REG.7 = 0 CMCON=7 high portb.0 pause 1000 low portb.0 high portb.2 pause 1000 low portb.2 high portb.3 pause 1000 low portb.3 high portb.4 pause 1000 low portb.4 high portb.5 pause 1000 low portb.5 BASLA: IF but=0 THEN TOGGLE LED WHILE but=0 WEND ENDIF pause 100 GOTO BASLA END |
6 Ekim 2013 Pazar
Posted by Adsız on 08:50
with No comments so far
Categories: Elektronik Devreler, Toogle Buton Test Bas Dosyası 16F628A
Kaydol:
Kayıt Yorumları (Atom)
0 yorum:
Yorum Gönder