KSDK2.0 + Pins Tool 体验

来源:互联网 发布:网络维护员的技能 编辑:程序博客网 时间:2024/05/17 23:22

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为例,\boards\frdmkl26z\driver_examples\uart\polling 这是一个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)]);

这样就可以用板载的虚拟串口显示了。

0 0