Sida 1 av 1

Varför är det så här?

Postat: 23 september 2004, 20:36:23
av Rymdninja
När man pysslar med uC så har man juh både portar och register. T.ex. på avr 2313 så finns juh PORTB och PORTD som är minnesmappade parallell portar som man skriver till med komandot out PORTB, x
Sedan finns det juh register också. T.ex. r16 - r31...och dessa kan man skriva till med t.ex. ldi, ori, andi osv....jaja allt det här vet ni säkert redan.
Min fråga är rent konkret. Vad är det för skillnad på portar och register? Båda är väl minnesmappade för det mesta? Varför kan jag inte använda ldi på portar osv....

jaja..tack o hej :)

EDIT: tog bort konstigt teckan...

Postat: 23 september 2004, 21:11:32
av strombom
The AVR has Harvard architecture with separate memories and buses for program
and data. The program memory is accessed with a 2-stage pipeline. While one instruction
is being executed, the next instruction is pre-fetched from the program memory.
This concept enables instructions to be executed in every clock cycle. The program
memory is In-System Programmable Flash memory.
antar att det var ett relevant urklipp från databladet... :)

/Johan