Why is PIO1_8 not working for external interrupt input on LPC1519?

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Why is PIO1_8 not working for external interrupt input on LPC1519?

1,472 次查看
Trups_123
Contributor I

I am working with the LPC1519 (ARM Cortex-M3) and trying to use Port 1, Pin 8 (PIO1_8) as an external interrupt input for a water flow sensor.

I configured PIO1_8 as a GPIO input and routed it to a PININT channel using the INMUX, then enabled falling-edge detection and enabled the IRQ. However, the interrupt never triggers when pulses are applied to P1_8.

0 项奖励
回复
5 回复数

1,436 次查看
Trups_123
Contributor I

#include "chip.h"
#include <stdio.h>

#define FLOW_PIN_PORT 1
#define FLOW_PIN_NUM 8
#define FLOW_IRQ_NUM PIN_INT0_IRQn // Using PININT0
#define FLOW_CH PININTCH0

volatile uint32_t pulse_count = 0;

/* Interrupt Service Routine for flow sensor */
void PIN_INT0_IRQHandler(void) {
if (Chip_PININT_GetFallStates(LPC_PININT) & (1 << FLOW_CH)) {
pulse_count++; // Count pulses
Chip_PININT_ClearIntStatus(LPC_PININT, FLOW_CH);
}
}

int main(void) {
SystemCoreClockUpdate();

// Initialize GPIO
Chip_GPIO_Init(LPC_GPIO_PORT);
Chip_IOCON_PinMuxSet(LPC_IOCON, FLOW_PIN_PORT, FLOW_PIN_NUM,
(IOCON_FUNC0 | IOCON_MODE_PULLUP));
Chip_GPIO_SetPinDIRInput(LPC_GPIO_PORT, FLOW_PIN_PORT, FLOW_PIN_NUM);

// Map pin to interrupt channel (channel 0)
Chip_INMUX_PinIntSel(0, FLOW_PIN_PORT, FLOW_PIN_NUM);

// Configure falling-edge interrupt
Chip_PININT_ClearIntStatus(LPC_PININT, FLOW_CH);
Chip_PININT_SetPinModeEdge(LPC_PININT, FLOW_CH);
Chip_PININT_EnableIntLow(LPC_PININT, FLOW_CH);

// Enable NVIC for PIN_INT0
NVIC_ClearPendingIRQ(FLOW_IRQ_NUM);
NVIC_EnableIRQ(FLOW_IRQ_NUM);

while (1) {
uint32_t start_count = pulse_count;

// crude 1 second delay loop
for (volatile uint32_t i = 0; i < (SystemCoreClock/1000 * 1000); i++);

uint32_t pulses_per_sec = pulse_count - start_count;
float flow_rate = (float)pulses_per_sec / 7.5f; // L/min (depends on sensor spec!)

printf("Flow Rate: %.2f L/min, Total pulses: %lu\n",
flow_rate, pulse_count);
}
}

0 项奖励
回复

1,452 次查看
Pablo_Ramos
NXP Employee
NXP Employee

Hi @Trups_123,

How are you generating the pulses that are applied to P1_8?

Also, could you please share a snippet of your code where you set up pin P1_8 as an external interrupt?

Best Regards,
Pablo

0 项奖励
回复

1,436 次查看
Trups_123
Contributor I
#define FLOW_PIN_PORT 1
#define FLOW_PIN_NUM 8
#define FLOW_IRQ_NUM PIN_INT0_IRQn // Example: use PIN_INT0
#define FLOW_CH PININTCH0

volatile uint32_t pulse_count = 0;

/* Interrupt Service Routine for flow sensor */
void PIN_INT0_IRQHandler(void) {
pulse_count++; // Count pulses
Chip_PININT_ClearFallStates(LPC_PININT, FLOW_CH);
}

