串口问题

[复制链接]
1574|2
手机看帖
扫描二维码
随时随地手机跟帖
hainanboy|  楼主 | 2007-4-21 15:20 | 显示全部楼层 |阅读模式
我的串口发送是没有问题的,但是我要发送字符串的话就出现问题了

UARTSend("starting Tesing.....\n");

void UARTSend(unsigned char *pStr)
{
    while(*pStr != '\0')    // 最主要是这里
    {
        while(!TXSTAbits.TRMT);                        // Check if TXR shift register if empty 
        //while(!PIR1bits.TXIF);
        TXREG = *pStr;
        pStr++;
    }
}

假如我定义一个数组buf[] = "Starting Tesing....."
UARTSend(buf); 这样就没有问题,想问一下各位发送字符串的时候应该如何写才比较方便? 多谢!
zgl7903| | 2007-4-21 21:43 | 显示全部楼层

试一试void UARTSend(const char *pStr)看看

使用特权

评论回复
hainanboy|  楼主 | 2007-4-22 21:31 | 显示全部楼层

re

已经解决,如下:

void UARTSend(const rom char *pStr)
{
    do
    {                
        while(!TXSTAbits.TRMT);    
        TXREG = *pStr;
    } while( *pStr++ );
}

使用特权

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

本版积分规则

19

主题

42

帖子

0

粉丝