标题: 如何用外部中断INT0测量负跳变信号累计数? [打印本页]

作者: zhangli0126    时间: 2021-6-3 20:29
标题: 如何用外部中断INT0测量负跳变信号累计数?
本帖最后由 zhangli0126 于 2021-6-3 20:51 编辑

使用中断INT0从P3.0引脚累计负跳变信号变化,结果送给P1
  1. #include<reg51.h>
  2. sbit u=P3^0;
  3. unsigned char Countor;
  4. void delay30ms()
  5. {
  6.         unsigned char m,n;
  7.         for(m=0;m<100;m++)
  8.         {
  9.                 for(n=0;n<100;n++)
  10.                 {
  11.                         ;
  12.                 }
  13.         }
  14. }
  15. void main()
  16. {
  17.         unsigned char i;
  18.         EA=1;
  19.         EX0=1;
  20.         IT0=1;
  21.         Countor=0;
  22.         for(i=0;i<100;i++)
  23.         {
  24.                 u=1;
  25.                 delay30ms();
  26.                 u=0;
  27.                 delay30ms();
  28.         }
  29.         while(1);
  30. }
  31. void int0(void) interrupt 0 using 0
  32. {
  33.         Countor++;
  34.         P1=Countor;
  35. }
复制代码


1.png (54.21 KB, 下载次数: 44)

1.png

作者: hhhhhhhq    时间: 2021-6-3 22:24
问度娘啊,或者看单片机书本
作者: shhds    时间: 2021-6-3 23:10
我记得,中断寄存器里面可以设置外部中断INT0的中断模式的
作者: 北巷南风丶    时间: 2021-6-4 00:27
一个简单的中断设置就可以吧,本人用的汇编写的,也比较简单
作者: npn    时间: 2021-6-4 07:23
可以串联一个74HC04
作者: cn_zhx    时间: 2021-6-4 17:00
设置好外部中断的触发方式就可以计数了。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1