打印
[技术问答]

新塘遇到问题了 串口内部时钟

[复制链接]
1875|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啊、。、时钟我放到前面也是不行。。

使用特权

评论回复
5
niuyaliang| | 2014-3-7 16:38 | 只看该作者
369000753 发表于 2014-3-7 14:25
我初始化的就是串口1啊、。、时钟我放到前面也是不行。。

你要用printf,需要初始化串口0的

使用特权

评论回复
6
369000753|  楼主 | 2014-3-7 16:59 | 只看该作者
niuyaliang 发表于 2014-3-7 16:38
你要用printf,需要初始化串口0的

初始化0也不可以的

使用特权

评论回复
7
niuyaliang| | 2014-3-7 17:38 | 只看该作者
晚上给你测试下,你用示波器抓引脚的的波形,看看是不是有数据出去了

使用特权

评论回复
8
369000753|  楼主 | 2014-3-7 17:49 | 只看该作者
niuyaliang 发表于 2014-3-7 17:38
晚上给你测试下,你用示波器抓引脚的的波形,看看是不是有数据出去了

可以加你QQ吗?求助啊

使用特权

评论回复
9
niuyaliang| | 2014-3-8 08:43 | 只看该作者
1.内部晶振打开后等待稳定
2.先使能时钟,再配置UART
3.不要用printf,自己测试去吧

使用特权

评论回复
10
zxf0168| | 2014-3-8 18:13 | 只看该作者
你先把时序搞定了,不按套路出牌可不行

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

16

帖子

0

粉丝