Commit 93cb7e9780979196f7b563006494784c7c4d1655
1 parent
a072f3c2
Les quatre boutons gauche, haut, droite et gauche fonctionnent, moyennant la des…
…activation d'un registre dans le setup_hardware
Showing
3 changed files
with
26 additions
and
14 deletions
Show diff stats
src/lufa-LUFA-170418/LUFA/Drivers/Board/AVR8/PINGUI/Buttons.h
... | ... | @@ -124,7 +124,7 @@ |
124 | 124 | static inline void Buttons_Init_BAS(void) |
125 | 125 | { |
126 | 126 | DDRF &= ~BUTTONS_BAS; |
127 | - PORTF |= BUTTONS_BAS; | |
127 | + //PORTF |= BUTTONS_BAS; | |
128 | 128 | } |
129 | 129 | |
130 | 130 | static inline void Buttons_Disable_BAS(void) |
... | ... | @@ -138,7 +138,7 @@ |
138 | 138 | static inline void Buttons_Init_DROITE(void) |
139 | 139 | { |
140 | 140 | DDRF &= ~BUTTONS_DROITE; |
141 | - PORTF |= BUTTONS_DROITE; | |
141 | + //PORTF |= BUTTONS_DROITE; | |
142 | 142 | } |
143 | 143 | |
144 | 144 | static inline void Buttons_Disable_DROITE(void) |
... | ... | @@ -152,7 +152,7 @@ |
152 | 152 | static inline void Buttons_Init_GAUCHE(void) |
153 | 153 | { |
154 | 154 | DDRF &= ~BUTTONS_GAUCHE; |
155 | - PORTF |= BUTTONS_GAUCHE; | |
155 | + // PORTF |= BUTTONS_GAUCHE; | |
156 | 156 | } |
157 | 157 | |
158 | 158 | static inline void Buttons_Disable_GAUCHE(void) |
... | ... | @@ -198,7 +198,7 @@ |
198 | 198 | static inline uint8_t Buttons_GetStatus_BAS(void) ATTR_WARN_UNUSED_RESULT; |
199 | 199 | static inline uint8_t Buttons_GetStatus_BAS(void) |
200 | 200 | { |
201 | - return ((PINF & BUTTONS_BAS) ^ BUTTONS_BAS); | |
201 | + return (PINF & BUTTONS_BAS) ; | |
202 | 202 | } |
203 | 203 | |
204 | 204 | //DROITE |
... | ... | @@ -206,7 +206,7 @@ |
206 | 206 | static inline uint8_t Buttons_GetStatus_DROITE(void) ATTR_WARN_UNUSED_RESULT; |
207 | 207 | static inline uint8_t Buttons_GetStatus_DROITE(void) |
208 | 208 | { |
209 | - return ((PINF & BUTTONS_DROITE) ^ BUTTONS_DROITE); | |
209 | + return (PINF & BUTTONS_DROITE) ; | |
210 | 210 | } |
211 | 211 | |
212 | 212 | //GAUCHE |
... | ... | @@ -214,8 +214,9 @@ |
214 | 214 | static inline uint8_t Buttons_GetStatus_GAUCHE(void) ATTR_WARN_UNUSED_RESULT; |
215 | 215 | static inline uint8_t Buttons_GetStatus_GAUCHE(void) |
216 | 216 | { |
217 | - return ((PINF & BUTTONS_GAUCHE) ^ BUTTONS_GAUCHE); | |
217 | + return (PINF & BUTTONS_GAUCHE); | |
218 | 218 | } |
219 | +//Seul le bouton haut est fonctionnel, il faut changer les init et les return de chaque bouton (sauf le bouton du joystick) de la meme maniere | |
219 | 220 | |
220 | 221 | //HAUT |
221 | 222 | ... | ... |
src/lufa-LUFA-170418/PolytechLille/Manette/Descriptors.c
... | ... | @@ -149,9 +149,9 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor = |
149 | 149 | |
150 | 150 | .TotalEndpoints = 1, |
151 | 151 | |
152 | - .Class = HID_CSCP_HIDClass, | |
153 | - .SubClass = HID_CSCP_NonBootSubclass, | |
154 | - .Protocol = HID_CSCP_NonBootProtocol, | |
152 | + .Class = USB_CSCP_VendorSpecificClass, | |
153 | + .SubClass = 0, | |
154 | + .Protocol = 0, | |
155 | 155 | |
156 | 156 | .InterfaceStrIndex = NO_DESCRIPTOR |
157 | 157 | }, |
... | ... | @@ -177,9 +177,9 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor = |
177 | 177 | |
178 | 178 | .TotalEndpoints = 1, |
179 | 179 | |
180 | - .Class = HID_CSCP_HIDClass, | |
181 | - .SubClass = HID_CSCP_NonBootSubclass, | |
182 | - .Protocol = HID_CSCP_NonBootProtocol, | |
180 | + .Class = USB_CSCP_VendorSpecificClass, | |
181 | + .SubClass = 0, | |
182 | + .Protocol = 0, | |
183 | 183 | |
184 | 184 | .InterfaceStrIndex = NO_DESCRIPTOR |
185 | 185 | }, | ... | ... |
src/lufa-LUFA-170418/PolytechLille/Manette/Manette.c
... | ... | @@ -115,6 +115,8 @@ void SetupHardware(void) |
115 | 115 | Buttons_Init_GAUCHE(); |
116 | 116 | Buttons_Init_STOP(); |
117 | 117 | Buttons_Init_SEL(); |
118 | + MCUCR|=(1<<JTD); | |
119 | + MCUCR|=(1<<JTD); | |
118 | 120 | } |
119 | 121 | |
120 | 122 | /** Event handler for the library USB Connection event. */ |
... | ... | @@ -172,13 +174,22 @@ bool CALLBACK_HID_Device_CreateHIDReport(USB_ClassInfo_HID_Device_t* const HIDIn |
172 | 174 | USB_JoystickReport_Data_t* JoystickReport = (USB_JoystickReport_Data_t*)ReportData; |
173 | 175 | |
174 | 176 | uint8_t JoyStatus_LCL = Joystick_GetStatus(); |
175 | - uint8_t ButtonStatus_LCL = Buttons_GetStatus_HAUT(); // poir les boutons | |
177 | + uint8_t ButtonStatus_LCL_HAUT = Buttons_GetStatus_HAUT(); // poir bouton_haut | |
178 | + uint8_t ButtonStatus_LCL_GAUCHE = Buttons_GetStatus_GAUCHE(); //pour bouton_gauche | |
176 | 179 | |
180 | + uint8_t ButtonStatus_LCL_BAS = Buttons_GetStatus_BAS(); | |
181 | + uint8_t ButtonStatus_LCL_DROITE = Buttons_GetStatus_DROITE(); | |
177 | 182 | |
178 | 183 | JoystickReport->X = JoyStatus_LCL >> 4; |
179 | 184 | JoystickReport->Y = JoyStatus_LCL & 0x0F; |
180 | - if (ButtonStatus_LCL & BUTTONS_HAUT) | |
185 | + if (ButtonStatus_LCL_HAUT & BUTTONS_HAUT) | |
181 | 186 | { JoystickReport->Button |= ( 1<<0);} |
187 | + if (ButtonStatus_LCL_GAUCHE & BUTTONS_GAUCHE) | |
188 | + { JoystickReport->Button |= ( 1<<1);} | |
189 | + if (ButtonStatus_LCL_BAS & BUTTONS_BAS) | |
190 | + { JoystickReport->Button |= ( 1<<2);} | |
191 | + if (ButtonStatus_LCL_DROITE & BUTTONS_DROITE) | |
192 | + { JoystickReport->Button |= ( 1<<3);} | |
182 | 193 | |
183 | 194 | |
184 | 195 | // if (JoyStatus_LCL & JOY_LEFT) | ... | ... |