微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > STC12C5A60S2的串口通信问题 很奇怪 求帮助

STC12C5A60S2的串口通信问题 很奇怪 求帮助

时间:10-02 整理:3721RD 点击:
我现在用STC12C5A60S2单片机的串口用RS232和一台自动售货机连接了起来。 但是初始通讯总是建立不起来。初始通讯是自动售货机发送0x05然后单片机回复0x06。然后通讯即建立起来。
在用笔记本电脑的USB转串口连接单片机调试过程完全没有问题。(笔记本电脑发送0x05然后很快就能收到0x06)但是我把串口一接到自动售货机上调试,单片机能收到自动售货机发来的0x05,并且发出0x06,但是自动售货机怎么也收不到0x06,而且MAX232芯片会发热。
说明一点,自动售货机的校验方式是偶校验。我觉得我程序也没有编写错误。
下面是我的部分相关程序
--------------------------以下是初始化串口2--------------------------------------       
       S2CON = 0xd0;             //工作方式3:9位数据位        
        AUXR |= 0x10;
       BRT =256 -(FOSC/32/12/BAUD_VM);  
        IE2 = 0x01;                                        //允许串口2中断
       EA = 1;                        //使能总中断
------------------------------------以下是存放偶校验位0(因为发送的数据是0x06)并发送出去---------------------------------
       S2CON&=0xf7;                       //偶校验写0
       S2BUF=0x06;
--------------------------------------------------------------------------------------------------------------------------------------
我的实验卡在这里很久了,真心希望好心人能帮帮我。万分感谢

笔记本电脑发送0x05然后很快就能收到0x06
说明单片机配置没有问题。对吧!
MAX232芯片会发热。也不是什么大事!数据量特别大!但是就怕你数据端口接错了。
可是呢,你说自动售货机发出的0x05可以被单片机收到!应该排除接错了吧,估计不能把两路穿插开接吧?
这东西估计要靠自己在现成观察现象。而且感觉,你离成功不远了!

和笔记本电脑通信MAX232会不会发热?如果发热MAX232就没问题,如果不发热,就是电压问题,注意自动售货机的通信电压

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

网站地图

Top