迪文科技论坛

 找回密码
 立即注册
搜索
查看: 50|回复: 1

【提问】定时器2中断服务程序不执行

[复制链接]

3

主题

11

回帖

74

积分

注册会员

Rank: 2

积分
74
发表于 3 天前 | 显示全部楼层 |阅读模式
//定时器2初始化,定时间隔为1ms
void sys_timer2_init()
{        



T2CON = 0x70;
        TH2 = 0x00;
        TL2 = 0x00;
        TRL2H = 0xBC;                        //1ms的定时器
        TRL2L = 0xCD;      
        ET2 = 1;                                //启动定时器2
        TR2 = 1;

}
//定时器2中断服务程序
void sys_timer2_isr()        interrupt 5
{
        EA = 0;
        TH0 = (u8)(T0_1ms>>8);                                
        TL0 = (u8)T0_1ms;
        
        //精准延时处理
        if(delay_tick)
                delay_tick--;
        //按钮点击轮询
        btn_click_tick();
        //检查modbus是否接受完成
        modbus_check_recv_timeout();
        EA = 1;
        

}


回复

使用道具 举报

0

主题

247

回帖

2019

积分

金牌会员

Rank: 6Rank: 6

积分
2019
发表于 3 天前 | 显示全部楼层
可以参考附件,中断里面不要运行函数吧,就只操作标志变量。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|迪文科技论坛 ( 京ICP备05033781号-1 )

GMT+8, 2025-5-11 18:55 , Processed in 0.034462 second(s), 24 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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