Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

promenjive u pbp (nizovi)

[es] :: Elektronika :: Mikrokontroleri :: promenjive u pbp (nizovi)

[ Pregleda: 1828 | Odgovora: 0 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

cheko
Dragoslav Cekicevic
serviser tv uredjaja
rtv servis cekicevic
Pozega

Član broj: 326156
Poruke: 3
*.dynamic.isp.telekom.rs.



Profil

icon promenjive u pbp (nizovi)10.05.2015. u 17:47 - pre 108 meseci
Evo i ja se resio da postavim neko pitanje u nadi da ce mi neko pomoci oko mog problema :
Ovaj kod radi i sve je ok.Ali ja hocu da sa sadasnjih 16 bita prosirim red na 32 bita
Citao sam na netu da se to radi sa nizom vise bajtova u promenijvoj kao na primer -red var byte [4]
ali ja to nemogu da ubacim u ovaj moj kod,ako neko moze da pomogne zahvaljujem.
mikrokontroler je pic 16f628a i za sada 2 - 74hc595 shift registra a ja bi da prosirim na 4 ili vise shift registara

Code:
                                           
 


           Include "modedefs.bas"   'Include serial modes
           'Define   OSC 10           '8MHz crystal
           CMCON = 7                'Disable comparator,start up in digital mode,PortA
           '@ DEVICE INTRC_OSC
           @ DEVICE ER_OSC_NOCLKOUT
           @ DEVICE WDT_OFF            ' Watchdog Timer      
           @ DEVICE PWRT_ON            ' Power-On Timer      
           @ DEVICE MCLR_OFF            ' Master Clear Options (Internal)      
           @ DEVICE BOD_ON             ' Brown-Out Detect      
           @ DEVICE LVP_OFF            ' Low-Voltage Programming      
           @ DEVICE CPD_OFF            ' Data Memory Code Protect      
           @ DEVICE PROTECT_OFF        ' Program Code Protectio



     Symbol clock = PORTA.0
     Symbol dat = PORTA.1
     SYMBOL latch = PORTA.2
     
     Red      var word     
     a        var byte
     aux      var word
     karakter var byte
     adr      var byte
     x        var byte
     
     karakter = 0
     x = 0
     a = 0    
     adr=0
     red = 0
     aux = 0
     eeprom [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,62,65,65,65,34,0,127,8,8,8,127,0,127,73,73,65,0,127,20,34,65,0,62,65,65,65,62,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,254]


    portb = %11111111   
    trisb = %00000000    

pocetak:
       adr=0

dalje:
 
'*************************************************************
    for x = 0 to 126
    
      read adr,karakter
      adr=adr+1
    if karakter = 254 then pocetak
      red.15 = karakter.0
                   
      gosub unos       
      gosub prikazi     
      gosub pomeri        
      goto dalje
    
    next x
'***************************************************************      
unos:
    aux = red 
    For a = 1 To 16
  If aux.15  = 0 Then
    
      LOW dat  
      LOW clock       
      HIGH clock 
   
  Else
      HIGH dat  
      LOW clock
      HIGH clock
   
  Endif    
      aux = aux<<1  'pomeranje u levo za 1 
  Next a 
 return
'**********************************************************************
prikazi:
'**********************************************************************  
  

   portb = %11111111
   high LATCH
   low  latch 
   low portb.7 
   gosub pauza 
   
   return
'**********************************************************************  
pomeri:
'**********************************************************************      
   red = red >> 1
   
   
   return
'***********************************************************************   
pauza: 
       pause 500
       return 
'***********************************************************************       
             
       
END 


 
 
Odgovor na temu

[es] :: Elektronika :: Mikrokontroleri :: promenjive u pbp (nizovi)

[ Pregleda: 1828 | Odgovora: 0 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.