打印

这种情况有没有可能串口芯片坏了

[复制链接]
2016|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
xinyancode|  楼主 | 2011-1-28 14:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这种情况有没有可能串口芯片坏了

PIC单片机异步串口通信只能发不能收
我用的是PIC16F877A,用的是开发板,串口的程序只能发送,不能接收,接收中断可以进去,但是数据不对,我是照着视频教程上的成功的例子做的,程序贴在下面,请参考,是不是我的开发板这块MAX232有问题啊,怎么调也调不出,我怀疑是MAX232及周边电路有问题,或是芯片坏了?

请指点一下呀,谢谢!

// based on PIC16F877A
#include<pic.h>
#define uchar unsigned char
#define uint  unsigned int
void init();
/////////////////////////////////////////////////////
void main()
{
init();

TXREG = 0x31;   //Transmit register
while(!TRMT);

while(1)
{
}
}


////////////////////////////////////////////////////
void init()
{
TRISC=0xff;

TXSTA = 0x24;   //Transmit status register
                 //BRGH =1 : High baud rate bit selected
                 //SYNC =0 : Asynchronous mode

RCSTA=0x90;   //SPEN = 1 : serial port is enable
               //CREN = 1 : continuous receive is enable

SPBRG = 25;   //ste up baud rate to 9600 bps
GIE=1;
PEIE=1;
RCIE=1;       //enable Receive SCI interrupt

}

////////////////////////////////////////////
void interrupt com()
{
unsigned char uchTemp;

if(  RCIF )
//if ( RCIF )
{
  TXREG = RCREG;
  while(!TRMT);
}
}

相关帖子

沙发
NE5532| | 2011-1-28 20:05 | 只看该作者
怀疑就对串口做自环线测哈。

使用特权

评论回复
板凳
chunyang| | 2011-1-28 20:07 | 只看该作者
用固定电平测试更方便,用万用表测一下输出电平就知道了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

85

主题

147

帖子

0

粉丝