找回密码
 立即注册
楼主: 3800***

IE2 = ET3; //使能定时器中断???

[复制链接]

该用户从未签到

552

主题

9482

回帖

1万

积分

管理员

积分
14047
发表于 2023-11-27 21:44:31 | 显示全部楼层
380091044 发表于 2023-11-27 21:33
感谢提醒,这个是库里面也有的,手册里面也见到了

你可能是库的数据手册,STC8H芯片手册没这个
你把完整的贴上来,就是工程师的做法
回复 支持 反对 送花

使用道具 举报

  • TA的每日心情
    奋斗
    10 小时前
  • 签到天数: 168 天

    [LV.7]常住居民III

    116

    主题

    474

    回帖

    970

    积分

    高级会员

    积分
    970
     楼主| 发表于 2023-11-27 21:49:58 | 显示全部楼层
    神农鼎 发表于 2023-11-27 21:44
    你可能是库的数据手册,STC8H芯片手册没这个
    你把完整的贴上来,就是工程师的做法
    ...

    有的
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    552

    主题

    9482

    回帖

    1万

    积分

    管理员

    积分
    14047
    发表于 2023-11-28 09:29:58 | 显示全部楼层
    //看到你贴的图了:

    #include "reg51.h"

    #include "intrins.h"

    sfr     T4T3M   =   0xd1;
    sfr     T4L     =   0xd3;
    sfr     T4H     =   0xd2;
    sfr     T3L     =   0xd5;
    sfr     T3H     =   0xd4;
    sfr     T2L     =   0xd7;
    sfr     T2H     =   0xd6;
    sfr     AUXR    =   0x8e;
    sfr     IE2     =   0xaf;
    #define ET2         0x04
    #define ET3         0x20
    #define ET4         0x40
    sfr     AUXINTIF =  0xef;
    #define T2IF        0x01
    #define T3IF        0x02
    #define T4IF        0x04


    sfr     P1M1    =   0x91;
    sfr     P1M0    =   0x92;
    sfr     P0M1    =   0x93;
    sfr     P0M0    =   0x94;
    sfr     P2M1    =   0x95;
    sfr     P2M0    =   0x96;
    sfr     P3M1    =   0xb1;
    sfr     P3M0    =   0xb2;
    sfr     P4M1    =   0xb3;
    sfr     P4M0    =   0xb4;
    sfr     P5M1    =   0xc9;
    sfr     P5M0    =   0xca;


    sbit    P10     =   P1^0;


    void TM3_Isr() interrupt 19
    {
        P10 = !P10;                                 //测试端口
    }


    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;


        T3L = 0x66;                                 //65536-11.0592M/12/1000
        T3H = 0xfc;
        T4T3M = 0x08;                               //启动定时器
        IE2 = ET3;                                  //使能定时器中断
        EA = 1;


        while (1);
    }


    截图202311280931055970.jpg



    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    552

    主题

    9482

    回帖

    1万

    积分

    管理员

    积分
    14047
    发表于 2023-11-28 09:33:20 | 显示全部楼层
    #define ET2         0x04
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    10 小时前
  • 签到天数: 168 天

    [LV.7]常住居民III

    116

    主题

    474

    回帖

    970

    积分

    高级会员

    积分
    970
     楼主| 发表于 2023-11-28 10:15:06 | 显示全部楼层
    神农鼎 发表于 2023-11-28 09:33
    #define ET2         0x04

    是ET3值等于0x20,把IE2的位5置1,不是ET2
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    慵懒
    10 小时前
  • 签到天数: 142 天

    [LV.7]常住居民III

    20

    主题

    1086

    回帖

    2585

    积分

    金牌会员

    积分
    2585
    发表于 2023-12-11 18:01:20 | 显示全部楼层
    之前踩过这个 范例程序的坑,,太相信这个程序了,,后来在写用范例程序的时候,还是要过一边代码。这个范例程序作为测试还行,进入到生产的时候还是要多看看。

    点评

    没用心看 ? 范例程序是对的,你踩啥坑了  详情 回复 发表于 2023-12-11 20:22
    参考例程并不是对技术参 考手册的补充,而是对技术参 考手册的解释。
    技术参 考手册不应该需要参考例程作为补充,而是解释成了参考例程的样子
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    552

    主题

    9482

    回帖

    1万

    积分

    管理员

    积分
    14047
    发表于 2023-12-11 20:22:18 | 显示全部楼层
    cofmilk 发表于 2023-12-11 18:01
    之前踩过这个 范例程序的坑,,太相信这个程序了,,后来在写用范例程序的时候,还是要过一边代码。这个范 ...

    没用心看 ? 范例程序是对的,你踩啥坑了
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    慵懒
    10 小时前
  • 签到天数: 142 天

    [LV.7]常住居民III

    20

    主题

    1086

    回帖

    2585

    积分

    金牌会员

    积分
    2585
    发表于 2023-12-12 08:43:48 | 显示全部楼层
    神农鼎 发表于 2023-12-11 20:22
    没用心看 ? 范例程序是对的,你踩啥坑了

    单独用肯定是对的啊

    只不过如题。这样赋值在使用多个外设的时候不行。这个就是坑啊。



    所以范例程序也就是用在对各种资源的测试上,用到项目生产上还是要多注意。




    参考例程并不是对技术参 考手册的补充,而是对技术参 考手册的解释。
    技术参 考手册不应该需要参考例程作为补充,而是解释成了参考例程的样子
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    10 小时前
  • 签到天数: 168 天

    [LV.7]常住居民III

    116

    主题

    474

    回帖

    970

    积分

    高级会员

    积分
    970
     楼主| 发表于 2023-12-12 10:05:38 | 显示全部楼层
    cofmilk 发表于 2023-12-11 18:01
    之前踩过这个 范例程序的坑,,太相信这个程序了,,后来在写用范例程序的时候,还是要过一边代码。这个范 ...

    仔细看过,赋值形式没见过,
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    慵懒
    10 小时前
  • 签到天数: 142 天

    [LV.7]常住居民III

    20

    主题

    1086

    回帖

    2585

    积分

    金牌会员

    积分
    2585
    发表于 2023-12-12 10:26:47 | 显示全部楼层
    380091044 发表于 2023-12-12 10:05
    仔细看过,赋值形式没见过,

    啊?哦,,咱们说的不是一个事情。。他这里只是一个宏定义了一个数,然后赋值给了这个寄存器。

    但是我说的是,如果按照这样赋值 IE2=ET3;虽然可以保证允许T3中断,但同时这个寄存器上的其他位控制的中断则全不关闭。

    后来就使用这种方式赋值IE2 |= ET3;
    参考例程并不是对技术参 考手册的补充,而是对技术参 考手册的解释。
    技术参 考手册不应该需要参考例程作为补充,而是解释成了参考例程的样子
    回复 支持 1 反对 0 送花

    使用道具 举报

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

    本版积分规则

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

    GMT+8, 2024-5-17 18:56 , Processed in 0.072730 second(s), 67 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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