標(biāo)題: 用單片機(jī)外中斷INT0的中斷測(cè)量外部負(fù)脈沖寬度 [打印本頁(yè)]

作者: yangxing    時(shí)間: 2017-6-4 23:39
標(biāo)題: 用單片機(jī)外中斷INT0的中斷測(cè)量外部負(fù)脈沖寬度
下面是原理圖:


提供2個(gè)單片機(jī)的程序

單片機(jī)源程序:
1.產(chǎn)生負(fù)脈沖的程序設(shè)計(jì)
  1. #include <reg51.h>
  2. sbit u = P1^4;
  3. void main(void)
  4. {
  5. TMOD = 0x02;
  6. EA = 1;
  7. ET0 = 1;
  8. TH0 = 256 - 200;
  9. TL0 = 256 - 200;
  10. TR0 = 1;
  11. while(1)
  12. ;
  13. }
  14. void Time0(void) interrupt 1 using 0
  15. {
  16. u = ~ u;
  17. }
復(fù)制代碼


2.測(cè)量負(fù)脈沖寬度的程序設(shè)計(jì)

  1. #include <reg51.h>
  2. sbit u = P3^2;
  3. void main(void)
  4. {
  5. TMOD = 0x02;
  6. EA = 1;
  7. EX0 = 1;
  8. IT0 = 1;
  9. ET0 = 1;
  10. TH0 = 0;
  11. TL0 = 0;
  12. TR0 = 0;
  13. while(1)
  14.   ;
  15. }
  16. void int0(void) interrupt 0 using 0
  17. {
  18. TR0 = 1;
  19. TL0 = 0;
  20. while(u == 0)
  21.   ;
  22. P0 = TL0;
  23. TR0 = 0;
  24. }
復(fù)制代碼







歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1