打印
[技术问答]

nano130串口疑问

[复制链接]
2119|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
feiante|  楼主 | 2014-6-10 09:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我是第一次使用新唐片子,高手不要吐糟哦。
我在使用简单的uart实验,主程序中配置串口,然后使能中断。
主程序如下:
int main (void)
{
    SystemInit();
                          
        GPIO_Open(GPIOE, GPIO_PMD_PMD6_OUTPUT, GPIO_PMD_PMD6_MASK);

        exti_Init();
        UART0_Init(115200);
        printf(" UART function test \n");
    while(1)
    {
               
        }
}

串口初始化如下:
void UART0_Init(uint32_t BaudRate)
{
        STR_UART_T sParam;
       
        SYS_SelectIPClockSource_1(CLK_CLKSEL1_UART_MASK, CLK_CLKSEL1_UART_HXT); /* 串口时钟为HCLK */
    MFP_UART0_TO_PORTB();        /* 设置PB0/PB1为UART接口 */

    sParam.u32BaudRate = BaudRate;
        sParam.u32cDataBits = DRVUART_DATABITS_8;
    sParam.u32cStopBits = DRVUART_STOPBITS_1;
        sParam.u32cParity = DRVUART_PARITY_NONE;
        sParam.u32cRxTriggerLevel = DRVUART_FIFO_1BYTES;
        sParam.u8EnableDiv16 = DISABLE;
    UART_Init(UART0,&sParam);       
        /* 使能相应的中断 */
        UART_EnableInt(UART0,( DRVUART_THREINT | DRVUART_RDAINT));       
}
现在的情况是:串口能够进入中断,也能输出东西,但是我理解的是UART_EnableInt(UART0,( DRVUART_THREINT | DRVUART_RDAINT));只是使能串口中断,应该不会影响到主程序中断printf函数,也就是说程序执行完串口初始化后应该执行printf函数(如果没有发生串口中断。)然后进入while中等待中断。可是实际下来printf没有执行,如果把UART_EnableInt 屏蔽了就可以执行。
是不是我的理解不对呢?



沙发
niuyaliang| | 2014-6-11 10:13 | 只看该作者
printf也是用的串口,配置的是串口0

使用特权

评论回复
板凳
springvirus| | 2014-6-11 10:19 | 只看该作者
在M058S的例程有retarget.c,楼主再结合Retargetting a C Library Function
就清楚了,道理一样的

使用特权

评论回复
地板
gxliu08| | 2014-6-13 00:04 | 只看该作者
热心人还是很多的

使用特权

评论回复
5
mintspring| | 2014-7-1 20:17 | 只看该作者
建议楼主如果初次接触,就先用官方的例程学习,要不然,你自己搞错了,还怪芯片有BUG,真是的,这种事情我见多了。

使用特权

评论回复
6
feiante|  楼主 | 2014-7-2 22:10 | 只看该作者
我可没有说芯片有bug哦,就是不懂才问的

使用特权

评论回复
7
haolaishi| | 2014-7-2 22:28 | 只看该作者
feiante 发表于 2014-7-2 22:10
我可没有说芯片有bug哦,就是不懂才问的

:lol楼主解决了木有,什么问题呢

使用特权

评论回复
8
haolaishi| | 2014-7-2 22:28 | 只看该作者
feiante 发表于 2014-7-2 22:10
我可没有说芯片有bug哦,就是不懂才问的

:lol楼主解决了木有,什么问题呢

使用特权

评论回复
9
haolaishi| | 2014-7-2 22:28 | 只看该作者
feiante 发表于 2014-7-2 22:10
我可没有说芯片有bug哦,就是不懂才问的

:lol楼主解决了木有,什么问题呢

使用特权

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

本版积分规则

30

主题

512

帖子

1

粉丝