找回密码
 立即注册
查看: 1983|回复: 10

STC8H单片机串口中断和定时器中断同时使用不工作

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:2
  • 最近打卡:2024-01-04 11:34:35

8

主题

21

回帖

110

积分

注册会员

积分
110
发表于 2023-11-10 09:22:23 | 显示全部楼层 |阅读模式
本帖最后由 lonnychen 于 2023-11-10 09:26 编辑

同时使用 串口2 和定时器0中断 ,结果pritnf 一直打印sw1_cnt  = 0;

void TM0_Isr() interrupt 1 //定时器0模式0  
{                                
            sw1_cnt = sw1_cnt + 1;
}        

void Timer0_Init(void)                //2毫秒@11.0592MHz
{
        AUXR |= 0x80;                        //定时器时钟1T模式
        TMOD &= 0xF0;                        //设置定时器模式
        TL0 = 0x9A;                                //设置定时初始值
        TH0 = 0xA9;                                //设置定时初始值
        TF0 = 0;                                //清除TF0标志
        TR0 = 1;                                //定时器0开始计时
}
long sw1_cnt = 0;

void main()
{
    P0M0 = 0x00;
    P0M1 = 0x00;
    P1M0 = 0x00;
    P1M1 = 0x00;
    P2M0 = 0x00;
    P2M1 = 0x00;
   P3M0 = 0x00;
    P3M1 = 0x00;
    P4M0 = 0x00;
    P4M1 = 0x00;
    P5M0 = 0x00;
    P5M1 = 0x00;
P3M0 &= ~0x18; P3M1 &= ~0x18;

P3PU &= ~0x18;   //P3.3 P3.4上拉
    Uart2Init();
  Timer0_Init();
    IE2 = 0x01;  //允许串口2中断
  ET0 = 1;                                    //使能定时器中断
  TR0=1 ;
    EA = 1;
    Uart2SendStr("Uart Test !\r\n");
while()
{
    printf("sw1_cnt = %d \r\n",sw1_cnt);
  }
}

回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:2
  • 最近打卡:2024-01-04 11:34:35

8

主题

21

回帖

110

积分

注册会员

积分
110
发表于 2023-11-10 14:24:17 | 显示全部楼层
没官方回复 自己顶
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:100
  • 最近打卡:2025-06-17 08:13:13

733

主题

1万

回帖

1万

积分

管理员

积分
16661
发表于 2023-11-10 14:55:05 | 显示全部楼层
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:42
  • 最近打卡:2025-06-10 13:38:37

3

主题

21

回帖

773

积分

高级会员

积分
773
发表于 2023-11-10 16:30:26 | 显示全部楼层
定时器0的中断时间太短了,改长一些
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:2
  • 最近打卡:2024-01-04 11:34:35

8

主题

21

回帖

110

积分

注册会员

积分
110
发表于 2023-11-10 17:11:57 | 显示全部楼层
21cn*** 发表于 2023-11-10 16:30
定时器0的中断时间太短了,改长一些

2ms还短吗 ,
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:100
  • 最近打卡:2025-06-17 08:13:13

733

主题

1万

回帖

1万

积分

管理员

积分
16661
发表于 2023-11-10 18:31:32 | 显示全部楼层
工欲善其事必先利其器
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:534
  • 最近打卡:2025-06-17 00:02:13

1

主题

120

回帖

1913

积分

金牌会员

积分
1913
发表于 2023-11-11 10:52:37 | 显示全部楼层
确实 有仿真调试器更好
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:432
  • 最近打卡:2025-06-17 07:39:49

46

主题

390

回帖

1732

积分

金牌会员

静坐常思己过,闲谈莫论人非

积分
1732
发表于 2023-11-24 17:36:09 | 显示全部楼层
你的P3PU &=~0x18,这是把P3.3和P3.4设置成了不上拉,其他的P3口都是上拉
处事要代人所想,读书需切己用功
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:4
  • 最近打卡:2025-06-17 09:21:03
已绑定手机

0

主题

1

回帖

60

积分

注册会员

积分
60
发表于 2024-11-22 17:44:11 | 显示全部楼层
解决了吗楼主,我使用串口和定时器中断后定时器进不去定时器中断

点评

挖的够深的,具体情况具体分析,代码的世界,任何小细节出错都会有预料之外的结果。  详情 回复 发表于 2024-11-22 21:25
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:460
  • 最近打卡:2025-06-17 15:17:55
已绑定手机

37

主题

2221

回帖

2662

积分

荣誉版主

积分
2662
发表于 2024-11-22 21:25:37 | 显示全部楼层
IFt*** 发表于 2024-11-22 17:44
解决了吗楼主,我使用串口和定时器中断后定时器进不去定时器中断

挖的够深的,具体情况具体分析,代码的世界,任何小细节出错都会有预料之外的结果。
睁开眼睛做场梦~~~
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-17 15:19 , Processed in 0.275543 second(s), 109 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表