STC最新的STC8串口1接收中断无反应,是不是芯片的BUG ???

2020-03-08 19:21发布

本帖最后由 逍遥派掌门 于 2018-1-16 17:50 编辑

      看到STC8的片子资源不错,到淘宝搞了两片以及转接板(转成DIP40的),然后接到STC89的开发板上,
硬件电路没有问题,ISP下载程序非常顺利。用的是STC自家的ISP软件,还带串口助手的。
      简单的写了个串口1的中断程序,没有想到接收那里居然没有反应,同样的代码在STC89里可是跑成功的,
折腾了好久,就是失败,到STC那里提出这个问题,结果好几天都没有答复。
       怀疑是STC8的片子的BUG,请网友讨论。
程序:
  1. void UartInit(void)                //115200bps@11.0592MHz  
  2. {        
  3.           P3M0 = 0xFF;     // 设置强挽推
  4.           P3M1 = 0x00;
  5.         
  6.     SCON = 0x50;
  7.     T2L = BRT;
  8.     T2H = BRT >> 8;
  9.     AUXR = 0x15;
  10.         
  11.     ES = 1;                                    
  12.     EA = 1;
  13. }

  14. void serial() interrupt 4
  15. {  
  16.    if (RI)       //  这里一直进不去,P10没有动静
  17.    {
  18.            RI=0;                 
  19.            P10 = ! P10;
  20.          }

  21.      if (TI) // 这里成功的,没有问题
  22.       {
  23.              .......
  24.        }
  25. }
复制代码
主程序就是: UartInit ; while(1){}; 不写出来了,
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
16条回答
hp34401a
1楼-- · 2020-03-08 23:11
STC89与STC8的资源不同,虽然引脚可以用转接板,但程序需用STC8的,STC-ISP 软件就有STC8系列串口例程,实测可以使用。 :)
逍遥派掌门
2楼-- · 2020-03-09 01:06
本帖最后由 逍遥派掌门 于 2018-1-16 22:02 编辑
hp34401a 发表于 2018-1-16 20:00
STC89与STC8的资源不同,虽然引脚可以用转接板,但程序需用STC8的,STC-ISP 软件就有STC8系列串口例程,实 ...

用哪个型号测试的?

我用STC8A8K64S4A12测试,代码也是ISP软件STC8型号那里复制下来的,结果是中断发送可以,中断接收无法执行到。
特意按照datasheet 和ISP 的要求,设置I/O为挽推了(BTW: ISP软件里的范例没有设置),怎么折腾都无果。这么简单的代码,在任何一个型号的51片子都通用啊 。
咨询STC那里,一点反馈都没有,所以怀疑。
此问题不解决,不敢用这片子啊。
coody
3楼-- · 2020-03-09 04:05
STC8已经量产,4个串口都很正常,跟STC15W4K32S4的4个串口完全兼容。可以使用STC官网上的“STC15系列8051单片机实验箱4原理图及C程序”里的4串口同时中断收发的例程测试,串口接收到数据后原样返回。
STC8A8K系列我用了几个产品,串口正常的。
STCMCUNT018
4楼-- · 2020-03-09 06:14
 精彩回答 2  元偷偷看……
niyade
5楼-- · 2020-03-09 06:57
应该不是单片机的BUG
cjseng
6楼-- · 2020-03-09 09:18
逍遥派掌门 发表于 2018-1-16 22:00
用哪个型号测试的?

我用STC8A8K64S4A12测试,代码也是ISP软件STC8型号那里复制下来的,结果是中断发送可 ...

RX引脚用推挽?是不是有问题哦

一周热门 更多>