[MINI51] 串口9位模式的问题

[复制链接]
2591|1
 楼主| jakey0225 发表于 2012-12-27 22:09 | 显示全部楼层 |阅读模式
CLK->CLKSEL1_BITS.UART_S=0;
               GCR->IPRST_CTL2_BITS.UART_RST = 1;
                    GCR->IPRST_CTL2_BITS.UART_RST = 0;

        CLK->APBCLK_BITS.UART_EN=1;        

                GCR->P1_MFP_BITS.MFP=0x00;  
GCR->P1_MFP_BITS.ALT|=0x0C;                    //UART                        
        UART0->LCR_BITS.NSB=0;                //1 STOP
        UART0->LCR_BITS.WLS=3;                //8 DATA

        UART0->BAUD_BITS.DIV_X_EN=0;
        UART0->BAUD_BITS.DIV_X_ONE=0;
        UART0->BAUD_BITS.BRD=1;

        UART0->FUN_SEL_BITS.FUN_SEL=3;                //使能485模式
        UART0->FCR_BITS.RX_DIS=1;                        //1为禁止接收
        UART0->ALT_CSR_BITS.RS485_NMM=1;         //使能正常操作模式

        UART0->ALT_CSR_BITS.RS485_ADD_EN=0;                  //0禁止地址检测这里是0还是1都试过,都是同样的结果,我只是想用9位接收模式,没有地址数据之分都要接收,不知该是0还是1
        UART0->ISR_BITS.RDA_IF=1;
        UART0->FCR_BITS.RFITL=0;
        UART0->IER_BITS.RDA_IEN=1;
        DrvGPIO_Open(E_PORT1, 4, E_IO_OUTPUT);        //UART RX ENABLE
        DrvGPIO_ClrBit(E_PORT1, 4);
        NVIC->ISER[0]|=0x1000;

上面调试无法进入接收中断,有时候一直进中断还提示接收溢出

串口外接一个3v485驱动

这样配置有没有问题
缥缈九哥 发表于 2012-12-28 00:55 | 显示全部楼层
寄存器太多,不懂了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:呵呵

25

主题

45

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部