微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 新手求指导 单片机串口485通讯可发送,但无法接收数据

新手求指导 单片机串口485通讯可发送,但无法接收数据

时间:10-02 整理:3721RD 点击:
程序如下   急求
#include"../include/stc12c5a60s2.h"
#include <intrins.h>
void uartconfugation(void) //串口设置
{
  SCON=0x50;  //选用模式3,9位可变波特率,允许串行接收,D0
  AUXR=0x15;  //使用独立波特率发生器
  BRT=217;  //独立波特率发生器溢出值
  RI=0;
  SM2 = 0;
  REN = 1;
  EA=1; //开总中断
  ES=1; //串口开中断
}
void send_byte(unsigned char d)
{
ES = 0;
    TI     =   0;  //清零串口发送完成中断请求标志
ACC=d;
TB8=P;
    SBUF   =   d;
    while(TI ==0); //等待发送完成
    TI  =   0;  //清零串口发送完成中断请求标志
ES = 1;
}
void main ()
{
unsigned char tmp;
unsigned char i;
dev = 0x04;
uartconfugation();
while (1)
{
      
         
   if(flag == 1)
   {
    read_back(&add_40001[0]);
    flag = 0;
   }
}
}
void usart_isr () interrupt  4  using 1
{
  a = SBUF;
  flag = 1;
  RI = 0;
}

急求                           

485协议只工作在半双工模式。你收发的时候要选择是接受还是发送  给信号到使能引脚

就是那个问题 已经解决了  谢谢!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top