Convert some AVR GPIO operations to macros (#23424)
This commit is contained in:
		
							parent
							
								
									7220715dd1
								
							
						
					
					
						commit
						61c7c1f74c
					
				
					 71 changed files with 877 additions and 840 deletions
				
			
		| 
						 | 
				
			
			@ -135,51 +135,51 @@ void set_switch_led(int ledId, bool state) {
 | 
			
		|||
	if(state) {
 | 
			
		||||
		switch(ledId) {
 | 
			
		||||
			case 1:
 | 
			
		||||
				PORTD |= (1<<7);
 | 
			
		||||
				gpio_write_pin_high(D7);
 | 
			
		||||
				break;
 | 
			
		||||
			case 2:
 | 
			
		||||
				if((PINB & (1 << 7)) != 0) {
 | 
			
		||||
					PORTC |= (1<<6);
 | 
			
		||||
				if(gpio_read_pin(B7)) {
 | 
			
		||||
					gpio_write_pin_high(C6);
 | 
			
		||||
				} else {
 | 
			
		||||
					PORTC |= (1<<7);
 | 
			
		||||
					gpio_write_pin_high(C7);
 | 
			
		||||
				}
 | 
			
		||||
				break;
 | 
			
		||||
			case 3:
 | 
			
		||||
				PORTD |= (1<<4);
 | 
			
		||||
				gpio_write_pin_high(D4);
 | 
			
		||||
				break;
 | 
			
		||||
			case 4:
 | 
			
		||||
				PORTE |= (1<<6);
 | 
			
		||||
				gpio_write_pin_high(E6);
 | 
			
		||||
				break;
 | 
			
		||||
			case 5:
 | 
			
		||||
				PORTB |= (1<<4);
 | 
			
		||||
				gpio_write_pin_high(B4);
 | 
			
		||||
				break;
 | 
			
		||||
			case 6:
 | 
			
		||||
				PORTD |= (1<<6);
 | 
			
		||||
				gpio_write_pin_high(D6);
 | 
			
		||||
				break;
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		switch(ledId) {
 | 
			
		||||
			case 1:
 | 
			
		||||
				PORTD &= ~(1<<7);
 | 
			
		||||
				gpio_write_pin_low(D7);
 | 
			
		||||
				break;
 | 
			
		||||
			case 2:
 | 
			
		||||
				if((PINB & (1 << 7)) != 0) {
 | 
			
		||||
					PORTC &= ~(1<<6);
 | 
			
		||||
				if(gpio_read_pin(B7)) {
 | 
			
		||||
					gpio_write_pin_low(C6);
 | 
			
		||||
				} else {
 | 
			
		||||
					PORTC &= ~(1<<7);
 | 
			
		||||
					gpio_write_pin_low(C7);
 | 
			
		||||
				}
 | 
			
		||||
				break;
 | 
			
		||||
			case 3:
 | 
			
		||||
				PORTD &= ~(1<<4);
 | 
			
		||||
				gpio_write_pin_low(D4);
 | 
			
		||||
				break;
 | 
			
		||||
			case 4:
 | 
			
		||||
				PORTE &= ~(1<<6);
 | 
			
		||||
				gpio_write_pin_low(E6);
 | 
			
		||||
				break;
 | 
			
		||||
			case 5:
 | 
			
		||||
				PORTB &= ~(1<<4);
 | 
			
		||||
				gpio_write_pin_low(B4);
 | 
			
		||||
				break;
 | 
			
		||||
			case 6:
 | 
			
		||||
				PORTD &= ~(1<<6);
 | 
			
		||||
				gpio_write_pin_low(D6);
 | 
			
		||||
				break;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			@ -187,88 +187,88 @@ void set_switch_led(int ledId, bool state) {
 | 
			
		|||
 | 
			
		||||
 | 
			
		||||
void set_layer_led(int layerId) {
 | 
			
		||||
	PORTD |= (1<<5);
 | 
			
		||||
	PORTB &= ~(1<<6);
 | 
			
		||||
	PORTB |= (1<<0);
 | 
			
		||||
	gpio_write_pin_high(D5);
 | 
			
		||||
	gpio_write_pin_low(B6);
 | 
			
		||||
	gpio_write_pin_high(B0);
 | 
			
		||||
	switch(layerId) {
 | 
			
		||||
		case 0:
 | 
			
		||||
			PORTD &= ~(1<<5);
 | 
			
		||||
			gpio_write_pin_low(D5);
 | 
			
		||||
			break;
 | 
			
		||||
		case 1:
 | 
			
		||||
			PORTB |= (1<<6);
 | 
			
		||||
			gpio_write_pin_high(B6);
 | 
			
		||||
			break;
 | 
			
		||||
		case 2:
 | 
			
		||||
			PORTB &= ~(1<<0);
 | 
			
		||||
			gpio_write_pin_low(B0);
 | 
			
		||||
			break;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void led_init_ports_user(void) {
 | 
			
		||||
  // led voor switch #1
 | 
			
		||||
	DDRD |= (1<<7);
 | 
			
		||||
	PORTD &= ~(1<<7);
 | 
			
		||||
	gpio_set_pin_output(D7);
 | 
			
		||||
	gpio_write_pin_low(D7);
 | 
			
		||||
 | 
			
		||||
  // led voor switch #2
 | 
			
		||||
	DDRC |= (1<<6);
 | 
			
		||||
	DDRC |= (1<<7);
 | 
			
		||||
	PORTC &= ~(1<<6);
 | 
			
		||||
	PORTC &= ~(1<<7);
 | 
			
		||||
	gpio_set_pin_output(C6);
 | 
			
		||||
	gpio_set_pin_output(C7);
 | 
			
		||||
	gpio_write_pin_low(C6);
 | 
			
		||||
	gpio_write_pin_low(C7);
 | 
			
		||||
 | 
			
		||||
  // led voor switch #3
 | 
			
		||||
	DDRD |= (1<<4);
 | 
			
		||||
	PORTD &= ~(1<<4);
 | 
			
		||||
	gpio_set_pin_output(D4);
 | 
			
		||||
	gpio_write_pin_low(D4);
 | 
			
		||||
 | 
			
		||||
  // led voor switch #4
 | 
			
		||||
	DDRE |= (1<<6);
 | 
			
		||||
	PORTE &= ~(1<<6);
 | 
			
		||||
	gpio_set_pin_output(E6);
 | 
			
		||||
	gpio_write_pin_low(E6);
 | 
			
		||||
 | 
			
		||||
  // led voor switch #5
 | 
			
		||||
	DDRB |= (1<<4);
 | 
			
		||||
	PORTB &= ~(1<<4);
 | 
			
		||||
	gpio_set_pin_output(B4);
 | 
			
		||||
	gpio_write_pin_low(B4);
 | 
			
		||||
 | 
			
		||||
  // led voor switch #6
 | 
			
		||||
	DDRD |= (1<<6);
 | 
			
		||||
	PORTD &= ~(1<<6);
 | 
			
		||||
	gpio_set_pin_output(D6);
 | 
			
		||||
	gpio_write_pin_low(D6);
 | 
			
		||||
 | 
			
		||||
	/*
 | 
			
		||||
	DDRD |= (1<<7);
 | 
			
		||||
	PORTD |= (1<<7);
 | 
			
		||||
	gpio_set_pin_output(D7);
 | 
			
		||||
	gpio_write_pin_high(D7);
 | 
			
		||||
 | 
			
		||||
	DDRC |= (1<<6);
 | 
			
		||||
	PORTC |= (1<<6);
 | 
			
		||||
	gpio_set_pin_output(C6);
 | 
			
		||||
	gpio_write_pin_high(C6);
 | 
			
		||||
 | 
			
		||||
	DDRD |= (1<<4);
 | 
			
		||||
	PORTD |= (1<<4);
 | 
			
		||||
	gpio_set_pin_output(D4);
 | 
			
		||||
	gpio_write_pin_high(D4);
 | 
			
		||||
 | 
			
		||||
	DDRE |= (1<<6);
 | 
			
		||||
	PORTE |= (1<<6);
 | 
			
		||||
	gpio_set_pin_output(E6);
 | 
			
		||||
	gpio_write_pin_high(E6);
 | 
			
		||||
 | 
			
		||||
	DDRB |= (1<<4);
 | 
			
		||||
	PORTB |= (1<<4);
 | 
			
		||||
	gpio_set_pin_output(B4);
 | 
			
		||||
	gpio_write_pin_high(B4);
 | 
			
		||||
 | 
			
		||||
	DDRD |= (1<<6);
 | 
			
		||||
	PORTD |= (1<<6);
 | 
			
		||||
	gpio_set_pin_output(D6);
 | 
			
		||||
	gpio_write_pin_high(D6);
 | 
			
		||||
	// */
 | 
			
		||||
 | 
			
		||||
	DDRD |= (1<<5);
 | 
			
		||||
	DDRB |= (1<<6);
 | 
			
		||||
	DDRB |= (1<<0);
 | 
			
		||||
	gpio_set_pin_output(D5);
 | 
			
		||||
	gpio_set_pin_output(B6);
 | 
			
		||||
	gpio_set_pin_output(B0);
 | 
			
		||||
	//led_set_layer(0);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void matrix_init_user(void) {
 | 
			
		||||
	led_init_ports_user();
 | 
			
		||||
 | 
			
		||||
	PORTB |= (1 << 7);
 | 
			
		||||
	DDRB &= ~(1<<7);
 | 
			
		||||
	gpio_write_pin_high(B7);
 | 
			
		||||
	gpio_set_pin_input(B7);
 | 
			
		||||
 | 
			
		||||
	PORTD |= (1<<7);
 | 
			
		||||
	PORTC |= (1<<6);
 | 
			
		||||
	PORTC |= (1<<7);
 | 
			
		||||
	PORTD |= (1<<4);
 | 
			
		||||
	PORTE |= (1<<6);
 | 
			
		||||
	PORTB |= (1<<4);
 | 
			
		||||
	PORTD |= (1<<6);
 | 
			
		||||
	gpio_write_pin_high(D7);
 | 
			
		||||
	gpio_write_pin_high(C6);
 | 
			
		||||
	gpio_write_pin_high(C7);
 | 
			
		||||
	gpio_write_pin_high(D4);
 | 
			
		||||
	gpio_write_pin_high(E6);
 | 
			
		||||
	gpio_write_pin_high(B4);
 | 
			
		||||
	gpio_write_pin_high(D6);
 | 
			
		||||
 | 
			
		||||
	set_layer_led(0);
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -61,51 +61,51 @@ void set_switch_led(int ledId, bool state) {
 | 
			
		|||
	if(state) {
 | 
			
		||||
		switch(ledId) {
 | 
			
		||||
			case 1:
 | 
			
		||||
				PORTD |= (1<<7);
 | 
			
		||||
				gpio_write_pin_high(D7);
 | 
			
		||||
				break;
 | 
			
		||||
			case 2:
 | 
			
		||||
				if((PINB & (1 << 7)) != 0) {
 | 
			
		||||
					PORTC |= (1<<6);
 | 
			
		||||
				if(gpio_read_pin(B7)) {
 | 
			
		||||
					gpio_write_pin_high(C6);
 | 
			
		||||
				} else {
 | 
			
		||||
					PORTC |= (1<<7);
 | 
			
		||||
					gpio_write_pin_high(C7);
 | 
			
		||||
				}
 | 
			
		||||
				break;
 | 
			
		||||
			case 3:
 | 
			
		||||
				PORTD |= (1<<4);
 | 
			
		||||
				gpio_write_pin_high(D4);
 | 
			
		||||
				break;
 | 
			
		||||
			case 4:
 | 
			
		||||
				PORTE |= (1<<6);
 | 
			
		||||
				gpio_write_pin_high(E6);
 | 
			
		||||
				break;
 | 
			
		||||
			case 5:
 | 
			
		||||
				PORTB |= (1<<4);
 | 
			
		||||
				gpio_write_pin_high(B4);
 | 
			
		||||
				break;
 | 
			
		||||
			case 6:
 | 
			
		||||
				PORTD |= (1<<6);
 | 
			
		||||
				gpio_write_pin_high(D6);
 | 
			
		||||
				break;
 | 
			
		||||
		}
 | 
			
		||||
	} else {
 | 
			
		||||
		switch(ledId) {
 | 
			
		||||
			case 1:
 | 
			
		||||
				PORTD &= ~(1<<7);
 | 
			
		||||
				gpio_write_pin_low(D7);
 | 
			
		||||
				break;
 | 
			
		||||
			case 2:
 | 
			
		||||
				if((PINB & (1 << 7)) != 0) {
 | 
			
		||||
					PORTC &= ~(1<<6);
 | 
			
		||||
				if(gpio_read_pin(B7)) {
 | 
			
		||||
					gpio_write_pin_low(C6);
 | 
			
		||||
				} else {
 | 
			
		||||
					PORTC &= ~(1<<7);
 | 
			
		||||
					gpio_write_pin_low(C7);
 | 
			
		||||
				}
 | 
			
		||||
				break;
 | 
			
		||||
			case 3:
 | 
			
		||||
				PORTD &= ~(1<<4);
 | 
			
		||||
				gpio_write_pin_low(D4);
 | 
			
		||||
				break;
 | 
			
		||||
			case 4:
 | 
			
		||||
				PORTE &= ~(1<<6);
 | 
			
		||||
				gpio_write_pin_low(E6);
 | 
			
		||||
				break;
 | 
			
		||||
			case 5:
 | 
			
		||||
				PORTB &= ~(1<<4);
 | 
			
		||||
				gpio_write_pin_low(B4);
 | 
			
		||||
				break;
 | 
			
		||||
			case 6:
 | 
			
		||||
				PORTD &= ~(1<<6);
 | 
			
		||||
				gpio_write_pin_low(D6);
 | 
			
		||||
				break;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			@ -113,88 +113,88 @@ void set_switch_led(int ledId, bool state) {
 | 
			
		|||
 | 
			
		||||
 | 
			
		||||
void set_layer_led(int layerId) {
 | 
			
		||||
	PORTD |= (1<<5);
 | 
			
		||||
	PORTB &= ~(1<<6);
 | 
			
		||||
	PORTB |= (1<<0);
 | 
			
		||||
	gpio_write_pin_high(D5);
 | 
			
		||||
	gpio_write_pin_low(B6);
 | 
			
		||||
	gpio_write_pin_high(B0);
 | 
			
		||||
	switch(layerId) {
 | 
			
		||||
		case 0:
 | 
			
		||||
			PORTD &= ~(1<<5);
 | 
			
		||||
			gpio_write_pin_low(D5);
 | 
			
		||||
			break;
 | 
			
		||||
		case 1:
 | 
			
		||||
			PORTB |= (1<<6);
 | 
			
		||||
			gpio_write_pin_high(B6);
 | 
			
		||||
			break;
 | 
			
		||||
		case 2:
 | 
			
		||||
			PORTB &= ~(1<<0);
 | 
			
		||||
			gpio_write_pin_low(B0);
 | 
			
		||||
			break;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void led_init_ports_user(void) {
 | 
			
		||||
  // led voor switch #1
 | 
			
		||||
	DDRD |= (1<<7);
 | 
			
		||||
	PORTD &= ~(1<<7);
 | 
			
		||||
	gpio_set_pin_output(D7);
 | 
			
		||||
	gpio_write_pin_low(D7);
 | 
			
		||||
 | 
			
		||||
  // led voor switch #2
 | 
			
		||||
	DDRC |= (1<<6);
 | 
			
		||||
	DDRC |= (1<<7);
 | 
			
		||||
	PORTC &= ~(1<<6);
 | 
			
		||||
	PORTC &= ~(1<<7);
 | 
			
		||||
	gpio_set_pin_output(C6);
 | 
			
		||||
	gpio_set_pin_output(C7);
 | 
			
		||||
	gpio_write_pin_low(C6);
 | 
			
		||||
	gpio_write_pin_low(C7);
 | 
			
		||||
 | 
			
		||||
  // led voor switch #3
 | 
			
		||||
	DDRD |= (1<<4);
 | 
			
		||||
	PORTD &= ~(1<<4);
 | 
			
		||||
	gpio_set_pin_output(D4);
 | 
			
		||||
	gpio_write_pin_low(D4);
 | 
			
		||||
 | 
			
		||||
  // led voor switch #4
 | 
			
		||||
	DDRE |= (1<<6);
 | 
			
		||||
	PORTE &= ~(1<<6);
 | 
			
		||||
	gpio_set_pin_output(E6);
 | 
			
		||||
	gpio_write_pin_low(E6);
 | 
			
		||||
 | 
			
		||||
  // led voor switch #5
 | 
			
		||||
	DDRB |= (1<<4);
 | 
			
		||||
	PORTB &= ~(1<<4);
 | 
			
		||||
	gpio_set_pin_output(B4);
 | 
			
		||||
	gpio_write_pin_low(B4);
 | 
			
		||||
 | 
			
		||||
  // led voor switch #6
 | 
			
		||||
	DDRD |= (1<<6);
 | 
			
		||||
	PORTD &= ~(1<<6);
 | 
			
		||||
	gpio_set_pin_output(D6);
 | 
			
		||||
	gpio_write_pin_low(D6);
 | 
			
		||||
 | 
			
		||||
	/*
 | 
			
		||||
	DDRD |= (1<<7);
 | 
			
		||||
	PORTD |= (1<<7);
 | 
			
		||||
	gpio_set_pin_output(D7);
 | 
			
		||||
	gpio_write_pin_high(D7);
 | 
			
		||||
 | 
			
		||||
	DDRC |= (1<<6);
 | 
			
		||||
	PORTC |= (1<<6);
 | 
			
		||||
	gpio_set_pin_output(C6);
 | 
			
		||||
	gpio_write_pin_high(C6);
 | 
			
		||||
 | 
			
		||||
	DDRD |= (1<<4);
 | 
			
		||||
	PORTD |= (1<<4);
 | 
			
		||||
	gpio_set_pin_output(D4);
 | 
			
		||||
	gpio_write_pin_high(D4);
 | 
			
		||||
 | 
			
		||||
	DDRE |= (1<<6);
 | 
			
		||||
	PORTE |= (1<<6);
 | 
			
		||||
	gpio_set_pin_output(E6);
 | 
			
		||||
	gpio_write_pin_high(E6);
 | 
			
		||||
 | 
			
		||||
	DDRB |= (1<<4);
 | 
			
		||||
	PORTB |= (1<<4);
 | 
			
		||||
	gpio_set_pin_output(B4);
 | 
			
		||||
	gpio_write_pin_high(B4);
 | 
			
		||||
 | 
			
		||||
	DDRD |= (1<<6);
 | 
			
		||||
	PORTD |= (1<<6);
 | 
			
		||||
	gpio_set_pin_output(D6);
 | 
			
		||||
	gpio_write_pin_high(D6);
 | 
			
		||||
	// */
 | 
			
		||||
 | 
			
		||||
	DDRD |= (1<<5);
 | 
			
		||||
	DDRB |= (1<<6);
 | 
			
		||||
	DDRB |= (1<<0);
 | 
			
		||||
	gpio_set_pin_output(D5);
 | 
			
		||||
	gpio_set_pin_output(B6);
 | 
			
		||||
	gpio_set_pin_output(B0);
 | 
			
		||||
	//led_set_layer(0);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void matrix_init_user(void) {
 | 
			
		||||
	led_init_ports_user();
 | 
			
		||||
 | 
			
		||||
	PORTB |= (1 << 7);
 | 
			
		||||
	DDRB &= ~(1<<7);
 | 
			
		||||
	gpio_write_pin_high(B7);
 | 
			
		||||
	gpio_set_pin_input(B7);
 | 
			
		||||
 | 
			
		||||
	PORTD |= (1<<7);
 | 
			
		||||
	PORTC |= (1<<6);
 | 
			
		||||
	PORTC |= (1<<7);
 | 
			
		||||
	PORTD |= (1<<4);
 | 
			
		||||
	PORTE |= (1<<6);
 | 
			
		||||
	PORTB |= (1<<4);
 | 
			
		||||
	PORTD |= (1<<6);
 | 
			
		||||
	gpio_write_pin_high(D7);
 | 
			
		||||
	gpio_write_pin_high(C6);
 | 
			
		||||
	gpio_write_pin_high(C7);
 | 
			
		||||
	gpio_write_pin_high(D4);
 | 
			
		||||
	gpio_write_pin_high(E6);
 | 
			
		||||
	gpio_write_pin_high(B4);
 | 
			
		||||
	gpio_write_pin_high(D6);
 | 
			
		||||
 | 
			
		||||
	set_layer_led(0);
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue