2006-05-19 21:52:42 +02:00
|
|
|
#ifndef _MEGA16_H_
|
|
|
|
#define _MEGA16_H_
|
|
|
|
|
2006-05-31 14:30:05 +02:00
|
|
|
/* Part-Code ISP */
|
|
|
|
#define DEVTYPE_ISP 0x74
|
|
|
|
/* Part-Code Boot */
|
|
|
|
#define DEVTYPE_BOOT 0x75
|
2006-05-19 21:52:42 +02:00
|
|
|
|
2006-05-31 14:30:05 +02:00
|
|
|
#define SIG_BYTE1 0x1E
|
2006-05-19 21:52:42 +02:00
|
|
|
#define SIG_BYTE2 0x94
|
2006-05-31 14:30:05 +02:00
|
|
|
#define SIG_BYTE3 0x03
|
2006-05-19 21:52:42 +02:00
|
|
|
|
2006-05-19 22:19:18 +02:00
|
|
|
|
|
|
|
#ifdef UART_DOUBLESPEED
|
|
|
|
#define UART_CALC_BAUDRATE(baudRate) ((uint32_t)(F_CPU) / ((uint32_t)(baudRate) *8) -1)
|
|
|
|
#else
|
|
|
|
#define UART_CALC_BAUDRATE(baudRate) ((uint32_t)(F_CPU) / ((uint32_t)(baudRate)*16) -1)
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#define UART_BAUD_HIGH UBRRH
|
|
|
|
#define UART_BAUD_LOW UBRRL
|
|
|
|
#define UART_STATUS UCSRA
|
|
|
|
#define UART_TXREADY UDRE
|
|
|
|
#define UART_RXREADY RXC
|
|
|
|
#define UART_DOUBLE U2X
|
|
|
|
#define UART_CTRL UCSRB
|
|
|
|
#define UART_CTRL_DATA ((1<<TXEN) | (1<<RXEN))
|
|
|
|
#define UART_CTRL2 UCSRC
|
|
|
|
#define UART_CTRL2_DATA ((1<<URSEL) | (1<<UCSZ1) | (1<<UCSZ0))
|
|
|
|
#define UART_DATA UDR
|
|
|
|
|
2006-05-19 21:52:42 +02:00
|
|
|
#endif // #ifndef _MEGA16_H_
|