我现在用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;
--------------------------------------------------------------------------------------------------------------------------------------
我的实验卡在这里很久了,真心希望好心人能帮帮我。万分感谢