mirror of
https://github.com/arduino/Arduino.git
synced 2024-12-01 12:24:14 +01:00
Remove unneeded register and ISR names in HardwareSerialx.cpp
Before, HardwareSerial1+.cpp were a copy of HardwareSerial1.cpp with all 0's replaced by the corresponding number. This would mean that e.g. the Serial1 object would use the UBRRL register instead of UBRR1L when it was defined, or the USART_RX_vect instead of USART1_RX_vect. In practice, this would neve actually cause problems, since: - No avr chip currently has both the non-numbered registers as well as numbered registers. - HardwareSerial.h would only define HAVE_HWSERIALx when the corresponding numbered register is defined (except for HAVE_HWSERIAL0, which is also defined when the unnumbered registers are present). Furthermore, before both the UARTx_xx_vect and USART_x_xx_vect was used. Looking at the include files, only UART1_xx_vect is actually used (by iom161.h), the others use USARTx_xx_vect. For this reason, HardwareSerial1.cpp keeps the preprocessor conditional to select either UART or USART and the other files use USART unconditionally. While we're here, also fix the compiler error message when no valid ISR name was found (it previously said "for the first UART" in all cases).
This commit is contained in:
parent
0bc4b4bad1
commit
b26db209cd
@ -43,7 +43,7 @@
|
||||
#elif defined(USART_RXC_vect)
|
||||
ISR(USART_RXC_vect) // ATmega8
|
||||
#else
|
||||
#error "Don't know what the Data Received vector is called for the first UART"
|
||||
#error "Don't know what the Data Received vector is called for Serial"
|
||||
#endif
|
||||
{
|
||||
Serial._rx_complete_irq();
|
||||
@ -58,7 +58,7 @@ ISR(USART0_UDRE_vect)
|
||||
#elif defined(USART_UDRE_vect)
|
||||
ISR(USART_UDRE_vect)
|
||||
#else
|
||||
#error "Don't know what the Data Register Empty vector is called for the first UART"
|
||||
#error "Don't know what the Data Register Empty vector is called for Serial"
|
||||
#endif
|
||||
{
|
||||
Serial._tx_udr_empty_irq();
|
||||
|
@ -36,39 +36,29 @@
|
||||
|
||||
#if defined(HAVE_HWSERIAL1)
|
||||
|
||||
#if defined(USART_RX_vect)
|
||||
ISR(USART_RX_vect)
|
||||
#if defined(UART1_RX_vect)
|
||||
ISR(UART1_RX_vect)
|
||||
#elif defined(USART1_RX_vect)
|
||||
ISR(USART1_RX_vect)
|
||||
#elif defined(USART_RXC_vect)
|
||||
ISR(USART_RXC_vect) // ATmega8
|
||||
ISR(USART1_RX_vect)
|
||||
#else
|
||||
#error "Don't know what the Data Received vector is called for the first UART"
|
||||
#error "Don't know what the Data Register Empty vector is called for Serial1"
|
||||
#endif
|
||||
{
|
||||
Serial1._rx_complete_irq();
|
||||
}
|
||||
{
|
||||
Serial1._rx_complete_irq();
|
||||
}
|
||||
|
||||
#if defined(UART1_UDRE_vect)
|
||||
ISR(UART1_UDRE_vect)
|
||||
#elif defined(UART_UDRE_vect)
|
||||
ISR(UART_UDRE_vect)
|
||||
#elif defined(USART1_UDRE_vect)
|
||||
ISR(USART1_UDRE_vect)
|
||||
#elif defined(USART_UDRE_vect)
|
||||
ISR(USART_UDRE_vect)
|
||||
#else
|
||||
#error "Don't know what the Data Register Empty vector is called for the first UART"
|
||||
#error "Don't know what the Data Register Empty vector is called for Serial1"
|
||||
#endif
|
||||
{
|
||||
Serial1._tx_udr_empty_irq();
|
||||
}
|
||||
|
||||
#if defined(UBRRH) && defined(UBRRL)
|
||||
HardwareSerial Serial1(&UBRRH, &UBRRL, &UCSRA, &UCSRB, &UCSRC, &UDR);
|
||||
#else
|
||||
HardwareSerial Serial1(&UBRR1H, &UBRR1L, &UCSR1A, &UCSR1B, &UCSR1C, &UDR1);
|
||||
#endif
|
||||
HardwareSerial Serial1(&UBRR1H, &UBRR1L, &UCSR1A, &UCSR1B, &UCSR1C, &UDR1);
|
||||
|
||||
// Function that can be weakly referenced by serialEventRun to prevent
|
||||
// pulling in this file if it's not otherwise used.
|
||||
|
@ -36,39 +36,17 @@
|
||||
|
||||
#if defined(HAVE_HWSERIAL2)
|
||||
|
||||
#if defined(USART_RX_vect)
|
||||
ISR(USART_RX_vect)
|
||||
#elif defined(USART2_RX_vect)
|
||||
ISR(USART2_RX_vect)
|
||||
#elif defined(USART_RXC_vect)
|
||||
ISR(USART_RXC_vect) // ATmega8
|
||||
#else
|
||||
#error "Don't know what the Data Received vector is called for the first UART"
|
||||
#endif
|
||||
{
|
||||
Serial2._rx_complete_irq();
|
||||
}
|
||||
ISR(USART2_RX_vect)
|
||||
{
|
||||
Serial2._rx_complete_irq();
|
||||
}
|
||||
|
||||
#if defined(UART2_UDRE_vect)
|
||||
ISR(UART2_UDRE_vect)
|
||||
#elif defined(UART_UDRE_vect)
|
||||
ISR(UART_UDRE_vect)
|
||||
#elif defined(USART2_UDRE_vect)
|
||||
ISR(USART2_UDRE_vect)
|
||||
#elif defined(USART_UDRE_vect)
|
||||
ISR(USART_UDRE_vect)
|
||||
#else
|
||||
#error "Don't know what the Data Register Empty vector is called for the first UART"
|
||||
#endif
|
||||
{
|
||||
Serial2._tx_udr_empty_irq();
|
||||
}
|
||||
|
||||
#if defined(UBRRH) && defined(UBRRL)
|
||||
HardwareSerial Serial2(&UBRRH, &UBRRL, &UCSRA, &UCSRB, &UCSRC, &UDR);
|
||||
#else
|
||||
HardwareSerial Serial2(&UBRR2H, &UBRR2L, &UCSR2A, &UCSR2B, &UCSR2C, &UDR2);
|
||||
#endif
|
||||
HardwareSerial Serial2(&UBRR2H, &UBRR2L, &UCSR2A, &UCSR2B, &UCSR2C, &UDR2);
|
||||
|
||||
// Function that can be weakly referenced by serialEventRun to prevent
|
||||
// pulling in this file if it's not otherwise used.
|
||||
|
@ -36,39 +36,17 @@
|
||||
|
||||
#if defined(HAVE_HWSERIAL3)
|
||||
|
||||
#if defined(USART_RX_vect)
|
||||
ISR(USART_RX_vect)
|
||||
#elif defined(USART3_RX_vect)
|
||||
ISR(USART3_RX_vect)
|
||||
#elif defined(USART_RXC_vect)
|
||||
ISR(USART_RXC_vect) // ATmega8
|
||||
#else
|
||||
#error "Don't know what the Data Received vector is called for the first UART"
|
||||
#endif
|
||||
{
|
||||
Serial3._rx_complete_irq();
|
||||
}
|
||||
ISR(USART3_RX_vect)
|
||||
{
|
||||
Serial3._rx_complete_irq();
|
||||
}
|
||||
|
||||
#if defined(UART3_UDRE_vect)
|
||||
ISR(UART3_UDRE_vect)
|
||||
#elif defined(UART_UDRE_vect)
|
||||
ISR(UART_UDRE_vect)
|
||||
#elif defined(USART3_UDRE_vect)
|
||||
ISR(USART3_UDRE_vect)
|
||||
#elif defined(USART_UDRE_vect)
|
||||
ISR(USART_UDRE_vect)
|
||||
#else
|
||||
#error "Don't know what the Data Register Empty vector is called for the first UART"
|
||||
#endif
|
||||
{
|
||||
Serial3._tx_udr_empty_irq();
|
||||
}
|
||||
|
||||
#if defined(UBRRH) && defined(UBRRL)
|
||||
HardwareSerial Serial3(&UBRRH, &UBRRL, &UCSRA, &UCSRB, &UCSRC, &UDR);
|
||||
#else
|
||||
HardwareSerial Serial3(&UBRR3H, &UBRR3L, &UCSR3A, &UCSR3B, &UCSR3C, &UDR3);
|
||||
#endif
|
||||
HardwareSerial Serial3(&UBRR3H, &UBRR3L, &UCSR3A, &UCSR3B, &UCSR3C, &UDR3);
|
||||
|
||||
// Function that can be weakly referenced by serialEventRun to prevent
|
||||
// pulling in this file if it's not otherwise used.
|
||||
|
Loading…
Reference in New Issue
Block a user