关于定时器、外部中断的一些理解

定时器方面

写程序时,一般按照以下步骤。

  1. 设置TMOD

    高四位为定时器1,第四位为定时器0。C/T为1时是定时器,为0时是计数器。

  2. 装初值

    THx=(65536-xxxx)/256
    TLx=(65536-xxxx)%256

  3. 开中断允许

    EA=1;
    ETx=1;

  4. 启动中断

    TRx=1;

中断函数为

1 void Tx_time() interrupt 1/3
2 {
3     THx=xxxx;
4     TLx=xxxx;
5     ···;
6 }

外部中断方面

写程序时,一般按照以下步骤。

  1. 开中断允许

    EA=1;
    EXx=1;

  2. 设置中断触发方式

    ITx=x;
    其为0时,是电平触发方式,低电平触发;其为1时,是边沿触发方式,负跳变(1->0)有效。

中断函数为

1 int1_srv() interrupt 2/4
2 {
3     ···;
4 }

posted @ 2018-01-14 18:31  祁俊辉  阅读(1093)  评论(0编辑  收藏  举报