Merge pull request #241 from PavelSindler/slow_printer_fix
slow menus and glitches fixed: setup second serial only in farm mode
This commit is contained in:
commit
68f9dabdf2
|
|
@ -96,7 +96,7 @@ void serial_echopair_P(const char *s_P, float v);
|
||||||
void serial_echopair_P(const char *s_P, double v);
|
void serial_echopair_P(const char *s_P, double v);
|
||||||
void serial_echopair_P(const char *s_P, unsigned long v);
|
void serial_echopair_P(const char *s_P, unsigned long v);
|
||||||
|
|
||||||
extern int selectedSerialPort;
|
extern uint8_t selectedSerialPort;
|
||||||
|
|
||||||
//Things to write to serial from Program memory. Saves 400 to 2k of RAM.
|
//Things to write to serial from Program memory. Saves 400 to 2k of RAM.
|
||||||
FORCE_INLINE void serialprintPGM(const char *str)
|
FORCE_INLINE void serialprintPGM(const char *str)
|
||||||
|
|
|
||||||
|
|
@ -124,22 +124,24 @@ void MarlinSerial::begin(long baud)
|
||||||
sbi(M_UCSRxB, M_RXCIEx);
|
sbi(M_UCSRxB, M_RXCIEx);
|
||||||
|
|
||||||
#ifndef SNMM
|
#ifndef SNMM
|
||||||
// set up the second serial port
|
|
||||||
if (useU2X) {
|
|
||||||
UCSR2A = 1 << U2X2;
|
|
||||||
baud_setting = (F_CPU / 4 / baud - 1) / 2;
|
|
||||||
} else {
|
|
||||||
UCSR2A = 0;
|
|
||||||
baud_setting = (F_CPU / 8 / baud - 1) / 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
// assign the baud_setting, a.k.a. ubbr (USART Baud Rate Register)
|
if (selectedSerialPort == 1) { //set up also the second serial port
|
||||||
UBRR2H = baud_setting >> 8;
|
if (useU2X) {
|
||||||
UBRR2L = baud_setting;
|
UCSR2A = 1 << U2X2;
|
||||||
|
baud_setting = (F_CPU / 4 / baud - 1) / 2;
|
||||||
|
} else {
|
||||||
|
UCSR2A = 0;
|
||||||
|
baud_setting = (F_CPU / 8 / baud - 1) / 2;
|
||||||
|
}
|
||||||
|
|
||||||
sbi(UCSR2B, RXEN2);
|
// assign the baud_setting, a.k.a. ubbr (USART Baud Rate Register)
|
||||||
sbi(UCSR2B, TXEN2);
|
UBRR2H = baud_setting >> 8;
|
||||||
sbi(UCSR2B, RXCIE2);
|
UBRR2L = baud_setting;
|
||||||
|
|
||||||
|
sbi(UCSR2B, RXEN2);
|
||||||
|
sbi(UCSR2B, TXEN2);
|
||||||
|
sbi(UCSR2B, RXCIE2);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -73,7 +73,7 @@
|
||||||
// is the index of the location from which to read.
|
// is the index of the location from which to read.
|
||||||
#define RX_BUFFER_SIZE 128
|
#define RX_BUFFER_SIZE 128
|
||||||
|
|
||||||
extern int selectedSerialPort;
|
extern uint8_t selectedSerialPort;
|
||||||
|
|
||||||
struct ring_buffer
|
struct ring_buffer
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -290,7 +290,7 @@ unsigned int custom_message_type;
|
||||||
unsigned int custom_message_state;
|
unsigned int custom_message_state;
|
||||||
char snmm_filaments_used = 0;
|
char snmm_filaments_used = 0;
|
||||||
|
|
||||||
int selectedSerialPort;
|
uint8_t selectedSerialPort;
|
||||||
|
|
||||||
float distance_from_min[3];
|
float distance_from_min[3];
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue