U prilogi novi kod sa izmjenama kako je gorankg predlozio...nadam se da je sada ok...promjene su sljedece:
- kodirane vrijednosti za segmente stavljene u FLASH i citanje iz FLASHa (sada sam morao da koristim Z registar jer on je zaduzen za citanje iz flasha)
- startnu adresu 0x0000 sam morao da stavim 0x0005 iz razloga sto sam radio gore spomenuto spremanje konstanti u flash...postu su konstante duge 10 bytova a velicina dva byte zauzima 1 mjesto u flashu, racunicom 10 byte / 2 mjesta dodje 5 kao slobodna pocetna pozicija..ili lakse kazano:
konstante su zapisane na pocetku flasha dakle na adresi 0x0000 i idu do adrese 0x0004 (dakle 0000 0001 0002 0003 0004) i nakon te adrese ide nas kod koji sam napisao da se izvrsava. Ovime je puuno manje zauzece i bolji kod (proje 104 Worda sada 78 Worda), jedina mana je citanje iz FLASHA 1 ciklus vise naspram RAM-a ali to sada nije toliko ni bitno jer se ne radi o ultra preciznom PWM ili nekvom drugom sklopu gdje je brzina od presudne vaznosti.
- zamjenjene dugacke instrukcije sa cpi i inc brojaca, te se tu ustedjelo puno u programu i brze ce se program da se izvrsava
- umjesto lp stavljeno lpm jer sada citamo iz FLASH-a a ne iz SRAM-a pa mora da se koristi drugačiji mnemonik.
- frekvencija osvjezavanja stavljena na 5ms (200Hz), to kad se podijeli na 3 segmenta ispadne 66,66Hz realna frekvencija osvjezavanja stip ce se fino podesiti kada stignu displeyi.
Evo koda:
Segment_New.rar (Size: 1,29 KB / Downloads: 1)
- kodirane vrijednosti za segmente stavljene u FLASH i citanje iz FLASHa (sada sam morao da koristim Z registar jer on je zaduzen za citanje iz flasha)
- startnu adresu 0x0000 sam morao da stavim 0x0005 iz razloga sto sam radio gore spomenuto spremanje konstanti u flash...postu su konstante duge 10 bytova a velicina dva byte zauzima 1 mjesto u flashu, racunicom 10 byte / 2 mjesta dodje 5 kao slobodna pocetna pozicija..ili lakse kazano:
konstante su zapisane na pocetku flasha dakle na adresi 0x0000 i idu do adrese 0x0004 (dakle 0000 0001 0002 0003 0004) i nakon te adrese ide nas kod koji sam napisao da se izvrsava. Ovime je puuno manje zauzece i bolji kod (proje 104 Worda sada 78 Worda), jedina mana je citanje iz FLASHA 1 ciklus vise naspram RAM-a ali to sada nije toliko ni bitno jer se ne radi o ultra preciznom PWM ili nekvom drugom sklopu gdje je brzina od presudne vaznosti.
- zamjenjene dugacke instrukcije sa cpi i inc brojaca, te se tu ustedjelo puno u programu i brze ce se program da se izvrsava
- umjesto lp stavljeno lpm jer sada citamo iz FLASH-a a ne iz SRAM-a pa mora da se koristi drugačiji mnemonik.
- frekvencija osvjezavanja stavljena na 5ms (200Hz), to kad se podijeli na 3 segmenta ispadne 66,66Hz realna frekvencija osvjezavanja stip ce se fino podesiti kada stignu displeyi.
Evo koda:
