示例#1
0
uint32_t cph_deca_wait_for_rx_finished_signal(int timeout_ms, volatile uint8_t * signal) {
	uint32_t status_reg;
	uint32_t start_ms = cph_get_millis();
	uint32_t elapsed = 0;
	while (cph_deca_isr_is_detected() == false) {
		if (*signal == 0xFF)
			return 0;
		elapsed = cph_get_millis() - start_ms;
		if (elapsed > timeout_ms)
			return 0;
	}
	status_reg = dwt_read32bitreg(SYS_STATUS_ID);
	return status_reg;
}
示例#2
0
void cph_deca_isr(void) {
	do {
		dwt_isr();
	} while (cph_deca_isr_is_detected() == 1);
}
static void irq_handler(uint32 id, uint32 mask) {
	do {
		dwt_isr();
	} while (cph_deca_isr_is_detected() == 1);
}
示例#4
0
static void irq_handler(uint32_t id, uint32_t mask) {
	int_count++;
	do {
		dwt_isr();
	} while (cph_deca_isr_is_detected() == 1);
}