搜索

[技术问答] 关于N76E003 TIMER2输入捕获问题

[复制链接]
1282|8
 楼主 | 2018-9-17 16:42 | 显示全部楼层 |阅读模式
输入捕获每次捕捉到的数据都相差很大 换算出来的周期也跟实际不相符   不知道什么原因   有了解的看看,解答解答
111.png
222.png
333.png
| 2018-9-17 18:19 | 显示全部楼层
对象是稳定的周期信号吗

使用特权

评论回复
| 2018-9-17 23:31 | 显示全部楼层
  1. /*---------------------------------------------------------------------------------------------------------*/
  2. /*                                                                                                         */
  3. /* Copyright(c) 2017 Nuvoton Technology Corp. All rights reserved.                                         */
  4. /*                                                                                                         */
  5. /*---------------------------------------------------------------------------------------------------------*/

  6. //***********************************************************************************************************
  7. //  Nuvoton Technoledge Corp.
  8. //  Website: http://www.nuvoton.com
  9. //  E-Mail : MicroC-8bit@nuvoton.com
  10. //  Date   : Apr/21/2017
  11. //***********************************************************************************************************

  12. //***********************************************************************************************************
  13. //  File Function: N76E003 Timer2 Capture Mode demo code
  14. //***********************************************************************************************************
  15. #include "N76E003.h"
  16. #include "Common.h"
  17. #include "Delay.h"
  18. #include "SFR_Macro.h"
  19. #include "Function_define.h"

  20. //*****************  The Following is in define in Fucntion_define.h  ***************************
  21. //****** Always include Function_define.h call the define you want, detail see main(void) *******
  22. //***********************************************************************************************
  23. #if 0

  24. ////-------------------- Timer2 Capture define --------------------
  25. ////--- Falling Edge -----
  26. //#define IC0_P12_CAP0_FallingEdge_Capture                CAPCON1&=0xFC;CAPCON3&=0xF0;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4
  27. //#define        IC1_P11_CAP0_FallingEdge_Capture                CAPCON1&=0xFC;CAPCON3&=0xF0;CAPCON3|=0x01;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4
  28. //#define        IC2_P10_CAP0_FallingEdge_Capture                CAPCON1&=0xFC;CAPCON3&=0xF0;CAPCON3|=0x02;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4
  29. //#define        IC3_P00_CAP0_FallingEdge_Capture                CAPCON1&=0xFC;CAPCON3&=0xF0;CAPCON3|=0x03;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4
  30. //#define        IC3_P04_CAP0_FallingEdge_Capture                CAPCON1&=0xFC;CAPCON3&=0xF0;CAPCON3|=0x04;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4
  31. //#define        IC4_P01_CAP0_FallingEdge_Capture                CAPCON1&=0xFC;CAPCON3&=0xF0;CAPCON3|=0x05;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4
  32. //#define        IC5_P03_CAP0_FallingEdge_Capture                CAPCON1&=0xFC;CAPCON3&=0xF0;CAPCON3|=0x06;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4
  33. //#define        IC6_P05_CAP0_FallingEdge_Capture                CAPCON1&=0xFC;CAPCON3&=0xF0;CAPCON3|=0x07;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4
  34. //#define        IC7_P15_CAP0_FallingEdge_Capture                CAPCON1&=0xFC;CAPCON3&=0xF0;CAPCON3|=0x08;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4

  35. //#define IC0_P12_CAP1_FallingEdge_Capture                CAPCON1&=0xF3;CAPCON3&=0x0F;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5
  36. //#define        IC1_P11_CAP1_FallingEdge_Capture                CAPCON1&=0xF3;CAPCON3&=0x0F;CAPCON3|=0x10;CAPCON0|=SET_BIT5;CAPCON0|=SET_BIT5
  37. //#define        IC2_P10_CAP1_FallingEdge_Capture                CAPCON1&=0xF3;CAPCON3&=0x0F;CAPCON3|=0x20;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5
  38. //#define        IC3_P00_CAP1_FallingEdge_Capture                CAPCON1&=0xF3;CAPCON3&=0x0F;CAPCON3|=0x30;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5
  39. //#define        IC3_P04_CAP1_FallingEdge_Capture                CAPCON1&=0xF3;CAPCON3&=0x0F;CAPCON3|=0x40;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5
  40. //#define        IC4_P01_CAP1_FallingEdge_Capture                CAPCON1&=0xF3;CAPCON3&=0x0F;CAPCON3|=0x50;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5
  41. //#define        IC5_P03_CAP1_FallingEdge_Capture                CAPCON1&=0xF3;CAPCON3&=0x0F;CAPCON3|=0x60;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5
  42. //#define        IC6_P05_CAP1_FallingEdge_Capture                CAPCON1&=0xF3;CAPCON3&=0x0F;CAPCON3|=0x70;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5
  43. //#define        IC7_P15_CAP1_FallingEdge_Capture                CAPCON1&=0xF3;CAPCON3&=0x0F;CAPCON3|=0x80;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5

  44. //#define IC0_P12_CAP2_FallingEdge_Capture                CAPCON1&=0x0F;CAPCON4&=0xF0;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6
  45. //#define        IC1_P11_CAP2_FallingEdge_Capture                CAPCON1&=0x0F;CAPCON4&=0xF0;CAPCON4|=0x10;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6
  46. //#define        IC2_P10_CAP2_FallingEdge_Capture                CAPCON1&=0x0F;CAPCON4&=0xF0;CAPCON4|=0x20;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6
  47. //#define        IC3_P00_CAP2_FallingEdge_Capture                CAPCON1&=0x0F;CAPCON4&=0xF0;CAPCON4|=0x30;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6
  48. //#define        IC3_P04_CAP2_FallingEdge_Capture                CAPCON1&=0x0F;CAPCON4&=0xF0;CAPCON4|=0x40;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6
  49. //#define        IC4_P01_CAP2_FallingEdge_Capture                CAPCON1&=0x0F;CAPCON4&=0xF0;CAPCON4|=0x50;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6
  50. //#define        IC5_P03_CAP2_FallingEdge_Capture                CAPCON1&=0x0F;CAPCON4&=0xF0;CAPCON4|=0x60;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6
  51. //#define        IC6_P05_CAP2_FallingEdge_Capture                CAPCON1&=0x0F;CAPCON4&=0xF0;CAPCON4|=0x70;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6
  52. //#define        IC7_P15_CAP2_FallingEdge_Capture                CAPCON1&=0x0F;CAPCON4&=0xF0;CAPCON4|=0x80;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6

  53. ////----- Rising edge ----
  54. //#define IC0_P12_CAP0_RisingEdge_Capture                        CAPCON1&=0xFC;CAPCON1|=0x01;CAPCON3&=0xF0CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4;
  55. //#define        IC1_P11_CAP0_RisingEdge_Capture                        CAPCON1&=0xFC;CAPCON1|=0x01;CAPCON3&=0xF0;CAPCON3|=0x01;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4;
  56. //#define        IC2_P10_CAP0_RisingEdge_Capture                        CAPCON1&=0xFC;CAPCON1|=0x01;CAPCON3&=0xF0;CAPCON3|=0x02;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4;
  57. //#define        IC3_P00_CAP0_RisingEdge_Capture                        CAPCON1&=0xFC;CAPCON1|=0x01;CAPCON3&=0xF0;CAPCON3|=0x03;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4;
  58. //#define        IC3_P04_CAP0_RisingEdge_Capture                        CAPCON1&=0xFC;CAPCON1|=0x01;CAPCON3&=0xF0;CAPCON3|=0x04;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4;
  59. //#define        IC4_P01_CAP0_RisingEdge_Capture                        CAPCON1&=0xFC;CAPCON1|=0x01;CAPCON3&=0xF0;CAPCON3|=0x05;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4;
  60. //#define        IC5_P03_CAP0_RisingEdge_Capture                        CAPCON1&=0xFC;CAPCON1|=0x01;CAPCON3&=0xF0;CAPCON3|=0x06;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4;
  61. //#define        IC6_P05_CAP0_RisingEdge_Capture                        CAPCON1&=0xFC;CAPCON1|=0x01;CAPCON3&=0xF0;CAPCON3|=0x07;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4;
  62. //#define        IC7_P15_CAP0_RisingEdge_Capture                        CAPCON1&=0xFC;CAPCON1|=0x01;CAPCON3&=0xF0;CAPCON3|=0x08;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4;

  63. //#define IC0_P12_CAP1_RisingEdge_Capture                        CAPCON1&=0xF3;CAPCON1|=0x04;CAPCON3&=0x0FCAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5;
  64. //#define        IC1_P11_CAP1_RisingEdge_Capture                        CAPCON1&=0xF3;CAPCON1|=0x04;CAPCON3&=0x0F;CAPCON3|=0x10;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5;
  65. //#define        IC2_P10_CAP1_RisingEdge_Capture                        CAPCON1&=0xF3;CAPCON1|=0x04;CAPCON3&=0x0F;CAPCON3|=0x20;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5;
  66. //#define        IC3_P00_CAP1_RisingEdge_Capture                        CAPCON1&=0xF3;CAPCON1|=0x04;CAPCON3&=0x0F;CAPCON3|=0x30;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5;
  67. //#define        IC3_P04_CAP1_RisingEdge_Capture                        CAPCON1&=0xF3;CAPCON1|=0x04;CAPCON3&=0x0F;CAPCON3|=0x40;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5;
  68. //#define        IC4_P01_CAP1_RisingEdge_Capture                        CAPCON1&=0xF3;CAPCON1|=0x04;CAPCON3&=0x0F;CAPCON3|=0x50;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5;
  69. //#define        IC5_P03_CAP1_RisingEdge_Capture                        CAPCON1&=0xF3;CAPCON1|=0x04;CAPCON3&=0x0F;CAPCON3|=0x60;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5;
  70. //#define        IC6_P05_CAP1_RisingEdge_Capture                        CAPCON1&=0xF3;CAPCON1|=0x04;CAPCON3&=0x0F;CAPCON3|=0x70;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5;
  71. //#define        IC7_P15_CAP1_RisingEdge_Capture                        CAPCON1&=0xF3;CAPCON1|=0x04;CAPCON3&=0x0F;CAPCON3|=0x80;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5;

  72. //#define IC0_P12_CAP3_RisingEdge_Capture                        CAPCON1&=0x0F;CAPCON1|=0x10;CAPCON4&=0xF0;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;
  73. //#define        IC1_P11_CAP3_RisingEdge_Capture                        CAPCON1&=0x0F;CAPCON1|=0x10;CAPCON4&=0xF0;CAPCON4|=0x01;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;
  74. //#define        IC2_P10_CAP3_RisingEdge_Capture                        CAPCON1&=0x0F;CAPCON1|=0x10;CAPCON4&=0xF0;CAPCON4|=0x02;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;
  75. //#define        IC3_P00_CAP3_RisingEdge_Capture                        CAPCON1&=0x0F;CAPCON1|=0x10;CAPCON4&=0xF0;CAPCON4|=0x03;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;
  76. //#define        IC3_P04_CAP3_RisingEdge_Capture                        CAPCON1&=0x0F;CAPCON1|=0x10;CAPCON4&=0xF0;CAPCON4|=0x04;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;
  77. //#define        IC4_P01_CAP3_RisingEdge_Capture                        CAPCON1&=0x0F;CAPCON1|=0x10;CAPCON4&=0xF0;CAPCON4|=0x05;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;
  78. //#define        IC5_P03_CAP3_RisingEdge_Capture                        CAPCON1&=0x0F;CAPCON1|=0x10;CAPCON4&=0xF0;CAPCON4|=0x06;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;
  79. //#define        IC6_P05_CAP3_RisingEdge_Capture                        CAPCON1&=0x0F;CAPCON1|=0x10;CAPCON4&=0xF0;CAPCON4|=0x07;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;
  80. //#define        IC7_P15_CAP3_RisingEdge_Capture                        CAPCON1&=0x0F;CAPCON1|=0x10;CAPCON4&=0xF0;CAPCON4|=0x08;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;

  81. ////-----BOTH  edge ----
  82. //#define IC0_P12_CAP0_BothEdge_Capture                                CAPCON1&=0xFC;CAPCON1|=0x02;CAPCON3&=0xF0;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4
  83. //#define        IC1_P11_CAP0_BothEdge_Capture                                CAPCON1&=0xFC;CAPCON1|=0x02;CAPCON3&=0xF0;CAPCON3|=0x01;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4
  84. //#define        IC2_P10_CAP0_BothEdge_Capture                                CAPCON1&=0xFC;CAPCON1|=0x02;CAPCON3&=0xF0;CAPCON3|=0x02;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4
  85. //#define        IC3_P00_CAP0_BothEdge_Capture                                CAPCON1&=0xFC;CAPCON1|=0x02;CAPCON3&=0xF0;CAPCON3|=0x03;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4
  86. //#define        IC3_P04_CAP0_BothEdge_Capture                                CAPCON1&=0xFC;CAPCON1|=0x02;CAPCON3&=0xF0;CAPCON3|=0x04;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4
  87. //#define        IC4_P01_CAP0_BothEdge_Capture                                CAPCON1&=0xFC;CAPCON1|=0x02;CAPCON3&=0xF0;CAPCON3|=0x05;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4
  88. //#define        IC5_P03_CAP0_BothEdge_Capture                                CAPCON1&=0xFC;CAPCON1|=0x02;CAPCON3&=0xF0;CAPCON3|=0x06;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4
  89. //#define        IC6_P05_CAP0_BothEdge_Capture                                CAPCON1&=0xFC;CAPCON1|=0x02;CAPCON3&=0xF0;CAPCON3|=0x07;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4
  90. //#define        IC7_P15_CAP0_BothEdge_Capture                                CAPCON1&=0xFC;CAPCON1|=0x02;CAPCON3&=0xF0;CAPCON3|=0x08;CAPCON0|=SET_BIT4;CAPCON2|=SET_BIT4

  91. //#define IC0_P12_CAP1_BothEdge_Capture                                CAPCON1&=0xF3;CAPCON1|=0x08;CAPCON3&=0x0F;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5
  92. //#define        IC1_P11_CAP1_BothEdge_Capture                                CAPCON1&=0xF3;CAPCON1|=0x08;CAPCON3&=0x0F;CAPCON3|=0x10;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5;
  93. //#define        IC2_P10_CAP1_BothEdge_Capture                                CAPCON1&=0xF3;CAPCON1|=0x08;CAPCON3&=0x0F;CAPCON3|=0x20;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5;
  94. //#define        IC3_P00_CAP1_BothEdge_Capture                                CAPCON1&=0xF3;CAPCON1|=0x08;CAPCON3&=0x0F;CAPCON3|=0x30;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5;
  95. //#define        IC3_P04_CAP1_BothEdge_Capture                                CAPCON1&=0xF3;CAPCON1|=0x08;CAPCON3&=0x0F;CAPCON3|=0x40;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5;
  96. //#define        IC4_P01_CAP1_BothEdge_Capture                                CAPCON1&=0xF3;CAPCON1|=0x08;CAPCON3&=0x0F;CAPCON3|=0x50;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5;
  97. //#define        IC5_P03_CAP1_BothEdge_Capture                                CAPCON1&=0xF3;CAPCON1|=0x08;CAPCON3&=0x0F;CAPCON3|=0x60;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5;
  98. //#define        IC6_P05_CAP1_BothEdge_Capture                                CAPCON1&=0xF3;CAPCON1|=0x08;CAPCON3&=0x0F;CAPCON3|=0x70;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5;
  99. //#define        IC7_P15_CAP1_BothEdge_Capture                                CAPCON1&=0xF3;CAPCON1|=0x08;CAPCON3&=0x0F;CAPCON3|=0x80;CAPCON0|=SET_BIT5;CAPCON2|=SET_BIT5;

  100. //#define IC0_P12_CAP3_BothEdge_Capture                                CAPCON1&=0x0F;CAPCON1|=0x20;CAPCON4&=0xF0;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;
  101. //#define        IC1_P11_CAP3_BothEdge_Capture                                CAPCON1&=0x0F;CAPCON1|=0x20;CAPCON4&=0xF0;CAPCON4|=0x01;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;
  102. //#define        IC2_P10_CAP3_BothEdge_Capture                                CAPCON1&=0x0F;CAPCON1|=0x20;CAPCON4&=0xF0;CAPCON4|=0x02;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;
  103. //#define        IC3_P00_CAP3_BothEdge_Capture                                CAPCON1&=0x0F;CAPCON1|=0x20;CAPCON4&=0xF0;CAPCON4|=0x03;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;
  104. //#define        IC3_P04_CAP3_BothEdge_Capture                                CAPCON1&=0x0F;CAPCON1|=0x20;CAPCON4&=0xF0;CAPCON4|=0x04;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;
  105. //#define        IC4_P01_CAP3_BothEdge_Capture                                CAPCON1&=0x0F;CAPCON1|=0x20;CAPCON4&=0xF0;CAPCON4|=0x05;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;
  106. //#define        IC5_P03_CAP3_BothEdge_Capture                                CAPCON1&=0x0F;CAPCON1|=0x20;CAPCON4&=0xF0;CAPCON4|=0x06;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;
  107. //#define        IC6_P05_CAP3_BothEdge_Capture                                CAPCON1&=0x0F;CAPCON1|=0x20;CAPCON4&=0xF0;CAPCON4|=0x07;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;
  108. //#define        IC7_P15_CAP3_BothEdge_Capture                                CAPCON1&=0x0F;CAPCON1|=0x20;CAPCON4&=0xF0;CAPCON4|=0x08;CAPCON0|=SET_BIT6;CAPCON2|=SET_BIT6;

  109. //#define TIMER2_IC2_DISABLE                                                                        CAPCON0&=~SET_BIT6                         
  110. //#define TIMER2_IC1_DISABLE                                                                        CAPCON0&=~SET_BIT5                       
  111. //#define TIMER2_IC0_DISABLE                                                                        CAPCON0&=~SET_BIT4       

  112. ///*----------------------------------------------------------------------------------------------------------
  113. //*    Timer2 mode define
  114. //------------------------------------------------------------------------------------------------------------*/

  115. //#define         TIMER2_CAP0_Capture_Mode                        T2CON&=~SET_BIT0;T2MOD=0x89
  116. //#define         TIMER2_CAP1_Capture_Mode                        T2CON&=~SET_BIT0;T2MOD=0x8A
  117. //#define         TIMER2_CAP2_Capture_Mode                        T2CON&=~SET_BIT0;T2MOD=0x8B

  118. ///*----------------------------------------------------------------------------------------------------------
  119. //*   Timer devider define
  120. //----------------------------------------------------------------------------------------------------------*/
  121. //#define TIMER2_DIV_4                        T2MOD|=0x10;T2MOD&=0x9F
  122. //#define TIMER2_DIV_16                        T2MOD|=0x20;T2MOD&=0xAF
  123. //#define TIMER2_DIV_32                        T2MOD|=0x30;T2MOD&=0xBF
  124. //#define TIMER2_DIV_64                        T2MOD|=0x40;T2MOD&=0xCF
  125. //#define TIMER2_DIV_128                T2MOD|=0x50;T2MOD&=0xDF
  126. //#define TIMER2_DIV_256                T2MOD|=0x60;T2MOD&=0xEF
  127. //#define TIMER2_DIV_512                T2MOD|=0x70
  128. #endif


  129. /************************************************************************************************************
  130. *    Timer2 Capture interrupt subroutine
  131. ************************************************************************************************************/
  132. void Capture_ISR (void) interrupt 12
  133. {
  134.         clr_CAPF0;                          // clear capture0 interrupt flag
  135.         P1 = C0L;                                                                                                                // For capture mode CxL/CxH with data capture from I/O pin
  136.         P2 = C0H;                                                                                                               
  137.         P12 = ~P12;                                                                                                        //toggle GPIO1 to show int
  138.                                 printf("\n TM2 CAP 0x%bX",C0H);
  139.                                 clr_TF2;
  140. }
  141. /************************************************************************************************************
  142. *    Main function
  143. ************************************************************************************************************/
  144. void main (void)
  145. {
  146.     Set_All_GPIO_Quasi_Mode;
  147.                 InitialUART0_Timer3(115200);
  148.                 P00_Input_Mode;
  149.                 P00 = 1;

  150.                 TIMER2_CAP0_Capture_Mode;
  151.                 IC3_P00_CAP0_BothEdge_Capture;
  152.                        
  153.                 set_ECAP;                                   //Enable Capture interrupt
  154.                 set_TR2;                                    //Triger Timer2
  155.                 set_EA;

  156.     while(1);
  157. }
复制代码

使用特权

评论回复
| 2018-9-17 23:31 | 显示全部楼层
试试上面这个官方的例子

使用特权

评论回复
| 2018-9-17 23:35 | 显示全部楼层
如果这个例子没问题,那就是你配置不对

使用特权

评论回复
| 2018-9-17 23:51 | 显示全部楼层
P05要输入模式。

使用特权

评论回复
| 2018-9-17 23:51 | 显示全部楼层
另外捕获中断也要读取数据啊。

使用特权

评论回复
| 2018-9-18 09:04 | 显示全部楼层
要看你灌迈去的波形,看起来不是固定的波形

使用特权

评论回复
 楼主 | 2018-9-18 14:33 | 显示全部楼层
已经解决了  谢谢各位解答
739705ba09c23a2606.png 顺序反一下

使用特权

评论回复
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 我要提问 投诉建议 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

在线客服 快速回复 返回顶部 返回列表