搜索
bottom↓
回复: 5

2440 入不了串口中断,不知到还有什么错漏(已贴程序),如果解决了,我整理个工程,当入门例程

[复制链接]

出0入0汤圆

发表于 2009-7-17 11:41:31 | 显示全部楼层 |阅读模式
///串口接收中断程序
static void __irq ReInt(void)
{
U8 datatemp;
U32 r;


EnterCritical(&r);
if(rINTPND==BIT_UART0)
{
ClearPending(BIT_UART0);

datatemp=RdURXH0();
Uart_Printf("\nThis is your typed char \n");       
Uart_SendByte(datatemp);
}
ExitCritical(&r);
}

///串口接收中断初始化
void Uart0_int_init(void)
{
ClearPending(BIT_UART0);
pISR_UART0 = (U32)ReInt;
EnableIrq(BIT_UART0);       

}
///串口初始化
void Uart_Init(int pclk,int baud)
{
    int i;
    if(pclk == 0)
    pclk    = PCLK;
    rUFCON0 = 0x0;   //UART channel 0 FIFO control register, FIFO disable
    rUFCON1 = 0x0;   //UART channel 1 FIFO control register, FIFO disable
    rUFCON2 = 0x0;   //UART channel 2 FIFO control register, FIFO disable
    rUMCON0 = 0x0;   //UART chaneel 0 MODEM control register, AFC disable
    rUMCON1 = 0x0;   //UART chaneel 1 MODEM control register, AFC disable
//UART0
    rULCON0 = 0x3;   //Line control register : Normal,No parity,1 stop,8 bits
     //    [10]       [9]     [8]        [7]        [6]      [5]         [4]           [3:2]        [1:0]
     // Clock Sel,  Tx Int,  Rx Int, Rx Time Out, Rx err, Loop-back, Send break,  Transmit Mode, Receive Mode
     //     0          1       0    ,     0          1        0           0     ,       01          01
     //   PCLK       Level    Pulse    Disable    Generate  Normal      Normal        Interrupt or Polling
    rUCON0  = 0x245;   // Control register
    rUBRDIV0=( (int)(pclk/16./baud+0.5) -1 );   //Baud rate divisior register 0


    for(i=0;i<100;i++);
}

不知道哪里出错了,就是进入不了中断

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

 楼主| 发表于 2009-7-17 13:11:43 | 显示全部楼层
顶~~

出0入0汤圆

 楼主| 发表于 2009-7-17 14:19:39 | 显示全部楼层
解决了,是漏了个子中断源没有设置

出0入0汤圆

发表于 2009-7-17 14:42:55 | 显示全部楼层
请楼主贴个工程好吗?

出0入0汤圆

发表于 2010-11-25 09:23:47 | 显示全部楼层
曾经遇到过,帮忙顶起!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-8-25 19:25

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表