butona her bastığımda farklı işlem satırı işi yapmak istiyorum yardım edermisniz

Başlatan sifirzero, 02 Nisan 2016, 21:17:10

dursuncemal

Alıntı yapılan: sene35 - 04 Nisan 2016, 06:46:22
Ustam ilk yazdigim mesajda kodlar var.kaldigim aşama.bir buton ile 3 tane seçenek olacak ikinci buton ile 3 seçenekten birini çalistircam.örnek 1.butona ilk bastim asagiya ikinci bastim yukari ücuncu bastim yan.ama ikinci buton çalıştircak bunlari.ikinci buton ile start vercem.Allah razı olsun.
bu durumda 4 tane mi led olacak.cunku asagi yukari yana secimi zaten led yanarak olacagi icin calistirmayi gormen  icin de bir gosterge gerekir.
:=

sifirzero

6 tane led olacak 3 tane seçim ledi 3 tanede islem ledi.secim ledi ilk butona bastim sari ilk butona tekrarbastim yesil ilk butona tekrar bastigimda kirmizi yanacak.ikinci buton islem yapacak

mesaj birleştirme:: 05 Nisan 2016, 13:58:44

sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

sifirzero

sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

dursuncemal

secim ledi ile secim yaptiktan sonra bir onceki islem ledi konumunu koruyacak mi (led yanmaya devam edecekmi) islem tusuna basana kadar.birde bu is icin cizilmis seman var ise rica edebilirmiyim.
:=

sifirzero

evet işlemini koruyacak ustam şemam var vereyim ilerleyen saatlerde

mesaj birleştirme:: 05 Nisan 2016, 19:35:55



sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

dursuncemal

:=

sifirzero

seçim ledine bastığımda ilk bastığımda 5sn ikinci kez bastığımda 8sn üçüncükez bastığımda 10 sn çalışcak   2. butona bastığımda hangisini seçtiğsem o çalışacak
sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

dursuncemal

bunlar ledlerin isimleri ledler surekli yanacak yanlismi anliyorum 5 ,8, 10 yanip sonmeyecek dogru mu birde stop var stop basinca islem ledleri sonecek sanirim.
:=

sifirzero

sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

ayhani

Alıntı yapılan: sene35 - 05 Nisan 2016, 20:26:55
1.butona herbastığımda biri yanacak biri sönecek



Hocam flowcode ile bunları çok kısa yaparsınız kendinize işkence etmeyin. Şu sistemin çalışmasını tam yazın ben size örneği yapıp göndereyim.
En iyi bildiğim şey hiçbir şey bilmediğimdir.

sifirzero

ustam resimde herşeyi anlatıyor.1.buton süre ikinci buton seçilen süreyi çalıştıracak.Allah razı olsun ustam
sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

sifirzero

sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

dursuncemal

zor değil topu opu 2 satirlik birsey biraz yogın oldugum icin ilgilenemedim biraz sonra yazip gonderirirm

mesaj birleştirme:: 07 Nisan 2016, 07:25:32

#include <main.h>
#include <DEFS_628.h>

//////////////////////////////////////////////////////////////////////////////////////////////////////
#define   _sure   ra0
#define   _start  ra1
#define   _stop   ra2

/////////////////////////////////////////////////////////////////////////////////////////////////////

unsigned char _secim_goster[] = {0b00000001,0b00000010,0b00000100};

unsigned char _islem_point = 0;
unsigned char buton_gecikme = 5;
unsigned char maske = 0;

/////////////////////////////////////////////////////////////////////////////////////////////////////

unsigned char bitler = 0;
#bit  tus_izin   = bitler.0
#bit  start_biti = bitler.1

//////////////////////////////////////////////////////////////////////////////////////////////////////
#INT_RTCC
void  RTCC_isr(void) 
{

    if( !ra0 & !ra1 & !ra2 ){tus_izin = 1; } 
      
    if(buton_gecikme){

                        buton_gecikme -- ;
                        
                                                  if(tus_izin){
                                                          
                                                             if( _sure ){ _islem_point++;  tus_izin = 0; 
                                                             
                                                              
                                                             if(_islem_point == 3  ){ _islem_point =0; }
                                                             
                                                                                   
                                                              }
                                                            
                                                             
                                                             if(_start){start_biti = 1; tus_izin = 0;  } 
                                                             
                                                             if(_stop){maske = 0;} 
                                                               
                                                              }
                        

                        }else{buton_gecikme  = 5;}



}

/////////////////////////////////////////////////////////////////////////////////////////////////////

void main()
{
   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_16|RTCC_8_bit);      //4,0 ms overflow

   enable_interrupts(INT_RTCC);
   enable_interrupts(GLOBAL);
   trisb = 0;
   trisa = 0x00000111;
   portb = 0;
  
   maske = 0;
   
   while(TRUE)
   {

         
    portb =  _secim_goster[_islem_point] | maske;
   
    
    if(start_biti){

                                     
                   maske =  _secim_goster[_islem_point] << 3;
             
                   start_biti = 0;
                   }
           
           
      
   }

}
main
asagidaki doya port tanimlamalarini icermektedir   'DEFS_628.h' adinda projene dahil etmelisin.yada kopyalayip mainin ustune yapistirabilirsin
#define W 0
#define F 1

// register files

#byte PORTA  =0x05
#byte PORTB  =0x06
#byte TRISA  =0x85
#byte TRISB  =0x86

#bit not_to =0x03.4
#bit not_pd =0x03.3

#bit ra7   =0x05.7
#bit ra6   =0x05.6
#bit ra5   =0x05.5
#bit ra4   =0x05.4
#bit ra3   =0x05.3
#bit ra2   =0x05.2
#bit ra1   =0x05.1
#bit ra0   =0x05.0

#bit rb7   =0x06.7
#bit rb6   =0x06.6
#bit rb5   =0x06.5
#bit rb4   =0x06.4
#bit rb3   =0x06.3
#bit rb2   =0x06.2
#bit rb1   =0x06.1
#bit rb0   =0x06.0



#bit trisa2   =0x85.7
#bit trisa1   =0x85.6
#bit trisa0   =0x85.5
#bit trisa4   =0x85.4
#bit trisa3   =0x85.3
#bit trisa2   =0x85.2
#bit trisa1   =0x85.1
#bit trisa0   =0x85.0

#bit trisb7   =0x86.7
#bit trisb6   =0x86.6
#bit trisb5   =0x86.5
#bit trisb4   =0x86.4
#bit trisb3   =0x86.3
#bit trisb2   =0x86.2
#bit trisb1   =0x86.1
#bit trisb0   =0x86.0

bunlarda islemcinin fuse ayarlari

#include <16F628.h>
#use delay(internal=4000000)


kolay gelsin.


mesaj birleştirme:: 06 Nisan 2016, 17:34:06


not : BU COK ONEMLİ cizdigin semadaki ledlere direk baglanti yapmısın.herlede mutlaka direnc ile gitmek zorundasin 330,470,ohm gibi.
:=

sifirzero

Allah razi olsun kardesim direncsiz olmaz biliyorum yoksa işlemci yanar
sifirzero.blogspot.com [email]sifirrzero@gmail.com[/email] iman hem nurdur hem kuvvettir

dursuncemal

bir deneyip sonucu bildirirsen sorunlu yerleri duzetlmeye calisisrim.son anda gordugum bir durumuda ekleyecegim.ledler uzerinde yazdigi sure kadar calisacak anladigim kadari ile su anda direkt calisiyor onyda eklerim.sen bunu bir kontrol et
:=