int main(void) { int i; system_init(); p_init(); led_init(); cdcacm_init(); cdcacm_register_receive_callback(cdcacm_input_callback); usart_init(); led1_on(); led2_on(); led3_on(); led4_on(); led5_on(); for (i = 0; i < 0x800000; i++) __asm__("nop"); led1_off(); led2_off(); led3_off(); led4_off(); led5_off(); while (1) { cdcacm_run(); led_process(); } }
void led_on_id(unsigned char id) { switch (id) { case 1: led1_on();break; case 2: led2_on();break; case 3: led3_on();break; case 4: led4_on();break; default: led_all_off();break; } }
static int led_ioctl(struct inode *i, struct file *f, unsigned int cmd, unsigned long arg) { printk("FUN %s is calling\n", __func__); if (cmd == LED1) { if (arg == ON) { led1_on(); } else if(arg == OFF) { led1_off(); } } if (cmd == LED2) { if (arg == ON) { led2_on(); } else if(arg == OFF) { led2_off(); } } if (cmd == LED3) { if (arg == ON) { led3_on(); } else if(arg == OFF) { led3_off(); } } if (cmd == LED4) { if (arg == ON) { led4_on(); } else if(arg == OFF) { led4_off(); } } return 0; }