一笔长空 发表于 2024-7-28 14:56:00

STC8G1K08-SOP8串口1问题 | 有T0/T1, 无 T2

在8g1k08-DIP20上实验好的串口1通信(P30.P31口),源代码一点没改烧录给8g1k08-SOP8上就不能通讯了,芯片信号一样仅仅封装不一样就出现这个问题了,请各位老师帮忙看下,感谢



void main()
{      
      P3M0 = 0x00; P3M1 = 0x00;
      EA=1;
      ES=1;//开启串口中断
/////////////串口初始化///////////////
      SCON = 0x50;                //8位数据,可变波特率
      AUXR |= 0x01;                //串口1选择定时器2为波特率发生器
      AUXR |= 0x04;                //定时器时钟1T模式
      T2L = 0xC7;                        //设置定时初始值
      T2H = 0xFE;                        //设置定时初始值
      AUXR |= 0x10;                //定时器2开始计时

      while(1)
      {                                 
                        Delay1000ms();
                        SBUF=0X55;
      }
}


void Uart1_Isr(void) interrupt 4//串口中断,内部操作清除中断标志位
{
      if (TI)                              
      {
                TI = 0;                        
      }
      if (RI)                              
      {
                RI = 0;                        
      }
}

一笔长空 发表于 2024-7-28 15:06:51

好像找到原因了,8pin的封装没有定时器2,我裂开了,一会去验证下应该是这个原因{:5_346:}{:5_345:}

一笔长空 发表于 2024-7-28 15:10:01

本帖最后由 一笔长空 于 2024-7-28 15:14 编辑

请管理员删帖,应该没人和我一样犯这种低级错误。一点点删除代码研究了快3小时没研究出原因,发帖后5分钟就找到问题了{:5_358:}

DebugLab 发表于 2024-7-28 20:05:41

还有就是STC8G1K08-DIP16、STC8G1K08-DIP20,有PCA有ADC,STC8G1K08-SOP8没有,STC8G1K08A-SOP8才有

soma 发表于 2024-7-28 20:36:54

看数据书册也是学习单片机的一部分啊。

DebugLab 发表于 2024-7-28 21:30:50

soma 发表于 2024-7-28 20:36
看数据书册也是学习单片机的一部分啊。

我学单片机就是靠看数据手册,除了比较难的USB看过视频教程和例程还查过资料看过书

看数据手册自己写代码,把单片机内各个外设的结构和SFR都弄明白了就再也不会忘,出了问题也知道是哪里的问题
页: [1]
查看完整版本: STC8G1K08-SOP8串口1问题 | 有T0/T1, 无 T2