Changing UART1 Baud Rate in Q24PL

#1

Hello

I must change UART1 settings on Q24PL, and I’m using this code:

void fnBCN13A_UART1Enable(void)
{
     adl_atSendResponse ( ADL_AT_UNS, "\n\r CLOSING UART1 \n\r");
     adl_atCmdCreate("AT+WMFM=0,0,1",FALSE,fnBCN13A_UART1Handler,"*",NULL);	
}
//--------------------------------------------------------------------------
//UART1 Handler
bool fnBCN13A_UART1Handler(adl_atResponse_t *_paras)
{
     if(!strcmp(_paras->StrData, "\x0D\x0AOK\x0D\x0A"))
     {
          //adl_atSendResponse ( ADL_AT_UNS, "\n\r UART 1 OK\n\r");
          if(!bU1CLOSE)
          {
	adl_atCmdCreate("AT+IPR=115200\r", ADL_AT_PORT_TYPE(ADL_PORT_UART1, TRUE), fnBCN13A_UART1HandlerIPR, "*", NULL ); 		
	bU1CLOSE = 1;
          }
          else
          {
                adl_atSendResponse ( ADL_AT_UNS, "\n\r UART 1 OPENED AGAIN\n\r");			
          }
    }	
}

After I close it, i tried to open it again, but it doesn´t work, i used this code to open it again:

adl_atCmdCreate("AT+WMFM=0,1,1",FALSE,fnBCN13A_UART1Handler,"*",NULL);

Can anyone help ?

Best Regards
Leohen

0 Likes

#2

The only thing needed to change speed on UART1 is to make sure that it is OPEN and in AT mode in case you’re using FCM, and that you send the AT+IPR… on UART1.
Not sure how the module handles an IPR change on a closed UART, but I wouldn’t expect it to work.

0 Likes