Actually, it is quite easy to setup different parameters on UART1 and UART2 from the embedded application, if you know how…
From AT Commands Interface Guide in the V24-V25 commands section:
This sentence completely misled me and another person I was reading this with. How do you select a UART? I knew how to activate with AT+WMFM, so I thought that should be it. I tried to deactivate UART1 then activated UART2 and assumed the AT+IPR, etc. commands would now be used to setup the UART2 parameters. Wrong!
Actually, how to accomplish this setup is described in the Open AT ADL User Guide - in adl_atCmdCreate section. A place I didn’t expect it…
Did I understand this right, that you have deactivated it and now would like to activate again?
If you have activated UART2 in AT-mode, you could just enter the activate command there.
If you deactivated by the internal application, you might be able to re-activate only from the internal application, but you can’t connect to load a modified application because the port is deactived, right?
I don’t know if you may be able to use the Target Monitor Tool to connect anyway. If that fails and you can’t run the application in Debug mode you might need to flash the wavecom core software by using the bootpin…
After flashing the defaults will be restored and UART1 is activated.
this procedure is quite involved, if you haven’t done that yet you probably should speak to tech support of your distributor.
Do you have a Starter-Kit? That would simplify the procedure, because there is a switch to enable boot mode…
In any case you would need the program DWLWin and core firmware files that can be used with DWLWin. (I think those are not included in the OpenAT distribution CD’s)
you have passed a handler for the data, here it is fcmDataH. When this function is called you know it came from UART2. Your subscription for UART1 could have a different data handler so when the handler for UART1 is called you know that the data came from UART1.
As far as I know, UART2 doesn’t have much more than RX / TX… So, you should be OK just using these!
for type correctness, the handler should be defined as functions with one parameter, like bool Res_WMFM1_Handler( adl_atResponse_t *paras );
If you consider to move to data mode on the flow later, you probably should subscribe to the flow in the last handler of setting up the port parameters, e.g.
If I want to send data to the UART2, all I need to do is call the adl_fcmDataSend or adl_fcmDataSendExt and as a parameter use the handler I subscribed to UART2, right?
What´s is the difference between the adl_fcmDataSend and adl_fcmDataSendExt functions? The Wavecom documentation says it is the processing on the data block. But it wasn´t so clear to me… do you have any clear words to translate for us!?
Then I started the program on the module (the UART1 was connected to the Computer´s serial and the Hyper Terminal was renning).
Everything seemed fine.
Then I shut off Hyper Terminal listening function.
Switched the serial cable from UART1 to UART2… set up another connection on the Hyper Terminal (this time with 19200bps speed).