int main(void) {
SystemCoreClockUpdate();

// Initialize GPIO
Chip_GPIO_Init(LPC_GPIO_PORT);
Chip_IOCON_PinMuxSet(LPC_IOCON, FLOW_PIN_PORT, FLOW_PIN_NUM,
(IOCON_FUNC0 | IOCON_MODE_PULLUP));
Chip_GPIO_SetPinDIRInput(LPC_GPIO_PORT, FLOW_PIN_PORT, FLOW_PIN_NUM);

// Map pin to interrupt channel
Chip_INMUX_PinIntSel(0, FLOW_PIN_PORT, FLOW_PIN_NUM);

// Configure falling-edge interrupt
Chip_PININT_ClearIntStatus(LPC_PININT, FLOW_CH);
Chip_PININT_SetPinModeEdge(LPC_PININT, FLOW_CH);
Chip_PININT_EnableIntLow(LPC_PININT, FLOW_CH);

// Enable NVIC
NVIC_ClearPendingIRQ(FLOW_IRQ_NUM);
NVIC_EnableIRQ(FLOW_IRQ_NUM);

while(1) {
// Example: measure flow every 1 second
uint32_t start_count = pulse_count;
Chip_Clock_System_BusyWait_ms(1000);
uint32_t pulses_per_sec = pulse_count - start_count;

float flow_rate = (float)pulses_per_sec / 7.5f; // L/min
printf("Flow Rate: %.2f L/min, Total pulses: %lu\n", flow_rate, pulse_count);
}
0 项奖励
回复

1,384 次查看
Trups_123
Contributor I

waiting for solution

0 项奖励
回复

1,363 次查看
Pablo_Ramos
NXP Employee
NXP Employee

Hi @Trups_123,

I apologize for taking a while to get back to you.

I wasn't able to follow the entire configuration because I couldn't find the definition for LPC_GPIO_PORT. However, I recommend checking the periph_pinint example, which configures a pin interrupt triggered by a falling edge.

You can find this example in MCUXpresso by following these steps:

Quickstart Panel -> Create or import project -> Import project(s) from file system.

Pablo_Ramos_0-1756503468961.png

Project archive (zip) -> Browse -> LPCOpen -> lpcxpresso_1549

Pablo_Ramos_1-1756503511164.png

Select lpc_board_nxp_lpcxpresso_1549, lpc_chip_15xx and periph_pint

Pablo_Ramos_2-1756503530328.png

Best Regards,
Pablo

0 项奖励
回复
%3CLINGO-SUB%20id%3D%22lingo-sub-2155253%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E4%B8%BA%E4%BB%80%E4%B9%88%20PIO1_8%20%E4%B8%8D%E8%83%BD%E7%94%A8%E4%BA%8E%20LPC1519%20%E7%9A%84%E5%A4%96%E9%83%A8%E4%B8%AD%E6%96%AD%E8%BE%93%E5%85%A5%EF%BC%9F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2155253%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E6%88%91%E6%AD%A3%E5%9C%A8%E4%BD%BF%E7%94%A8%20LPC1519%EF%BC%88ARM%20Cortex-M3%EF%BC%89%EF%BC%8C%E6%AD%A3%E5%9C%A8%E5%B0%9D%E8%AF%95%E4%BD%BF%E7%94%A8%E7%AB%AF%E5%8F%A3%201%EF%BC%8C%E5%BC%95%E8%84%9A%208%EF%BC%88PIO1_8%EF%BC%89%E4%BD%9C%E4%B8%BA%E6%B0%B4%E6%B5%81%E9%87%8F%E4%BC%A0%E6%84%9F%E5%99%A8%E7%9A%84%E5%A4%96%E9%83%A8%E4%B8%AD%E6%96%AD%E8%BE%93%E5%85%A5%E3%80%82%3C%2FP%3E%3CP%3E%E6%88%91%E5%B0%86%20PIO1_8%20%E9%85%8D%E7%BD%AE%E4%B8%BA%20GPIO%20%E8%BE%93%E5%85%A5%EF%BC%8C%E5%B9%B6%E4%BD%BF%E7%94%A8%20INMUX%20%E5%B0%86%E5%85%B6%E8%B7%AF%E7%94%B1%E5%88%B0%20PININT%20%E9%80%9A%E9%81%93%EF%BC%8C%E7%84%B6%E5%90%8E%E5%90%AF%E7%94%A8%E4%B8%8B%E9%99%8D%E6%B2%BF%E6%A3%80%E6%B5%8B%E5%B9%B6%E5%90%AF%E7%94%A8%20IRQ%E3%80%82%E4%BD%86%E6%98%AF%EF%BC%8C%E5%BD%93%E8%84%89%E5%86%B2%E6%96%BD%E5%8A%A0%E5%88%B0%20P1_8%20%E6%97%B6%EF%BC%8C%E4%B8%AD%E6%96%AD%E6%B0%B8%E8%BF%9C%E4%B8%8D%E4%BC%9A%E8%A7%A6%E5%8F%91%E4%BF%A1%E5%8F%B7%E3%80%82%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2160884%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Why%20is%20PIO1_8%20not%20working%20for%20external%20interrupt%20input%20on%20LPC1519%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2160884%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E5%97%A8%EF%BC%8C%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F222924%22%20target%3D%22_blank%22%3E%40Trups_123%3C%2FA%3E%E3%80%81%3C%2FP%3E%0A%3CP%3E%E5%BE%88%E6%8A%B1%E6%AD%89%E8%BF%87%E4%BA%86%E4%B8%80%E6%AE%B5%E6%97%B6%E9%97%B4%E6%89%8D%E7%BB%99%E6%82%A8%E5%9B%9E%E5%A4%8D%E3%80%82%3C%2FP%3E%0A%3CP%3E%E7%94%B1%E4%BA%8E%E6%89%BE%E4%B8%8D%E5%88%B0%20LPC_GPIO_PORT%20%E7%9A%84%E5%AE%9A%E4%B9%89%EF%BC%8C%E6%88%91%E6%97%A0%E6%B3%95%E8%B7%9F%E8%BF%9B%E6%95%B4%E4%B8%AA%E9%85%8D%E7%BD%AE%E8%BF%87%E7%A8%8B%E3%80%82%E4%BD%86%E6%98%AF%EF%BC%8C%E6%88%91%E5%BB%BA%E8%AE%AE%E6%9F%A5%E7%9C%8B%20perephero_pinint%20%E7%A4%BA%E4%BE%8B%EF%BC%8C%E8%AF%A5%E7%A4%BA%E4%BE%8B%E9%85%8D%E7%BD%AE%E4%BA%86%E7%94%B1%E4%B8%8B%E9%99%8D%E6%B2%BF%E8%A7%A6%E5%8F%91%E4%BF%A1%E5%8F%B7%E7%9A%84%E5%BC%95%E8%84%9A%E4%B8%AD%E6%96%AD%E3%80%82%3C%2FP%3E%0A%3CP%3E%E6%82%A8%E5%8F%AF%E4%BB%A5%E6%8C%89%E7%85%A7%E4%BB%A5%E4%B8%8B%E6%AD%A5%E9%AA%A4%E5%9C%A8%20MCUXpresso%20%E4%B8%AD%E6%89%BE%E5%88%B0%E8%AF%A5%E7%A4%BA%E4%BE%8B%EF%BC%9A%3C%2FP%3E%0A%3CP%3E%E5%BF%AB%E9%80%9F%E5%90%AF%E5%8A%A8%E9%9D%A2%E6%9D%BF%20-%26gt%3B%20%E5%88%9B%E5%BB%BA%E6%88%96%E5%AF%BC%E5%85%A5%E9%A1%B9%E7%9B%AE%20-%26gt%3B%20%E4%BB%8E%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E5%AF%BC%E5%85%A5%E9%A1%B9%E7%9B%AE%E3%80%82%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Pablo_Ramos_0-1756503468961.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Pablo_Ramos_0-1756503468961.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F354860i5A21DDBF6DDDB632%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22Pablo_Ramos_0-1756503468961.png%22%20alt%3D%22Pablo_Ramos_0-1756503468961.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%E9%A1%B9%E7%9B%AE%E6%A1%A3%E6%A1%88%20(zip)%20-%26gt%3B%20%E6%B5%8F%E8%A7%88%20-%26gt%3B%20LPCOpen%20-%26gt%3B%20lpcxpresso_1549%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Pablo_Ramos_1-1756503511164.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Pablo_Ramos_1-1756503511164.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F354861i02562A5186CE9457%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22Pablo_Ramos_1-1756503511164.png%22%20alt%3D%22Pablo_Ramos_1-1756503511164.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%E9%80%89%E6%8B%A9%20lpc_board_nxp_lpcxpresso_1549%E3%80%81lpc_chip_15xx%20%E5%92%8C%20periph_pint%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Pablo_Ramos_2-1756503530328.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Pablo_Ramos_2-1756503530328.png%22%20style%3D%22width%3A%20257px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F354862i966DFF200D5F074A%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22Pablo_Ramos_2-1756503530328.png%22%20alt%3D%22Pablo_Ramos_2-1756503530328.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%E6%95%AC%E4%B8%8A%EF%BC%8C%3CBR%20%2F%3EPablo%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2159927%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Why%20is%20PIO1_8%20not%20working%20for%20external%20interrupt%20input%20on%20LPC1519%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2159927%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E7%AD%89%E5%BE%85%E8%A7%A3%E5%86%B3%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2155765%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Why%20is%20PIO1_8%20not%20working%20for%20external%20interrupt%20input%20on%20LPC1519%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2155765%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%23include%22chip.h%22%3CBR%20%2F%3E%23include%3CSTDIO.H%3E%3C%2FSTDIO.H%3E%3C%2FP%3E%3CP%3E%23define%20FLOW_PIN_PORT%201%3CBR%20%2F%3E%23define%20FLOW_PIN_NUM%208%3CBR%20%2F%3E%23define%20FLOW_IRQ_NUM%20PIN_INT0_IRQn%20%2F%2F%20%E4%BD%BF%E7%94%A8%20PININT0%3CBR%20%2F%3E%23define%20FLOW_CH%20PININTCH0%3C%2FP%3E%3CP%3Evolatile%20uint32_t%20pulse_count%20%3D%200%EF%BC%9B%3C%2FP%3E%3CP%3E%2F*%20%E6%B5%81%E9%87%8F%E4%BC%A0%E6%84%9F%E5%99%A8%E7%9A%84%E4%B8%AD%E6%96%AD%E6%9C%8D%E5%8A%A1%E4%BE%8B%E7%A8%8B%20*%2F%20%3CBR%20%2F%3E%20void%20pin_int0_irqHandler%20(void)%20%7Bi%20%3CBR%20%2F%3E%20f%20(Chip_pinint_GetfallStates%20(LPC_PININT)%20%26amp%3B%20(1%20%26lt%3B%20%26lt%3B%20FLOW_CH))%20%7Bpulse_count%2B%2B%3B%2F%2F%E8%AE%A1%E6%95%B0%E8%84%89%E5%86%B2%20chip_pinint_clearintStatus%20(LPC_PININT%2C%20FLOW_CH)%3B%7D%7D%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%3C%2FP%3E%3CP%3Eint%20main(void)%20%7B%3CBR%20%2F%3ESystemCoreClockUpdate()%EF%BC%9B%3C%2FP%3E%3CP%3E%2F%2F%20%E5%88%9D%E5%A7%8B%E5%8C%96%20GPIO%3CBR%20%2F%3EChip_GPIO_Init(LPC_GPIO_PORT)%EF%BC%9B%3CBR%20%2F%3EChip_IOCON_PinMuxSet(LPC_IOCON%2CFLOW_PIN_PORT%2CFLOW_PIN_NUM%2C%3CBR%20%2F%3E(IOCON_FUNC0%20%7C%20IOCON_MODE_PULLUP))%EF%BC%9B%3CBR%20%2F%3EChip_GPIO_SetPinDIRInput(LPC_GPIO_PORT%2CFLOW_PIN_PORT%2CFLOW_PIN_NUM)%EF%BC%9B%3C%2FP%3E%3CP%3E%2F%2F%20%E5%B0%86%E5%BC%95%E8%84%9A%E6%98%A0%E5%B0%84%E5%88%B0%E4%B8%AD%E6%96%AD%E9%80%9A%E9%81%93%EF%BC%88%E9%80%9A%E9%81%93%200%EF%BC%89%3CBR%20%2F%3EChip_INMUX_PinIntSel(0%2C%20FLOW_PIN_PORT%2C%20FLOW_PIN_NUM)%EF%BC%9B%3C%2FP%3E%3CP%3E%2F%2F%20%E9%85%8D%E7%BD%AE%E4%B8%8B%E9%99%8D%E6%B2%BF%E4%B8%AD%E6%96%AD%3CBR%20%2F%3EChip_PININT_ClearIntStatus(LPC_PININT%2CFLOW_CH)%EF%BC%9B%3CBR%20%2F%3EChip_PININT_SetPinModeEdge(LPC_PININT%2CFLOW_CH)%EF%BC%9B%3CBR%20%2F%3EChip_PININT_EnableIntLow(LPC_PININT%2CFLOW_CH)%EF%BC%9B%3C%2FP%3E%3CP%3E%2F%2F%20%E4%B8%BA%20PIN_INT0%20%E5%90%AF%E7%94%A8%20NVIC%3CBR%20%2F%3ENVIC_ClearPendingIRQ(FLOW_IRQ_NUM)%3B%3CBR%20%2F%3ENVIC_EnableIRQ(FLOW_IRQ_NUM)%EF%BC%9B%3C%2FP%3E%3CP%3Ewhile%20(1)%20%7B%3CBR%20%2F%3Euint32_t%20start_count%20%3D%20pulse_count%EF%BC%9B%3C%2FP%3E%3CP%3E%2F%2F%201%20%E7%A7%92%E5%BB%B6%E8%BF%9F%E5%BE%AA%E7%8E%AF%3CBR%20%2F%3Efor%20(volatile%20uint32_t%20i%20%3D%200%3B%20i%26lt%3B%20(SystemCoreClock%2F1000%20*%201000)%3B%20i%2B%2B)%EF%BC%9B%3C%2FP%3E%3CP%3Euint32_t%20pulses_per_sec%20%3D%20pulse_count%20-%20start_count%3B%3CBR%20%2F%3Efloat%20flow_rate%20%3D%20(float)pulses_per_sec%20%2F%207.5f%3B%20%2F%2F%20%E5%8D%87%2F%E5%88%86%E9%92%9F%EF%BC%88%E5%8F%96%E5%86%B3%E4%BA%8E%E4%BC%A0%E6%84%9F%E5%99%A8%E8%A7%84%E6%A0%BC%EF%BC%81%EF%BC%89%E3%80%82%3C%2FP%3E%3CP%3Eprintf%20(%22%20%E6%B5%81%E9%80%9F%EF%BC%9A%25.2f%20L%2Fmin%EF%BC%8C%E6%80%BB%E8%84%89%E5%86%B2%EF%BC%9A%25lu%5Cn%20%22%EF%BC%8C%3CBR%20%2F%3E%E6%B5%81%E9%80%9F%EF%BC%8C%E8%84%89%E5%86%B2%E6%95%B0)%3B%7D%7D%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2155762%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Why%20is%20PIO1_8%20not%20working%20for%20external%20interrupt%20input%20on%20LPC1519%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2155762%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%23define%20FLOW_PIN_PORT%201%20%3CBR%20%2F%3E%20%23define%20FLOW_PIN_NUM%208%20%3CBR%20%2F%3E%20%23define%20FLOW_IRQ_NUM%20pin_int0_IRQN%2F%2F%E7%A4%BA%E4%BE%8B%EF%BC%9A%E4%BD%BF%E7%94%A8%20PIN_INT0%20%3CBR%20%2F%3E%20%23define%20FLOW_CH%20PININTCH0%20v%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20olatile%20uint32_t%20pulse_t%20pulse_count%2B%2B%20%3D%200%EF%BC%9B%2F%2F%E6%B5%81%E9%87%8F%E4%BC%A0%E6%84%9F%E5%99%A8%E7%9A%84%E4%B8%AD%E6%96%AD%E6%9C%8D%E5%8A%A1%E4%BE%8B%E7%A8%8B%20*%2F%20void%20pin_int0_IRQHandler%20(void)%20%7Bpulse_count%2B%2B%3B%2F%2F%E8%AE%A1%E6%95%B0%E8%84%89%E5%86%B2%20chip_pinint_clearfall%2B%2B%3B%2F%2F%E8%AE%A1%E6%95%B0%E8%84%89%E5%86%B2%20chip_pinint_clearfall%2B%2B%3B%2F%2F%E8%AE%A1%E6%95%B0%E7%8A%B6%E6%80%81%20(LPC_PININT%E3%80%81FLOW_CH)%3B%7D%20int%20main%20(%3CBR%20%2F%3Evoid)%20%7BSystemcoreClockUpdate%20()%3B%20%3CBR%20%2F%3E%3CBR%20%2F%3E%2F%2F%E5%88%9D%E5%A7%8B%E5%8C%96%20GPIO%20%E8%8A%AF%E7%89%87_GPIO_INIT%20(LPC_GPIO_PORT)%3B%20chip_IOCON_PORT%20(LPC_IOCON%2C%20FLOW_PIN_PORT%2C%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%20%3CBR%20%2F%3EFLOW_PIN_NUM%EF%BC%8C%3CBR%20%2F%3E(IOCON_FUNC0%20%7C%20IOCON_MODE_PULLUP))%3B%20chip_GPIO_%20%3CBR%20%2F%3E%20setpindirInput%20(LPC_GPIO_PORT%E3%80%81FLOW_PIN_PORT%E3%80%81FLOW_PIN_NUM)%3B%2F%2F%E5%B0%86%E5%BC%95%E8%84%9A%E6%98%A0%E5%B0%84%E5%88%B0%E4%B8%AD%E6%96%AD%E9%80%9A%E9%81%93%20Chip_inmu%20%3CBR%20%2F%3E%20x_pinintsel%20(0%2C%20FLOW_PIN_PORT%2C%20FLOW_PIN_NUM)%3B%2F%2F%E9%85%8D%E7%BD%AE%E5%90%8E%E6%B2%BF%E4%B8%AD%E6%96%AD%E8%8A%AF%E7%89%87_pinint_clearintStatus%20(LPC_PININT%EF%BC%8CFLOW_CH)%EF%BC%9Bchip_pinint_setpinnt_setpinmodeEDGE%20(LPC_PININT%EF%BC%8CFLOW_CH)%EF%BC%9B%3CBR%20%2F%3E%3CBR%20%2F%3E%2F%2F%E5%90%AF%E7%94%A8%20NVIC%20nvic_CLEARPendingIRQ%20(FLOW_IRQ_NUM)%EF%BC%9Bnvic_enableIRQ%20(FLOW_IRQ_NUM))%3B%20%E8%80%8C%20(1)%20%7B%2F%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%2F%E7%A4%BA%E4%BE%8B%EF%BC%9A%E6%AF%8F%201%20%E7%A7%92%E6%B5%8B%E9%87%8F%E4%B8%80%E6%AC%A1%E6%B5%81%E9%87%8F%20%3CBR%20%2F%3E%20uint32_t%20start_count%20%3D%20pulse_count%EF%BC%9B%3CBR%20%2F%3Echip_clock_system_busyWait_ms%20(1000)%EF%BC%9B%3CBR%20%2F%3Euint32_t%20pulses_per_sec%20%3D%20pulse_count%20%3D%EF%BC%88%3CBR%20%2F%3E%3CBR%20%2F%3E%E6%B5%AE%E5%8A%A8%EF%BC%89pulses_per_sec%2F7.5f%EF%BC%9B%2F%2FL%2Fmin%20printf%20(%22%20%E6%B5%81%E9%80%9F%EF%BC%9A%25.2f%20%E5%8D%87%2F%E5%88%86%E9%92%9F%EF%BC%8C%E6%80%BB%E8%AE%A1%E8%84%89%E5%86%B2%EF%BC%9A%25lu%5Cn%20%22%EF%BC%8C%E6%B5%81%E9%80%9F%EF%BC%8C%E8%84%89%E5%86%B2%E6%95%B0%EF%BC%89%3B%7D%20%3CBR%20%2F%3E%20%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2155440%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20Why%20is%20PIO1_8%20not%20working%20for%20external%20interrupt%20input%20on%20LPC1519%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2155440%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E5%97%A8%EF%BC%8C%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F222924%22%20target%3D%22_blank%22%3E%40Trups_123%3C%2FA%3E%E3%80%81%3C%2FP%3E%0A%3CP%3E%E4%BD%A0%E6%98%AF%E5%A6%82%E4%BD%95%E7%94%9F%E6%88%90%E5%BA%94%E7%94%A8%E4%BA%8E%20P1_8%20%E7%9A%84%E8%84%89%E5%86%B2%E7%9A%84%EF%BC%9F%3C%2FP%3E%0A%3CP%3E%E5%8F%A6%E5%A4%96%EF%BC%8C%E4%BD%A0%E8%83%BD%E5%90%A6%E5%88%86%E4%BA%AB%E4%B8%80%E4%B8%8B%E4%BD%A0%E5%B0%86%E5%BC%95%E8%84%9A%20P1_8%20%E8%AE%BE%E7%BD%AE%E4%B8%BA%E5%A4%96%E9%83%A8%E4%B8%AD%E6%96%AD%E7%9A%84%E4%BB%A3%E7%A0%81%E7%89%87%E6%AE%B5%EF%BC%9F%3C%2FP%3E%0A%3CP%3E%E6%95%AC%E4%B8%8A%EF%BC%8C%3CBR%20%2F%3EPablo%3C%2FP%3E%3C%2FLINGO-BODY%3E