Attached is the minimum code to show the spurious NULL character. Screen capture of terminal program is also attached.
I am using FRDM-KE15Z. The same problem can also be reproduced in FRDM-KE16Z, or an KL27 target.
To build the program, import KE15Z helloworld example. Remove all folders except CMSIS, device, startup. Also remove all files in Source folder. Copy attached file into Source folder. Then it should build.
FRDM is already connected with microUSB cable since you are building and downloading the project. To test the program, open a Terminal program. Set to 115200-8-1.
- Debug/run the project. Any character typed on Terminal will be echoed, except the marker char '%'.
- Disconnect and reconnect USB cable to cycle power of FRDM board.
- Reconnect COM port in Terminal program.
- Enter '%' character and you will get "X 0106". X represents the NULL received. Count of 0x0106 = 262 ~= 87 uSec @ 3MHz clock.
Note: P&E Micro Probe appears to have the same problem.