[ lm741 @ 28.07.2011. 22:30 ] @
Pozdrav ekipi,..

radim u picbasic-u
mc 16f628

imam problem kako da smestim u interni EEPROM
promenljivu veličine WORD
i da je kasnije po potrebi isčitam

promenljivu veličine BIT i BYTE,...nemam problem


WORD,.. probao sam da podelim na dva bajta(niži i viši) ali kad hoću da kompajliram prijavi mi grešku

dali imate ideju ili da kačim eksternu memo.

[ veselinovic @ 28.07.2011. 22:45 ] @
si probao ovo:

a var word
b var a.byte0
c var a.byte1

[ lm741 @ 28.07.2011. 22:59 ] @
nisam,..
ako sam dobro razumeo da li je to ovo,..

sp var word

b var sp.byte0
c var sp.byte1


read 0,b
read 1,c
.
.
.
.
pocetak:
.
.
.
write 0,b
write 1,c

sp=b+c
[ Sepa011 @ 28.07.2011. 23:17 ] @
sp.byte0 = b
sp.byte1 = c
[ lm741 @ 28.07.2011. 23:23 ] @
a kako da ih sastavim da mi u daljem programu ta dva bajta budu WORD

[ Sepa011 @ 28.07.2011. 23:26 ] @
Posto ti je sp definisana kao word, onda je kao sto sam ti napisao.

Inace, ovo se kompajlira bez greske:
Code:
sp var word
test var word
sp = $AA55

write 0, sp

read 0, test

end

[ lm741 @ 28.07.2011. 23:46 ] @
tek sad ne kontam,..

inače meni je Tz promenljiva u koju smeštam veličinu zadate temperature

pa da prepravim

Tz var WORD

pošto na jednu lokaciju mogu smestiti naj više 256 bita

znači da tu reč Tz moram smestiti na dve lokacije


sad ne razumem Tz.byte0 i Tz.byte1 tako nešto PBP ne prihvata




što se kompajliranja tiče meni bez greške prolazi

WRITE 1, Tz
READ 1, Tz

ali nema upisa niti čitanja

kada probam READ 1, [tz.LowByte,Tz.HighBzte] prijavi mi grešku prilikom kompajliranja








[Ovu poruku je menjao lm741 dana 29.07.2011. u 01:29 GMT+1]
[ Sepa011 @ 29.07.2011. 00:26 ] @
WRITE nema uglaste zagrade [ i ]
[ lm741 @ 29.07.2011. 00:29 ] @
izvinjavam se,..........READ

evo prepravio,...
[ rsinisa @ 29.07.2011. 03:10 ] @
Ja ću još jednom onu moju: "Čitati, čitati i samo čitati" :)

Evo šta kaže uputstvo za PBP:

To read a word, each of the 2 bytes that make up the word must be read

separately:

w Var Word

READ 0,w.Byte0

READ 1,w.Byte1

To write a word, each of the 2 bytes that make up the word must be

written separately:

w Var Word

WRITE 0,w.Byte0

WRITE 1,w.Byte1

Pozdrav.
Sinisha
[ Sepa011 @ 29.07.2011. 08:19 ] @
Axm, da. Potpuno si u pravu. Ja sam PBP odavno prestao da koristim.

Mada se i za Proton+ stalno cite, cita, cita, ....
[ lm741 @ 29.07.2011. 11:41 ] @
Uspelo je,...

Code:
if tp=0 and tz < 4000  then
     
     tz=tz+50    
     ss=0
     write 0,tz.byte0
     write 1,tz.byte1
    
     endif 
    
     if tm =0 and tz > 1000 then
     tz=tz - 50
     ss=0
     write 0,tz.byte0
     write 1,tz.byte1



opet sam lupao glavu na pogrešnu stranu
ali da vam ne prepričavam šta sam bezuspešno pokušavao

HVALA vam na velikoj pomoći,...