LPC2388 ucos 串口中断进不去

wyKobe0824 2018-06-13 10:06:38
调试 lpc2388 的时候, 在裸机调试的时候,一切都ok,但是在加入ucsoii的时候,发现串口1 永远都没办法进入中断,跪求帮组!!!
部分代码如下:
int main (void)
{
PINSEL10 = 0;
FIO2DIR = 0x000000FF;
FIO2MASK = 0x00000000;

Uart0Init(115200);
Printf("init success\r\n");
OSInit ();
OSTaskCreate (Task0,(void *)0, &TaskStk[TaskStkLengh - 1], 2);
OSStart ();
return 0;
}


void Task0 (void *pdata)
{
pdata = pdata;
TargetInit ();

while (1)
{
Printf("11");
OSTimeDly(1);
}
}


void TargetInit(void)
{
OS_ENTER_CRITICAL();
srand((uint32) TargetInit);
VIC_Setup();
Timer0Init();
Uart1Init();
OS_EXIT_CRITICAL();
}


void VIC_Setup(void)
{
extern void IRQ_Handler(void);
extern void Timer0_Handler(void);
extern void UART1_Handler(void);


Install_IRQ(TIMER0_INT,(void *)Timer0_Handler,0);
Install_IRQ(14,(void *)IRQ_Handler,4);
Install_IRQ(UART1_INT,(void*)UART1_Handler,2);
}


void Uart1Init()
{
unsigned long Fdiv;
/* Default is Keil MCB2300 board */
PINSEL0 |= 0x40000000; /* Enable TxD1 pin */
PINSEL1 |= 0x00000001; /* Enable RxD1 pin */


U1LCR = 0x83; /* 8 bits, no Parity, 1 Stop bit */
Fdiv = ( Fpclk / 16 ) / 115200 ; /*baud rate */
U1DLM = Fdiv / 256;
U1DLL = Fdiv % 256;
U1LCR = 0x03; /* DLAB = 0 */
U1FCR = 0x07; /* Enable and reset TX and RX FIFO. */

U1IER = IER_RBR | IER_THRE | IER_RLS; /* Enable UART0 interrupt */

}


...全文
624 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhougx_1122 2018-07-12
  • 打赏
  • 举报
回复
要先初始化 TargetInit ();

27,370

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