Untitled
public text v1 · immutablevoid microsd_int(void)
{
/* 0x80:inserted, 0x00:not inserted */
int current_status = ~GPIOA_INPUT_VAL & 0x80;
GPIOA_INT_LEV = (GPIOA_INT_LEV & ~0x80) | (current_status ^ 0x80);
GPIOA_INT_CLR = GPIOA_INT_STAT & 0x80;
if (current_status)
{
queue_broadcast(SYS_CARD_INSERTED, 0);
}
else
{
queue_broadcast(SYS_CARD_EXTRACTED, 0);
sd_status = SD_UNKNOWN;
card_info[1].initialized = false;
}
}