打印

LPC1768 UART3初始化代码

[复制链接]
3949|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
roalychen|  楼主 | 2013-3-11 10:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
写了下面的代码初始化UART3,但是死机了,请高手看看是哪里的问题,谢谢!

   LPC_PINCON->PINSEL0 &= ~0x0000000A;
   LPC_PINCON->PINSEL0 |= 0x0000000A;  /* RxD3 is P0.0 and TxD3 is P0.1    Pin46/47 */
   /* By default, the PCLKSELx value is zero, thus, the PCLK for
   all the peripherals is 1/4 of the SystemFrequency. */
   /* Bit 6~7 is for UART3 */
  
   pclkdiv = (LPC_SC->PCLKSEL1 >> 18) & 0x03;
   switch ( pclkdiv )
   {
  case 0x00:
  default:
    pclk = SystemFrequency/4;
    break;
  case 0x01:
    pclk = SystemFrequency;
    break;
  case 0x02:
    pclk = SystemFrequency/2;
    break;
  case 0x03:
    pclk = SystemFrequency/8;
    break;
   }
   
   LPC_UART3->LCR = 0x83;   /* 8 bits, no Parity, 1 Stop bit */ // 运行这条代码就死机了

   Fdiv = ( pclk / 16 ) / baudrate ;   /*baud rate */
   LPC_UART3->DLM = Fdiv / 256;         
   LPC_UART3->DLL = Fdiv % 256;
   LPC_UART3->LCR = 0x03;   /* DLAB = 0 */
   LPC_UART3->FCR = 0x07;   /* Enable and reset TX and RX FIFO. */
   
   NVIC_EnableIRQ(UART3_IRQn);
   
   LPC_UART3->IER = IER_RBR | IER_THRE | IER_RLS;  /* Enable UART3 interrupt */

相关帖子

沙发
阿南| | 2013-3-11 15:09 | 只看该作者
确认一下 LPC_UART3->LCR 的定义,是否为有效,也可改成其它值试试。

使用特权

评论回复
板凳
roalychen|  楼主 | 2013-3-12 13:22 | 只看该作者
谢谢LS,已经解决了,是电源没开

使用特权

评论回复
地板
refee| | 2013-3-12 13:48 | 只看该作者
roalychen 发表于 2013-3-12 13:22
谢谢LS,已经解决了,是电源没开

原来如此~ ;P;P

使用特权

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

本版积分规则

102

主题

227

帖子

0

粉丝