FSL_TICS_Robin 发表于 2014-6-25 15:38 
建议你把uart模块时钟来源、经过哪些倍频、分频都提示一下。
以便大家查看哪里导致的问题。
您好,感谢您的回答。
现在已经可以,但有些奇怪?
原先这么配置,在在MK60DN上是可以用的 :
SIM->SCGC1 |= SIM_SCGC1_UART4_MASK; // 1、UART时钟使能 UART4 时钟对应寄存器 SIM_SCGC1 BIT11
SIM->SCGC5 |= SIM_SCGC5_PORTC_MASK; // 2、端口时钟使能 uart4所在PTC端口时钟使能对应寄存器SIM_SCGC5 BIT12
PORTC->PCR[14] |= PORT_PCR_MUX(0x3); //3、定义引脚功能 在PTC14为UART5_RXD功能 PORTC*= 0x4004B000u
PORTC->PCR[15] |= PORT_PCR_MUX(0x3); //3、定义引脚功能 在PTC15为UART5_RXD功能
UART4->C2 &= ~(UART_C2_RE_MASK | UART_C2_TE_MASK); //配置串口基本参数之前,先禁止发送和接收 UART0*= 0x4006A000u
UART4->C1 = 0; //8位无校验模式(默认模式)
更改为便可以:
SIM->SCGC1 |= SIM_SCGC1_UART4_MASK; //使能uart0时钟模块
SIM->SCGC5 |= SIM_SCGC5_PORTC_MASK; //与uart0相关的引脚的时钟使能(PTD6,PTD7)
PORTC->PCR[14] |= PORT_PCR_MUX(0x3); //在PTD6上使能UART0_RXD功能
PORTC->PCR[15] |= PORT_PCR_MUX(0x3); //在PTD7上使能UART0_TXD功能
UART4->C2 &= ~(UART_C2_RE_MASK | UART_C2_TE_MASK); //配置串口基本参数之前,先禁止发送和接收
UART4->C1 &= ~(UART_C1_M_MASK); //配置UART为8位数据传输模式
UART4->C1 &= ~(UART_C1_PE_MASK); //配置UART无奇偶校验
UART4->S2 &= ~UART_S2_MSBF_MASK; //配置UART传输数据低位在前(LSB First)
两者有什么区别吗?
时钟采用外接有源晶振50MHZ 进过PRDIV0=4 5分频 VDIV0=4 20倍频
SIM->CLKDIV1 = (uint32_t)0x01130000UL;
UART 4时钟来自总线
|