I am using the FRDM-K64F for evaluation of the K64 for possible use in a commercial project. I am fairly new to KDS and the SDK 2.0 so please bare with me! I am able to get UART3 working via pins PTC16/PTC17 no problem with a simple mbed program, however when I try to do the same within Kinetis Design Studio using SDK 2.0 I can't get UART3 to work. I have UART3 connect to an RS485 transceiver, and when monitoring on a scope here is what I see when using mbed firmware:
And I receive the message as expected. However, here is what I see when I attempt to use UART3 with firmware created with KDS and SDK 2.0:
I am assuming I must just not be muxing or initializing something correctly but haven't been able to figure it out. In my firmware, I am beginning with the Hello World demo app from the SDK2.0, and only adding minimal code to attempt to get basic functionality from UART3.
I've attached my entire hello_world.c and pin_mux.c files.
This is urgent so any help would be much appreciated!
Thanks
Original Attachment has been moved to: hello_world.c.zip
Original Attachment has been moved to: pin_mux.c.zip
Hi, Michael,
I think your code is okay, especially, the pin assignment part.
Regarding your issue that the noise is large, I suppose that you connect two board together, especially, the two boards ground together via float wire, which leads to the noise.
If you dismantle all the float wires, test only the FRDM-K64F board, test the uart3 TX pin with scope, does the issue exist?
Hope it can help you
BR
Xiangjun Rong
Hi Xiangjun,
As another update, I have now also tried using the OpenSDA bootloader instead but am still having the same results...
I'm really scratching my head on this. You said my code and pin muxing looks okay. I most likely am just missing something simple, but have an important show coming up in just a couple days so any help as to why I can't seem to get UART3 working when debugging through KDS would be greatly appreciated.
Thanks!
Hi,
How about trying to connect different GND of the board with the probe GND of scope, what is the result?
BR
Xiangjun Rong
Hi Xiangjun,
I seem to have gotten UART3 working now by following the tips from this thread: https://community.nxp.com/thread/387282
To be honest I'm not exactly sure why this is working and my previous tests were not. The code and pin muxing is very similar, I just started with a different SDK example (selecting the one mentioned in that thread) and swapped UART3 in place of UART0. If I discover the specific problem from before I will share it here, but otherwise at least now I can push forward with some working code!
Thanks.
Hi Xiangjun,
Thank you for the reply, however I am not exactly sure what you mean by "try to connect different GND". As I mentioned, I don't change anything about my scope setup between trying UART3 with mbed code versus KDS code. When I run the mbed code I see the UART signals on the scope, but when I run the KDS code I don't see any UART signals showing up. So I'm pretty sure the issue isn't with how the scope is connected.
Are there any working KDS code examples I can see which use UART3 on the FRDM-K64F board? Just seeing one working example would probably help me a lot!
Thanks.
Hi Xiangjun,
Thank you for the response. Unfortunately, I seem to be having the same issue even when I strip the setup down to only the FRDM-K64F. Here is my procedure:
Is my procedure for connecting and flashing with a J-link programmer correct?
In my earlier test I had the RS485 transceiver, etc. connected and all seemed to work fine when flashed with mbed. So I don't believe the issue is directly related to those other boards. I suspect something may be wrong with my setup or procedure when attempting to use the J-Link programmer with the FRDM-K64F board.
Any suggestions?
Thanks!