打印

帮忙看一下ARM单片机UART的问题吧

[复制链接]
1556|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
over_chain|  楼主 | 2011-10-19 15:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<stdio.h>
#include<lpc23xx.h>   
#define baudrate 115200
#define Fpclk  60000000/4
void Init_uart()
{
unsigned long Fdiv;
    PINSEL0 &= ~((1<<5)|(1<<7));       /* RxD0 and TxD0 */
PINSEL0 |= (1<<6)|(1<<4);       /* RxD0 and TxD0 */  
U0LCR = 0x83;  /* 8 bits, no Parity, 1 Stop bit */
    Fdiv = ( Fpclk / 16 ) / baudrate ; /*baud rate */
    U0DLM = Fdiv / 256;      
    U0DLL = Fdiv % 256;
U0LCR = 0x03;  /* DLAB = 0 */
    U0FCR = 0x07;  /* Enable and reset TX and RX FIFO. */
}
      
void UARTSend_String( unsigned long portNum, unsigned char *BufferPtr)
{
while ( *BufferPtr!='\0')
    {
   U0THR = *BufferPtr;   
   while((U0LSR&0x40)==0);   
   BufferPtr++;  
}
}
int main()
{
Init_uart();
while(1)
{
  UARTSend_String(0,"hello");
}
}
便宜没有错误,就是收不到,帮忙看看是什么问题吧,谢谢!

相关帖子

沙发
john_light| | 2011-10-19 16:21 | 只看该作者
可能主时钟,外设时钟之类没配置好,NXP ARM要配置的东西还是有一些的。

建议拿开发环境的例子程序先跑跑。

使用特权

评论回复
板凳
over_chain|  楼主 | 2011-10-21 15:51 | 只看该作者
谢谢!可是主时钟就是那晶振吧,12MHz的。也不需要倍频啥的,还需要配置什么?本人比较菜。。。请多指点

使用特权

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

本版积分规则

2

主题

24

帖子

1

粉丝