|
| 采购元器件好去处--维库电子市场网推荐 |
| 技术交流 | 电路欣赏 | 工控天地 | 数字广电 | 通信技术 | 电源技术 | 测控之家 | EMC技术 | ARM技术 | EDA技术 | PCB技术 | 嵌入式系统 驱动编程 | 集成电路 | 器件替换 | 模拟技术 | 新手园地 | 单 片 机 | DSP技术 | MCU技术 | IC 设计 | IC 产业 | CAN-bus/DeviceNe |
RS485中继器的通讯问题(有原程序) |
| 作者:wyc771112 栏目:通信技术 |
| RS485中继器的通讯问题(有原程序) 敬请高手指点,使用双串口,程序如下: #include <msp430x14x.h> void Init(void); //声明UART初始化函数 CHAR Data[20],Buffer0[20],Buffer1[20]; unsigned CHAR i=0,j,count; /************************************************ 函 数 名: main() 功 能:主函数 说 明: 调 用: 全局变量: 入口参数:无 出口参数:无 返 回 值:无 ************************************************/ void main(void) { WDTCTL = WDTPW + WDTHOLD; //关闭看门狗 Init(); //UART初始化 _EINT(); //中断允许 while(1); //主循环 } /************************************************ 函 数 名: init() 功 能:初始化系统 说 明: 调 用: 全局变量: 入口参数:无 出口参数:无 返 回 值:无 ************************************************/ void Init(void) { UCTL1=UCTL0&=~SWRST; //SWRST复位,USART允许 UCTL1=UCTL0=0x10; //8位数据位,1位停止位,无校验 //URCTL1=URCTL0|=URXWIE; //只有地址字符使URXIFG置位 UBR01=UBR00=0x03; UBR11=UBR10=0x00; //使用32KHZ晶振时,波特率为9600bps UMCTL1=UMCTL0=0x4A; //位调整 UTCTL1=UTCTL0=0x10; //选定ACLK为时钟源 ME1=ME2|=0x30; //UART0、UART1发送及接收模块允许 P3SEL=0xF0; //P3.4、P3.5、P3.6、P3.7被UART发送模块占用 P3DIR=0x50; //P3.4、P3.6输出,P3.5、P3.7输入 P4DIR=0X0f; //P4.0、P4.1 输出 P4OUT&=~0x0f; //P4.0、P4.1 置0 IE2|=URXIE1; IE1|=URXIE0; //接收中断允许 } /************************************************ 函 数 名: UART0RX() 功 能:UART0中断 说 明: 调 用: 全局变量: 入口参数:无 出口参数:无 返 回 值:无 ************************************************/ interrupt[UART0RX_VECTOR] void UART0RX(void) { if(RXBUF0==1) //UART0等待接收 { Data[i]=RXBUF0; //接收数据,并存在Data数组中 if(Data[i++]==0) { for(j=0;j<i;j++) Buffer0[j]=Data[j]; //复制接收数据 } //P4OUT|=BIT1; while((UTCTL1&0x01)==0); for(i=0;i<j;i++) { TXBUF1=Buffer0[j]; while((UTCTL1&0x01)==0); } //P4OUT&=~BIT1; } } /************************************************ 函 数 名: UART1RX() 功 能:UART1中断 说 明: 调 用: 全局变量: 入口参数:无 出口参数:无 返 回 值:无 ************************************************/ interrupt[UART1RX_VECTOR] void UART1RX(void) { if(RXBUF1==1) //UART1等待接收 { Data[i]=RXBUF1; & |
|
|
| 免费注册为维库电子开发网会员,参与电子工程师社区讨论,点此进入 |
Copyright © 1998-2006 www.dzsc.com 浙ICP证030469号 |