Sida 1 av 1
Saknar MC68HCXX
Postat: 9 februari 2006, 09:27:28
av Krille
clr x
upp: lda sinus,x
sta temp,x
dex
bne upp
Ahhh ljuvliga motorola processorer. Har så mycket mer kontroll på koden
Sysslar mest med Atmel idag men saknar dessa motorola/freescale processorer.
Något tips på nått bra utecklingskit för MC68HC12 processorn och var man kan köpa den?
Postat: 9 februari 2006, 10:47:59
av sodjan
Bara nyfiken...
Vad är det i den koden som gör MC68... unik ?
Postat: 13 februari 2006, 08:33:20
av Krille
Jo ett exempel, jag har en applikation där jag använder rätt mycket look-up tabellr.
Har en tabell på 200 postioner som innehåller bytes mellan 0-255. Användaren matar in ett tal mellan 0-200 t.ex 56 och får då svaret vad position 56 innehåller.
En ganska enkel funktion som skrivs såhär.
ldx #tal (detta blir talet som användaren matar in)
lda mintabell,x
sta savebyte.
Ska jag gör samma procedur i Atmel så får jag hålla på med pekare o dylikt.
Men om någon har något bättre tips så e de välkommna. Jag e trots allt ganska ny på Atmel.
Postat: 13 februari 2006, 11:11:52
av sodjan
OK.
Men "x" (d.v.s indexregistret i 68xx) är väl i princip en "pekare" !?
"Pekare" är så vitt jag vet ett begrepp i 3G språk som t.ex C,
jag har inte sett det användas i mikrokontrollers direkt. Det vanliga
uttrycket är "indexregister" eller "indexerad adressering".
Nu kan jag inte alls AVR arkitekturen, så jag vet inte
vilka indexerade adresseringsmoder det finns där...

Postat: 13 februari 2006, 16:57:53
av exile
Du kan göra makron om du vill.....
då kan du göra vilka tokiga instruktioner du vill

Postat: 13 februari 2006, 17:34:20
av Kaggen
Nu är jag ingen expert på AVR, jag har just börjat kolla på den lite, men om inte jag totalt missuppfatat något så finns det ju indirekta register i AVR arkitekturen X,Y,Z.
Kolla i manualen nedan:
http://www.atmel.com/dyn/resources/prod ... oc0856.pdf
Kolla första sidan och sidorna 83,85,87. Har inte kolla om dessa kan addressera annat än RAM dock eller om det finns något sätt att addressera programminnet al'a PIC:ens "retlw-tabeller".
Postat: 14 februari 2006, 08:19:01
av exile
Du kan ladda från program minet med hjälp av lpm
exempel:
Kod: Markera allt
ldi r16, 3
;r0 = tabel[r16]
mov ZL, r16 ;Z = r16
clr ZH
subi ZL, low(-tabel2*2) ;Z = Z + address
sbci ZH, high(-tabel2*2)
lpm ;tar ut värdet i tabel och stoppar i r0
;r0 = tabel2[r16]
ldi ZH, high(tabel2*2) ;Sätter den höga addressen
mov ZL, r16 ;Sätter del låga addresen
lpm ;tar ut värdet i tabel och stoppar i r0
test:
rjmp test
tabel:
.db 0x00, 0x10, 0x20, 0x30, 0x40
;sätter tabelen på ett jämt nummer för att slipa addera
.org 0x0080
tabel2:
.db 0x00, 0x11, 0x22, 0x33, 0x44
och vad är det som är jobbit med x y z
edit: rätta coden ....
Postat: 19 februari 2006, 01:12:04
av funkis
Exile: Mycket kod för att göra en enkel sak!
krille: Som gammal 68HC11 nisse så skulle bara nämna
att du kan göra samma lookuptable tingest som du gav
exempel på med en MSP430 men enklare, Inc-dec i loop.
MSP430 är bra på indirekt, direkt och absolut, och mycket
annat gotti-gott-gott!
Hääääääääp!
/Funkis
Postat: 19 februari 2006, 12:52:16
av sodjan
Är det någon som är förvånad att en modernare design kan göra
saker och ting bättre/snabbare ??
Vad är din poäng ?

Postat: 19 februari 2006, 16:29:36
av Kaggen
Kollade lite på 68HCxx, det verkar som om varje instruktion på 68HCxx också generellt tar fler instruktionscykler än instruktionerna på en PIC.
Antagligen är det en avvägningsfråga av de som designar processorer. Kraftfullar instruktioner tar fler cykler än enkla instruktioner. Det är väl också en avvägningsfråga som grundas på antal transistorer, pris och funktion. Ju mer lullul ju större/dyrare krets.
Som nämndes tidigare, macron är din vän. Dessutom är mångfald bra.
Förresten (lite OT) är det nån som vet om 68xx processorn är en klon på den gamla 6502 eller är det tvärtom? Programmerade lite 6502-assembler på C-64 tiden, instruktionsuppsättningen verkar ganska lika.
Mats
Postat: 19 februari 2006, 20:29:52
av funkis
Poäng? Ingen alls faktiskt!
Förresten, kom jusst på en, att slå ett slag för MSP430!
/Funkis
Postat: 19 februari 2006, 22:08:42
av sodjan
> är det nån som vet om 68xx processorn är en klon på den gamla 6502 eller är det tvärtom?
Som jag minns det så byggdes 6502 av missnöjda "avhoppare" från 6800
designgruppen som inte fick igenom sina ideer. Så, om jag minns rätt,
så är 6502 en form av "klon" på 6800-serien, på samma sätt som
Zilog Z80 byggdes av avhoppare från Intel som inte fick in *sina* ideer i
8080-serien. Jag tror faktiskt att samma sak gäller för PIC vs. SX...
Postat: 20 februari 2006, 14:16:10
av vfr
Om jag inte minns alldeles fel så byggde även den allra första 12-bitars instruktionsuppsättningen till PIC:en på "något annat" befintligt, men jag kommer inte ihåg vad. Om sedan SX också bygger på den eller på PIC:en i sin tur är mer en akademisk (eller snarare kanske juridisk) fråga.
Postat: 20 februari 2006, 14:45:37
av exile
funkis skrev:Exile: Mycket kod för att göra en enkel sak!
/Funkis
Nja 3 eller 5 rader brukar jag inte kalla mycket kod....