67 of 158
61 DDRC MCUSR PIND SREG TWBR DDRD MCUCSR PORTA TCCR0 TWCR EEARH OCR0 PORTB TCCR1A TWDR EEARL OCR1AH PORTC TCCR1B TWSR Some CPU registers are 16-bit values that have register names in the table above corresponding to the high and low bytes. For convenience of access, the following UnsignedInteger register names are available. When reading and writing to these registers, the control program ensures that the high and low bytes are accessed in the correct order as required by the CPU. Note that UBRR cannot be supported because the high and low bytes are not adjacent in the I/O address space. ADC EEAR ICR1 OCR1A OCR1B SP TCNT1 Because the ZX microcontrollers are implemented using a more powerful CPU, some registers available in BasicX don’t actually exist on the ZX CPU but there are equivalent registers. For compatibility, both the original register name and the actual register name are supported. For new applications, the new register names should be used. BasicX Register New Register ADCSR ADCSRA GIMSK GICR MCUSR MCUCSR UBRR UBRRL¹ UCR UCSRB USR UCSRA Notes: ¹ The serial port baud rate control register is 16-bits wide in the mega32 CPU. The upper bits are referred to as UBRRH. ZX-24a, ZX-40a, and ZX-44a Registers The pre-defined CPU registers for the ZX-24a, ZX40a and ZX-44a match those available on the ATmega644 CPU and all are Byte values. Discussion of the use of these registers is beyond the scope of this document. See the Atmel documentation for a full description. Also, be advised that modifying some of these registers may severely alter the behavior of the control program, possibly even rendering it inoperable. CPU Registers for mega644-based ZX Models ACSR EEDR OCR1AH PIND TCCR1A TWAR ADCH EICRA OCR1AL PORTA TCCR1B TWBR ADCL EIFR OCR1BH PORTB TCCR1C TWCR ADCSRA EIMSK OCR1BL PORTC TCCR2A TWDR ADCSRB GPIOR0 OCR2A PORTD TCCR2B TWSR ADMUX GPIOR1 OCR2B PRR0 TCNT0 UBRR0H ASSR GPIOR2 OSCCAL SMCR TCNT1H UBRR0L DDRA GTCCR PCICR SPCR0 TCNT1L UCSR0A DDRB ICR1H PCIFR SPDR0 TCNT2 UCSR0B DDRC ICR1L PCMSK0 SPH TIFR0 UCSR0C DDRD MCUCR PCMSK1 SPL TIFR1 UDR0 DIDR0 MCUSR PCMSK2 SPMCSR TIFR2 WDTCSR DIDR1 MONDR PCMSK3 SPSR0 TIMSK0 EEARH OCDR PINA SREG TIMSK1 EEARL OCR0A PINB TCCR0A TIMSK2 EECR OCR0B PINC TCCR0B TWAM