NXP

KSDK2.0 + Pins Tool 体验

2019-07-12 12:26发布

kinetis 的配套工具越来越好用,越来越完善。今天试了下KSDK2.0和Pins Tool工具。 KSDK的下载过程不再赘述,Pins Tool可以在http://www.nxp.com/zh-Hans/products/software-and-tools/run-time-software/kinetis-software-and-tools/development-platforms-with-mbed/software-development-kit-for-kinetis-mcus:KINETIS-SDK?code=KINETIS-SDK&nodeId=0152109D3F1E8C1EF7&fpsp=1&tab=Design_Tools_Tab 下载,这是一个用来进行管脚分配的图形化配置工具。 这里以FRDM_KL26为例,oardsfrdmkl26zdriver_examplesuartpolling 这是一个UART polling传输的工程,打开工程可知,它使用的uart1,即PTE0和PTE1脚 void BOARD_InitPins(void) { /* Initialize UART1 pins below */ /* Ungate the port clock */ CLOCK_EnableClock(kCLOCK_PortE); /* Affects PORTE_PCR0 register */ PORT_SetPinMux(PORTE, 0U, kPORT_MuxAlt3); /* Affects PORTE_PCR2 register */ PORT_SetPinMux(PORTE, 1U, kPORT_MuxAlt3); } 如果要看到实现现象,还得将该两个脚引出,接到USB转UART上,才能在电脑上调试。
这里写图片描述
这里写图片描述 下面做一个简单的小实验,完成的功能是将UART1 换到UART0(PTA1,PTA2)上。
我们可以使用Pin Tools进行配置,在我的电脑安装完Pin Tools后,出现了如下不能打开的现象,
这里写图片描述 后来我将我电脑中的该文件弄到该路径下(这个路径需要自己手动建立以下),
这里写图片描述 就可以打开了。(如果你的电脑里了没有java环境jdk1.8,需要自己安装下) 打开之后,配置也是十分简单,
这里写图片描述 配置完选择File->Export 就可以保存生成pin_mux.h 和pin_mux.c 文件,将其对原来工程的文件做个替换就可以。 除了pinmux配置之外,还需要做的两处改动如下:
1). 重新定义DEMO_UART //#define DEMO_UART UART1 #define DEMO_UART (UART_Type *)UART0 2). UART_Init 函数的重新调用,需要UART_Init() 函数其实对应KL26的UART1和UART2,因为这里是UART0,选择fsl_lpsci.c里的函数进行调用,另外UART0的时钟来源也不同,UART1和UART2为bus clock,而UART0有好几个选择,因此在初始化前,需要配置始终来源 // UART_Init(DEMO_UART, &config, CLOCK_GetFreq(DEMO_UART_CLKSRC)); CLOCK_SetLpsci0Clock(1); // UART clock source select LPSCI_Init(DEMO_UART, &config, CLOCK_GetFreq(kCLOCK_CoreSysClk));// uart0 init uart_init() 和LPSCI_Init() 函数这两个有一个重要的区别,在初始化函数里,实参有个地方不同 /* Enable uart clock */ CLOCK_EnableClock(s_uartClock[UART_GetInstance(base)]); /* Enable LPSCI clock */ CLOCK_EnableClock(s_lpsciClock[LPSCI_GetInstance(base)]); 这样就可以用板载的虚拟串口显示了。