搜索
bottom↓
回复: 0

RS485通信问题,请高人指点,谢谢!!!程序和错误描述如下:

[复制链接]

出0入0汤圆

发表于 2010-11-30 13:59:54 | 显示全部楼层 |阅读模式
程序如下:
#include <msp430x14x.h>
#define   RS485   BIT0
void int_clk()
{
    unsigned char i;
    BCSCTL1&=~XT2OFF;  //打开XT振荡器
    BCSCTL2|=SELM1+SELS;//MCLK 8M and SMCLK 1M  
    do
        {
        IFG1 &= ~OFIFG;                 //清除振荡错误标志
        for(i = 0; i < 100; i++)
          _NOP();                        //延时等待
        }
    while ((IFG1 & OFIFG) != 0);        //如果标志为1继续循环等待
    IFG1&=~OFIFG;
}


int_usart()
{
  U1CTL|=SWRST;
  U1CTL|=CHAR+MM;     //8位数据 主机模式
  U1TCTL|=SSEL1;     //select SMCLK AS CLK
  U1RCTL|=URXWIE;
  U1BR0=0xa0;
  U1BR1=0x01;
  UMCTL1=0xc0;      //波特率 19200
  ME2|=UTXE1+URXE1;//使能接受和发送
  U1CTL&=~SWRST;
  IE2|=URXIE1;//使能接受中断
  P3SEL|=BIT6+BIT7;
  P3DIR|=BIT6;  //设置I/O功能和方向
}

void sent_byte(unsigned char data)//发送一个字节数据
{
     P2OUT|=RS485;
     _NOP();
     U1TXBUF=data;
     while((IFG2&UTXIFG1)==0);
     P2OUT&=~RS485;
  
}

#pragma vector=UART1RX_VECTOR
__interrupt  void UART0_RX_ISR(void)
{   
  
     unsigned char data;
     data=U1RXBUF;  
     U1RCTL&=~URXWIE;
     sent_byte(data);
     sent_byte(0x30);
     sent_byte(0x30);
     P2OUT&=~RS485;  
     U1RCTL|=URXWIE;  
}

int main( void )
{
  WDTCTL=WDTPW+WDTHOLD;
  int_clk();
  int_usart();
  P2DIR|=RS485;
  P2OUT&=~RS485;
   _EINT();
   while(1);
}
我是使用了一个232转485的转接器,与电脑链接,我要求PC机向单片机发送一个字符,按16进制写入,单片机返回发送的字符,并且同时返回两个03,但是,我用串口精灵调试出现了。返回一个正确值,一个03,另个一是00。如果,我只要求返回PC机写入的值,返回确实错误的,不会出现正确数据,一般为FF。请高人指点,谢谢!!!我的QQ:348815496

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

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-20 18:00

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

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