Hi, While configuring my STM32F107's USART, there is a random byte outputted on the tx-pin. A modem that is connected to the serial port gets confused by this random byte and refuses to work. Here's the initialization code:
1 | AFIO->MAPR &= ~(AFIO_MAPR_USART2_REMAP); /* clear USART2 remap */ |
2 | RCC->APB2ENR |= RCC_APB2ENR_AFIOEN; /* enable clock for Alternate Function */ |
3 | AFIO->MAPR |= AFIO_MAPR_USART2_REMAP; /* set USART2 remap */ |
4 | RCC->APB2ENR |= RCC_APB2ENR_IOPDEN; /* enable clock for GPIOD */ |
5 | GPIOD->CRL &= ~(0xFFUL << 20); /* Clear PD5, PD6 */ |
6 | GPIOD->CRL |= (0x0BUL << 20); /* USART2 Tx (PD5) alternate output push-pull */ |
7 | GPIOD->CRL |= (0x04UL << 24); /* USART2 Rx (PD6) input floating */ |
The random byte appears with the configuration for pin PD5 as alternate output push-pull. Any hints or ideas on how to not get this rubbish-byte on initialization? Thanks! -- Regards