参考技术A首先写发送程序,必须要使发送接收模块被允许,所以必须ME1 |= UTXE0 + URXE0该语句必须要写。其次发送接收都是高频的,故要将晶振设为高频,然后再对各个寄存器最一下必要的设置。 USART控制寄存器的组成部分:PENA,PEV,SP,CHAR,Listen,SYNC,MM,SWRST 各位都有其操作功能,我列举几个我觉得比较重要的 首先看SYNC: 串口发送主要可分为异步的UART模式,和同步的SPI模式,即由SYNC来控制, SYNC:“0”UART模式 “1”SPI模式 CHAR:“0”选择字符以7位发送,不用接收缓存寄存器URXBUF或发送缓存寄器UTXBUF的最高位 “1”选择字符以8位发送 SWRST: 置位时,USART的各中断允许初始化,直至复位时USART才被允许。 发送控制寄存器UTCTL亦类似,对各个位做必要的设置就可以得到你想要的结果。UTCTL8位由高到低分别为:未用,CKPL,SSEL1,SSEL0,URXSE,TXWake,未用,TXEPT。还有接收控制寄存器URCTL0和URCTL1详情可以参照书本。 另有一个比较重要的就是波特率计算,用到UBR0及UBR1波特率寄存器以及调整控制寄存器UMCTL.具体计算为:UBR,UBR1和UBR0的16位数据 Mx ,调整器的各位数据 波特率=时钟周期/(UBR+(M7+M6+…+M0)/8) 贴上一个简单的程序: #include void main(void) volatile unsigned int i; WDTCTL = WDTPW + WDTHOLD; // 关闭开门狗 P3SEL |= 0x30; // P3.4,5 = USART0 TXD/RXD BCSCTL1 |= XTS; // ACLK= LFXT1,LFXT1高频工作 do IFG1 &= ~OFIFG; // Clear OSCFault flag for (i = 0xFF; i > 0; i--); // Time for flag to set while ((IFG1 & OFIFG)); // OSCFault flag still set? BCSCTL2 |= SELM_3; // MCLK = LFXT1 (safe) ME1 |= UTXE0 + URXE0; // Enable USART0 TXD/RXD UCTL0 |= CHAR; // 8-bit character UTCTL0 |= SSEL0; // UCLK= ACLK UBR00 = 0x45; // UBR10 = 0x00; // UMCTL0 = 0x00; // 波特率计算 UCTL0 &= ~SWRST; //初始USART IE1 |= URXIE0; // Enable USART0 RX interrupt _BIS_SR(LPM0_bits + GIE); // Enter LPM0 w/ interrupt #pragma vect
启动Tomcat的时候 报错 跪求答案啊 急 在线等
log4j:WARN No such property [conversionPattern] in org.apache.log4j.HTMLLayout. log4j:WARN No such property [maxBackupIndex] in org.apache.log4j.DailyRollingFileAppender. log4j:WARN No such property [maxFileSize] in org.apache.log4j.DailyRollingFileAppender. 2012-07-16 15:36:53,781 [ WARN] Environment.verifyProperties(503) Property [hibernate.cglib.use_reflection_optimizer] has been renamed to [hibernate.bytecode.use_reflection_optimizer]; update your properties appropriately