[技术问答] 新塘遇到问题了 串口内部时钟

[复制链接]
2288|9
 楼主| 369000753 发表于 2014-3-7 12:53 | 显示全部楼层 |阅读模式
int32_t main (void)
{
//        extern uint32_t SystemFrequency;
STR_UART_T sParam;
UNLOCKREG();
        /* Ñ¡ÔñÄÚ²¿22MʼÖÕ*/
        DrvSYS_SetOscCtrl(E_SYS_OSC22M, 1);
//  DrvSYS_GetPLLContent();
   /* Enable PLL */
  DrvSYS_SetPLLMode(0);
        /* Switch to PLL clock */
        DrvSYS_SelectHCLKSource(7);
       
        LOCKREG();

        /* Set UART0 Pin */
          DrvGPIO_InitFunction(E_FUNC_UART1);       
        /* UART Setting */
    sParam.u32BaudRate                 = 9600;
    sParam.u8cDataBits                 = DRVUART_DATABITS_8;
    sParam.u8cStopBits                 = DRVUART_STOPBITS_1;
    sParam.u8cParity                 = DRVUART_PARITY_NONE;
    sParam.u8cRxTriggerLevel= DRVUART_FIFO_1BYTES;

        /* Select UART Clock Source From 12Mhz*/
       
  DrvSYS_SelectIPClockSource(E_SYS_UART_CLKSRC,3);

        /* Set UART0 Configuration */
         DrvUART_Open(UART_PORT1, &sParam);
// outp32(&SYSCLK->APBCLK, 0x08010000);

        while(1)
        {

   

  printf("nihao\r\n");
        //Delay(10000);
}
}


然后一直卡死在            while(UART1->FSR.TX_FULL == 1);  求助,,,
niuyaliang 发表于 2014-3-7 14:10 | 显示全部楼层
发现几个问题
1.UART时钟使能应该放在最前面吧
2.最关键的是,串口发送不是用printf这个函数的,即使使用,printf默认使用串口0的,你初始化的是串口一,能发出去才怪
 楼主| 369000753 发表于 2014-3-7 14:25 | 显示全部楼层
我初始化的就是串口1啊、。、时钟我放到前面也是不行。。
 楼主| 369000753 发表于 2014-3-7 14:25 | 显示全部楼层
niuyaliang 发表于 2014-3-7 14:10
发现几个问题
1.UART时钟使能应该放在最前面吧
2.最关键的是,串口发送不是用printf这个函数的,即使使用, ...

我初始化的就是串口1啊、。、时钟我放到前面也是不行。。
niuyaliang 发表于 2014-3-7 16:38 | 显示全部楼层
369000753 发表于 2014-3-7 14:25
我初始化的就是串口1啊、。、时钟我放到前面也是不行。。

你要用printf,需要初始化串口0的
 楼主| 369000753 发表于 2014-3-7 16:59 | 显示全部楼层
niuyaliang 发表于 2014-3-7 16:38
你要用printf,需要初始化串口0的

初始化0也不可以的
niuyaliang 发表于 2014-3-7 17:38 | 显示全部楼层
晚上给你测试下,你用示波器抓引脚的的波形,看看是不是有数据出去了
 楼主| 369000753 发表于 2014-3-7 17:49 | 显示全部楼层
niuyaliang 发表于 2014-3-7 17:38
晚上给你测试下,你用示波器抓引脚的的波形,看看是不是有数据出去了

可以加你QQ吗?求助啊
niuyaliang 发表于 2014-3-8 08:43 | 显示全部楼层
1.内部晶振打开后等待稳定
2.先使能时钟,再配置UART
3.不要用printf,自己测试去吧
zxf0168 发表于 2014-3-8 18:13 | 显示全部楼层
你先把时序搞定了,不按套路出牌可不行
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

16

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部