Blame view

Base_core/user_driver/led.c 2.54 KB
95ce2328   李外   完成USB移植,测试正常,
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
  
  #include "HW_MCUIO.h"//#include "stm32f4xx_hal.h"
  #include "platform.h"
  #include "function.h"
  
  #ifdef 	BASE_HARDWARE_T2
  	#define LED1_PORT  	GPIOE
  	#define LED2_PORT  	GPIOE
  	#define LED1        GPIO_PIN_10
  	#define LED2        GPIO_PIN_8
  #elif defined(BASE_HARDWARE_200S)
  	#define LED1_PORT  	GPIOE
  	#define LED2_PORT  	GPIOE
  	#define LED1        GPIO_PIN_3
  	#define LED2        GPIO_PIN_2	
  #elif defined(BASE_HARDWARE_100S)
  	#define LED1_PORT  	GPIOA
  	#define LED2_PORT  	GPIOA
  	#define LED1        GPIO_PIN_2//1
  	#define LED2        GPIO_PIN_1//2		
  	
  #endif
  
  /*
  LEDs are low level drivers,
  INPUT: 
  	1- on
  	2- flashing
  	0- off 
  */
  void led1_control(unsigned char type)
  {
  		if(type==1)
  			HW_GPIO_ResetPin(LED1_PORT,LED1);
  		else if(type==2)
  			HW_GPIO_TogglePin(LED1_PORT,LED1);
  		else
  			HW_GPIO_SetPin(LED1_PORT,LED1);	
  }
  
  
  void led2_control(unsigned char type)
  {
  		if(type==1)
  			HW_GPIO_ResetPin(LED2_PORT,LED2);
  		else if(type==2)
  			HW_GPIO_TogglePin(LED2_PORT,LED2);
  		else
  			HW_GPIO_SetPin(LED2_PORT,LED2);				
  }
  
  
  
  
  
  
  
  //------------------------------ led ----------------------------------------
  /*实测:此处定义的LED1-4T2面板的对应:
  * LED1-1;			LED2-2
  * LED3-3 bule ;LED4-3Red
  */
  
  /*
  #define 	LED1_PIN	GPIO_PIN_11
  #define 	LED1_PORT	GPIOE
  #define 	LED2_PIN	GPIO_PIN_10
  #define 	LED2_PORT	GPIOE
  
  #define 	LED3_PIN	GPIO_PIN_8
  #define 	LED3_PORT	GPIOE
  #define 	LED4_PIN	GPIO_PIN_9
  #define 	LED4_PORT	GPIOE
  
  void display_led_ctrl(unsigned char led_NO,unsigned char status)
  {
  		GPIO_TypeDef *led_port;
  		uint16_t led_pin;
  		switch(led_NO){
  			
  			case LED_NO1:
  				led_port = LED1_PORT;
  				led_pin = LED1_PIN;
  				break;
  			
  			case LED_NO2:
  				led_port = LED2_PORT;
  				led_pin = LED2_PIN;							
  				break;
  			
  			case LED_NO3:
  				led_port = LED3_PORT;
  				led_pin = LED3_PIN;							
  				break;	
  			
  			case LED_NO4:
  				led_port = LED4_PORT;
  				led_pin = LED4_PIN;							
  				break;			
  						
  			default: return;//break;	//led编号不合法,
  		}//sw
  	
  		switch(status){
  			case LED_STA_OFF: //off
  				HAL_GPIO_WritePin(led_port, led_pin, GPIO_PIN_SET);
  			break;
  			
  			case LED_STA_ON://on
  				HAL_GPIO_WritePin(led_port, led_pin, GPIO_PIN_RESET);
  				break;
  			
  			case LED_STA_TOG://trig
  				HAL_GPIO_TogglePin(led_port, led_pin);
  				break;
  			
  			default:break;
  		}
  }
  
  */
  
  
  
  /* --------------------------- LCD back light ------------------------------------------
  lcd背光控制
  */
  void lcd_back_light_ctrl( unsigned char on_off)
  {
  	if(on_off)
  		HW_GPIO_SetPin(GPIOB, GPIO_PIN_6);
  	else
  		HW_GPIO_ResetPin(GPIOB, GPIO_PIN_6);
  }