assets
This commit is contained in:
@@ -24,6 +24,7 @@
|
|||||||
#include "usart.h"
|
#include "usart.h"
|
||||||
#include "usb_device.h"
|
#include "usb_device.h"
|
||||||
#include "gpio.h"
|
#include "gpio.h"
|
||||||
|
#include <stdbool.h>
|
||||||
|
|
||||||
/* Private includes ----------------------------------------------------------*/
|
/* Private includes ----------------------------------------------------------*/
|
||||||
/* USER CODE BEGIN Includes */
|
/* USER CODE BEGIN Includes */
|
||||||
@@ -33,11 +34,10 @@
|
|||||||
/* Private typedef -----------------------------------------------------------*/
|
/* Private typedef -----------------------------------------------------------*/
|
||||||
/* USER CODE BEGIN PTD */
|
/* USER CODE BEGIN PTD */
|
||||||
|
|
||||||
// HID (Human Interface Device) report structure
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
uint8_t MODIFIER; // Modifier keys (e.g., Ctrl, Shift, Alt, GUI/Win)
|
uint8_t MODIFIER; // Modifier keys (Ctrl, Shift, Alt, Win)
|
||||||
uint8_t RESERVED; // Reserved for alignment, always set to 0
|
uint8_t RESERVED; // Always 0
|
||||||
uint8_t KEYPRESS[12]; // Array holding up to 12 keycodes being pressed
|
uint8_t KEYPRESS[12]; // Up to 12 keycodes
|
||||||
} __attribute__((packed)) HIDReport;
|
} __attribute__((packed)) HIDReport;
|
||||||
|
|
||||||
|
|
||||||
@@ -55,6 +55,42 @@ typedef struct {
|
|||||||
uint8_t KEYPRESS[12]; // Keypress data (similar to HIDReport, but for UART transmission)
|
uint8_t KEYPRESS[12]; // Keypress data (similar to HIDReport, but for UART transmission)
|
||||||
} __attribute__((packed)) UARTMessage;
|
} __attribute__((packed)) UARTMessage;
|
||||||
|
|
||||||
|
#define PACKET_SIZE 12
|
||||||
|
#define QUEUE_CAPACITY 32
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
uint8_t data[QUEUE_CAPACITY][PACKET_SIZE];
|
||||||
|
volatile uint8_t head; // accessed in main
|
||||||
|
volatile uint8_t tail; // accessed in ISR
|
||||||
|
volatile uint8_t count; // optional, only if needed
|
||||||
|
} PacketQueue;
|
||||||
|
|
||||||
|
// Initialize
|
||||||
|
void pq_init(PacketQueue *q){
|
||||||
|
q->head = 0;
|
||||||
|
q->tail = 0;
|
||||||
|
q->count = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Called from ISR
|
||||||
|
bool pq_push(PacketQueue *q, const uint8_t packet[PACKET_SIZE]){
|
||||||
|
uint8_t nextTail = (q->tail + 1) % QUEUE_CAPACITY;
|
||||||
|
if(nextTail == q->head) return false; // queue full
|
||||||
|
|
||||||
|
memcpy(q->data[q->tail], packet, PACKET_SIZE);
|
||||||
|
q->tail = nextTail;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Called from main
|
||||||
|
bool pq_pop(PacketQueue *q, uint8_t out_packet[PACKET_SIZE]){
|
||||||
|
if(q->head == q->tail) return false; // queue empty
|
||||||
|
|
||||||
|
memcpy(out_packet, q->data[q->head], PACKET_SIZE);
|
||||||
|
q->head = (q->head + 1) % QUEUE_CAPACITY;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
/* USER CODE END PTD */
|
/* USER CODE END PTD */
|
||||||
|
|
||||||
/* Private define ------------------------------------------------------------*/
|
/* Private define ------------------------------------------------------------*/
|
||||||
@@ -72,6 +108,7 @@ typedef struct {
|
|||||||
#define MODE_ACTIVE 2
|
#define MODE_ACTIVE 2
|
||||||
#define MODE_DEBUG 3
|
#define MODE_DEBUG 3
|
||||||
#define UART_RX_BUFF_SIZE 64
|
#define UART_RX_BUFF_SIZE 64
|
||||||
|
#define QUEUE_SIZ 8
|
||||||
/* USER CODE END PM */
|
/* USER CODE END PM */
|
||||||
|
|
||||||
/* Private variables ---------------------------------------------------------*/
|
/* Private variables ---------------------------------------------------------*/
|
||||||
@@ -117,6 +154,8 @@ uint16_t DEPTH = 0;
|
|||||||
uint16_t PORT_DEPTH[] = {0xFF, 0xFF, 0xFF, 0xFF};
|
uint16_t PORT_DEPTH[] = {0xFF, 0xFF, 0xFF, 0xFF};
|
||||||
UART_HandleTypeDef* PARENT;
|
UART_HandleTypeDef* PARENT;
|
||||||
UART_HandleTypeDef* PORTS[] = {&huart5, &huart1, &huart2, &huart4};
|
UART_HandleTypeDef* PORTS[] = {&huart5, &huart1, &huart2, &huart4};
|
||||||
|
uint8_t KEYSTATE_CHANGED_FLAG = 0;
|
||||||
|
uint8_t KEYSTATE[ROW][COL];
|
||||||
//North East South West
|
//North East South West
|
||||||
UARTMessage reportBuff;
|
UARTMessage reportBuff;
|
||||||
|
|
||||||
@@ -128,6 +167,15 @@ volatile int uartUpdateFlag = 0;
|
|||||||
// Encoder state (TIM3 in encoder mode on PA6/PA7)
|
// Encoder state (TIM3 in encoder mode on PA6/PA7)
|
||||||
volatile int32_t LAST_ENCODER_COUNT = 0;
|
volatile int32_t LAST_ENCODER_COUNT = 0;
|
||||||
|
|
||||||
|
uint8_t UART_KEYSTATE[4][12];
|
||||||
|
|
||||||
|
|
||||||
|
PacketQueue huart1q;
|
||||||
|
PacketQueue huart2q;
|
||||||
|
PacketQueue huart4q;
|
||||||
|
PacketQueue huart5q;
|
||||||
|
|
||||||
|
|
||||||
/* USER CODE END PV */
|
/* USER CODE END PV */
|
||||||
|
|
||||||
/* Private function prototypes -----------------------------------------------*/
|
/* Private function prototypes -----------------------------------------------*/
|
||||||
@@ -142,6 +190,7 @@ void encoderProcess(void);
|
|||||||
void resetReport(void);
|
void resetReport(void);
|
||||||
void sendMessage(void);
|
void sendMessage(void);
|
||||||
void findBestParent();
|
void findBestParent();
|
||||||
|
void mergeChild();
|
||||||
/* USER CODE END PFP */
|
/* USER CODE END PFP */
|
||||||
|
|
||||||
/* Private user code ---------------------------------------------------------*/
|
/* Private user code ---------------------------------------------------------*/
|
||||||
@@ -194,9 +243,18 @@ int main(void)
|
|||||||
HAL_UART_Receive_DMA(&huart2, (uint8_t*)&RX2Msg, sizeof(UARTMessage));
|
HAL_UART_Receive_DMA(&huart2, (uint8_t*)&RX2Msg, sizeof(UARTMessage));
|
||||||
HAL_UART_Receive_DMA(&huart4, (uint8_t*)&RX4Msg, sizeof(UARTMessage));
|
HAL_UART_Receive_DMA(&huart4, (uint8_t*)&RX4Msg, sizeof(UARTMessage));
|
||||||
HAL_UART_Receive_DMA(&huart5, (uint8_t*)&RX5Msg, sizeof(UARTMessage));
|
HAL_UART_Receive_DMA(&huart5, (uint8_t*)&RX5Msg, sizeof(UARTMessage));
|
||||||
|
|
||||||
// Start TIM3 encoder (PA6/PA7) so we can read encoder delta
|
// Start TIM3 encoder (PA6/PA7) so we can read encoder delta
|
||||||
HAL_TIM_Encoder_Start(&htim3, TIM_CHANNEL_ALL);
|
HAL_TIM_Encoder_Start(&htim3, TIM_CHANNEL_ALL);
|
||||||
LAST_ENCODER_COUNT = __HAL_TIM_GET_COUNTER(&htim3);
|
LAST_ENCODER_COUNT = __HAL_TIM_GET_COUNTER(&htim3);
|
||||||
|
|
||||||
|
//Prealloc Kestate matrix
|
||||||
|
memset(KEYSTATE, 0, sizeof(KEYSTATE));
|
||||||
|
pq_init(&huart1q);
|
||||||
|
pq_init(&huart2q);
|
||||||
|
pq_init(&huart4q);
|
||||||
|
pq_init(&huart5q);
|
||||||
|
|
||||||
/* USER CODE END 2 */
|
/* USER CODE END 2 */
|
||||||
|
|
||||||
/* Infinite loop */
|
/* Infinite loop */
|
||||||
@@ -205,14 +263,18 @@ int main(void)
|
|||||||
{
|
{
|
||||||
switch (MODE){
|
switch (MODE){
|
||||||
case MODE_ACTIVE:
|
case MODE_ACTIVE:
|
||||||
|
KEYSTATE_CHANGED_FLAG = 1;
|
||||||
resetReport();
|
resetReport();
|
||||||
matrixScan();
|
matrixScan();
|
||||||
encoderProcess();
|
mergeChild();
|
||||||
UARTMessage UARTREPORT;
|
//encoderProcess();
|
||||||
UARTREPORT.DEPTH = DEPTH;
|
if(KEYSTATE_CHANGED_FLAG == 1){
|
||||||
UARTREPORT.TYPE = 0xEE;
|
UARTMessage UARTREPORT;
|
||||||
memcpy(UARTREPORT.KEYPRESS, REPORT.KEYPRESS, sizeof(UARTREPORT.KEYPRESS));
|
UARTREPORT.DEPTH = DEPTH;
|
||||||
HAL_UART_Transmit_DMA(PARENT, (uint8_t*)&UARTREPORT, sizeof(UARTREPORT));
|
UARTREPORT.TYPE = 0xEE;
|
||||||
|
memcpy(UARTREPORT.KEYPRESS, REPORT.KEYPRESS, sizeof(UARTREPORT.KEYPRESS));
|
||||||
|
HAL_UART_Transmit_DMA(PARENT, (uint8_t*)&UARTREPORT, sizeof(UARTREPORT));
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MODE_INACTIVE:
|
case MODE_INACTIVE:
|
||||||
@@ -223,6 +285,8 @@ int main(void)
|
|||||||
}else{
|
}else{
|
||||||
//TODO: Look for a parent module...
|
//TODO: Look for a parent module...
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
UARTMessage REQ;
|
UARTMessage REQ;
|
||||||
REQ.DEPTH = 0;
|
REQ.DEPTH = 0;
|
||||||
REQ.TYPE = 0xFF; //Message code for request is 0xFF
|
REQ.TYPE = 0xFF; //Message code for request is 0xFF
|
||||||
@@ -241,14 +305,8 @@ int main(void)
|
|||||||
case MODE_MAINBOARD:
|
case MODE_MAINBOARD:
|
||||||
resetReport();
|
resetReport();
|
||||||
matrixScan();//Something related to this making the key stick. Likely due to race conditions
|
matrixScan();//Something related to this making the key stick. Likely due to race conditions
|
||||||
encoderProcess();
|
mergeChild();
|
||||||
if(uartUpdateFlag){
|
//encoderProcess();
|
||||||
for(int i = 0; i < 12; i++){
|
|
||||||
REPORT.KEYPRESS[i] |= uartBuffer.KEYPRESS[i];
|
|
||||||
}
|
|
||||||
uartUpdateFlag = 0;
|
|
||||||
memset(uartBuffer.KEYPRESS, 0, 12);
|
|
||||||
}
|
|
||||||
USBD_HID_SendReport(&hUsbDeviceFS, (uint8_t*)&REPORT, sizeof(REPORT));
|
USBD_HID_SendReport(&hUsbDeviceFS, (uint8_t*)&REPORT, sizeof(REPORT));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -256,7 +314,7 @@ int main(void)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
HAL_Delay(100);
|
HAL_Delay(20);
|
||||||
/* USER CODE END WHILE */
|
/* USER CODE END WHILE */
|
||||||
|
|
||||||
/* USER CODE BEGIN 3 */
|
/* USER CODE BEGIN 3 */
|
||||||
@@ -264,6 +322,31 @@ int main(void)
|
|||||||
/* USER CODE END 3 */
|
/* USER CODE END 3 */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void mergeChild(){
|
||||||
|
uint8_t packet[12];
|
||||||
|
if (pq_pop(&huart1q, packet)) {
|
||||||
|
memcpy(UART_KEYSTATE[1], packet, 12);
|
||||||
|
KEYSTATE_CHANGED_FLAG = 1;
|
||||||
|
}
|
||||||
|
if (pq_pop(&huart2q, packet)) {
|
||||||
|
memcpy(UART_KEYSTATE[2], packet, 12);
|
||||||
|
KEYSTATE_CHANGED_FLAG = 1;
|
||||||
|
}
|
||||||
|
if (pq_pop(&huart4q, packet)) {
|
||||||
|
memcpy(UART_KEYSTATE[3], packet, 12);
|
||||||
|
KEYSTATE_CHANGED_FLAG = 1;
|
||||||
|
}
|
||||||
|
if (pq_pop(&huart5q, packet)) {
|
||||||
|
memcpy(UART_KEYSTATE[0], packet, 12);
|
||||||
|
KEYSTATE_CHANGED_FLAG = 1;
|
||||||
|
}
|
||||||
|
for(int i = 0; i < 4; i++){
|
||||||
|
for(int j = 0; j < 12; j++){
|
||||||
|
REPORT.KEYPRESS[j] |= UART_KEYSTATE[i][j];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief System Clock Configuration
|
* @brief System Clock Configuration
|
||||||
* @retval None
|
* @retval None
|
||||||
@@ -404,12 +487,22 @@ void handleUARTMessages(uint8_t *data, UART_HandleTypeDef *sender) {
|
|||||||
|
|
||||||
case 0xEE:
|
case 0xEE:
|
||||||
//TODO: Append message to the thingy
|
//TODO: Append message to the thingy
|
||||||
if (MODE != MODE_INACTIVE) {
|
// if (MODE != MODE_INACTIVE) {
|
||||||
for (int i = 0; i < sizeof(REPORT.KEYPRESS); i++) {
|
// for (int i = 0; i < sizeof(REPORT.KEYPRESS); i++) {
|
||||||
uartBuffer.KEYPRESS[i] |= msg.KEYPRESS[i];
|
// uartBuffer.KEYPRESS[i] |= msg.KEYPRESS[i];
|
||||||
}
|
// }
|
||||||
uartUpdateFlag = 1;
|
// uartUpdateFlag = 1;
|
||||||
}
|
// }
|
||||||
|
if(sender == &huart5) {
|
||||||
|
pq_push(&huart5q, msg.KEYPRESS);
|
||||||
|
} else if(sender == &huart1) {
|
||||||
|
pq_push(&huart1q, msg.KEYPRESS);
|
||||||
|
} else if(sender == &huart2) {
|
||||||
|
pq_push(&huart2q, msg.KEYPRESS);
|
||||||
|
} else if(sender == &huart4) {
|
||||||
|
pq_push(&huart4q, msg.KEYPRESS);
|
||||||
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
@@ -428,18 +521,26 @@ void addUSBReport(uint8_t usageID){
|
|||||||
}
|
}
|
||||||
|
|
||||||
void matrixScan(void){
|
void matrixScan(void){
|
||||||
|
|
||||||
for (uint8_t col = 0; col < COL; col++){
|
for (uint8_t col = 0; col < COL; col++){
|
||||||
HAL_GPIO_WritePin(COLUMN_PINS[col].GPIOx, COLUMN_PINS[col].PIN, GPIO_PIN_SET);
|
HAL_GPIO_WritePin(COLUMN_PINS[col].GPIOx, COLUMN_PINS[col].PIN, GPIO_PIN_SET);
|
||||||
HAL_Delay(1);
|
HAL_Delay(1);
|
||||||
for(uint8_t row = 0; row < ROW; row++){
|
for(uint8_t row = 0; row < ROW; row++){
|
||||||
if(HAL_GPIO_ReadPin(ROW_PINS[row].GPIOx, ROW_PINS[row].PIN)){
|
uint8_t new_key = HAL_GPIO_ReadPin(ROW_PINS[row].GPIOx, ROW_PINS[row].PIN);
|
||||||
addUSBReport(KEYCODES[row][col]);
|
if(new_key != KEYSTATE[row][col]){
|
||||||
|
KEYSTATE_CHANGED_FLAG = 1;
|
||||||
|
KEYSTATE[row][col] = new_key;
|
||||||
|
}
|
||||||
|
if(new_key){
|
||||||
|
addUSBReport(KEYCODES[row][col]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
HAL_GPIO_WritePin(COLUMN_PINS[col].GPIOx, COLUMN_PINS[col].PIN, GPIO_PIN_RESET);
|
HAL_GPIO_WritePin(COLUMN_PINS[col].GPIOx, COLUMN_PINS[col].PIN, GPIO_PIN_RESET);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Read TIM3 encoder counter, calculate delta and add corresponding keycodes
|
// Read TIM3 encoder counter, calculate delta and add corresponding keycodes
|
||||||
void encoderProcess(void){
|
void encoderProcess(void){
|
||||||
int32_t cnt = (int32_t)__HAL_TIM_GET_COUNTER(&htim3);
|
int32_t cnt = (int32_t)__HAL_TIM_GET_COUNTER(&htim3);
|
||||||
@@ -466,8 +567,7 @@ void encoderProcess(void){
|
|||||||
}
|
}
|
||||||
|
|
||||||
void resetReport(void){
|
void resetReport(void){
|
||||||
REPORT.MODIFIER = 0;
|
memset(REPORT.KEYPRESS, 0, sizeof(REPORT.KEYPRESS));
|
||||||
memset(REPORT.KEYPRESS, 0, sizeof(REPORT.KEYPRESS));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* USER CODE END 4 */
|
/* USER CODE END 4 */
|
||||||
|
|||||||
@@ -1,10 +1,15 @@
|
|||||||
../Core/Src/main.c:153:5:main 8
|
../Core/Src/main.c:69:6:pq_init 1
|
||||||
../Core/Src/main.c:263:6:SystemClock_Config 3
|
../Core/Src/main.c:76:6:pq_push 2
|
||||||
../Core/Src/main.c:307:6:HAL_UART_RxCpltCallback 5
|
../Core/Src/main.c:86:6:pq_pop 2
|
||||||
../Core/Src/main.c:326:6:HAL_UART_ErrorCallback 5
|
../Core/Src/main.c:205:5:main 7
|
||||||
../Core/Src/main.c:344:6:findBestParent 4
|
../Core/Src/main.c:325:6:mergeChild 7
|
||||||
../Core/Src/main.c:365:6:handleUARTMessages 12
|
../Core/Src/main.c:354:6:SystemClock_Config 3
|
||||||
../Core/Src/main.c:414:6:addUSBReport 3
|
../Core/Src/main.c:398:6:HAL_UART_RxCpltCallback 5
|
||||||
../Core/Src/main.c:422:6:matrixScan 4
|
../Core/Src/main.c:417:6:HAL_UART_ErrorCallback 5
|
||||||
../Core/Src/main.c:435:6:resetReport 1
|
../Core/Src/main.c:435:6:findBestParent 4
|
||||||
../Core/Src/main.c:446:6:Error_Handler 1
|
../Core/Src/main.c:456:6:handleUARTMessages 14
|
||||||
|
../Core/Src/main.c:515:6:addUSBReport 3
|
||||||
|
../Core/Src/main.c:523:6:matrixScan 5
|
||||||
|
../Core/Src/main.c:545:6:encoderProcess 9
|
||||||
|
../Core/Src/main.c:569:6:resetReport 1
|
||||||
|
../Core/Src/main.c:579:6:Error_Handler 1
|
||||||
|
|||||||
Binary file not shown.
@@ -1,10 +1,15 @@
|
|||||||
../Core/Src/main.c:153:5:main 48 static
|
../Core/Src/main.c:69:6:pq_init 16 static
|
||||||
../Core/Src/main.c:263:6:SystemClock_Config 88 static
|
../Core/Src/main.c:76:6:pq_push 24 static
|
||||||
../Core/Src/main.c:307:6:HAL_UART_RxCpltCallback 16 static
|
../Core/Src/main.c:86:6:pq_pop 16 static
|
||||||
../Core/Src/main.c:326:6:HAL_UART_ErrorCallback 16 static
|
../Core/Src/main.c:205:5:main 40 static
|
||||||
../Core/Src/main.c:344:6:findBestParent 24 static
|
../Core/Src/main.c:325:6:mergeChild 40 static
|
||||||
../Core/Src/main.c:365:6:handleUARTMessages 64 static
|
../Core/Src/main.c:354:6:SystemClock_Config 88 static
|
||||||
../Core/Src/main.c:414:6:addUSBReport 24 static
|
../Core/Src/main.c:398:6:HAL_UART_RxCpltCallback 16 static
|
||||||
../Core/Src/main.c:422:6:matrixScan 16 static
|
../Core/Src/main.c:417:6:HAL_UART_ErrorCallback 16 static
|
||||||
../Core/Src/main.c:435:6:resetReport 8 static
|
../Core/Src/main.c:435:6:findBestParent 24 static
|
||||||
../Core/Src/main.c:446:6:Error_Handler 4 static,ignoring_inline_asm
|
../Core/Src/main.c:456:6:handleUARTMessages 56 static
|
||||||
|
../Core/Src/main.c:515:6:addUSBReport 24 static
|
||||||
|
../Core/Src/main.c:523:6:matrixScan 16 static
|
||||||
|
../Core/Src/main.c:545:6:encoderProcess 32 static
|
||||||
|
../Core/Src/main.c:569:6:resetReport 8 static
|
||||||
|
../Core/Src/main.c:579:6:Error_Handler 4 static,ignoring_inline_asm
|
||||||
|
|||||||
@@ -7,6 +7,7 @@
|
|||||||
C_SRCS += \
|
C_SRCS += \
|
||||||
../Core/Src/dma.c \
|
../Core/Src/dma.c \
|
||||||
../Core/Src/gpio.c \
|
../Core/Src/gpio.c \
|
||||||
|
../Core/Src/hid_queue.c \
|
||||||
../Core/Src/i2c.c \
|
../Core/Src/i2c.c \
|
||||||
../Core/Src/main.c \
|
../Core/Src/main.c \
|
||||||
../Core/Src/stm32f4xx_hal_msp.c \
|
../Core/Src/stm32f4xx_hal_msp.c \
|
||||||
@@ -20,6 +21,7 @@ C_SRCS += \
|
|||||||
OBJS += \
|
OBJS += \
|
||||||
./Core/Src/dma.o \
|
./Core/Src/dma.o \
|
||||||
./Core/Src/gpio.o \
|
./Core/Src/gpio.o \
|
||||||
|
./Core/Src/hid_queue.o \
|
||||||
./Core/Src/i2c.o \
|
./Core/Src/i2c.o \
|
||||||
./Core/Src/main.o \
|
./Core/Src/main.o \
|
||||||
./Core/Src/stm32f4xx_hal_msp.o \
|
./Core/Src/stm32f4xx_hal_msp.o \
|
||||||
@@ -33,6 +35,7 @@ OBJS += \
|
|||||||
C_DEPS += \
|
C_DEPS += \
|
||||||
./Core/Src/dma.d \
|
./Core/Src/dma.d \
|
||||||
./Core/Src/gpio.d \
|
./Core/Src/gpio.d \
|
||||||
|
./Core/Src/hid_queue.d \
|
||||||
./Core/Src/i2c.d \
|
./Core/Src/i2c.d \
|
||||||
./Core/Src/main.d \
|
./Core/Src/main.d \
|
||||||
./Core/Src/stm32f4xx_hal_msp.d \
|
./Core/Src/stm32f4xx_hal_msp.d \
|
||||||
@@ -51,7 +54,7 @@ Core/Src/%.o Core/Src/%.su Core/Src/%.cyclo: ../Core/Src/%.c Core/Src/subdir.mk
|
|||||||
clean: clean-Core-2f-Src
|
clean: clean-Core-2f-Src
|
||||||
|
|
||||||
clean-Core-2f-Src:
|
clean-Core-2f-Src:
|
||||||
-$(RM) ./Core/Src/dma.cyclo ./Core/Src/dma.d ./Core/Src/dma.o ./Core/Src/dma.su ./Core/Src/gpio.cyclo ./Core/Src/gpio.d ./Core/Src/gpio.o ./Core/Src/gpio.su ./Core/Src/i2c.cyclo ./Core/Src/i2c.d ./Core/Src/i2c.o ./Core/Src/i2c.su ./Core/Src/main.cyclo ./Core/Src/main.d ./Core/Src/main.o ./Core/Src/main.su ./Core/Src/stm32f4xx_hal_msp.cyclo ./Core/Src/stm32f4xx_hal_msp.d ./Core/Src/stm32f4xx_hal_msp.o ./Core/Src/stm32f4xx_hal_msp.su ./Core/Src/stm32f4xx_it.cyclo ./Core/Src/stm32f4xx_it.d ./Core/Src/stm32f4xx_it.o ./Core/Src/stm32f4xx_it.su ./Core/Src/syscalls.cyclo ./Core/Src/syscalls.d ./Core/Src/syscalls.o ./Core/Src/syscalls.su ./Core/Src/sysmem.cyclo ./Core/Src/sysmem.d ./Core/Src/sysmem.o ./Core/Src/sysmem.su ./Core/Src/system_stm32f4xx.cyclo ./Core/Src/system_stm32f4xx.d ./Core/Src/system_stm32f4xx.o ./Core/Src/system_stm32f4xx.su ./Core/Src/tim.cyclo ./Core/Src/tim.d ./Core/Src/tim.o ./Core/Src/tim.su ./Core/Src/usart.cyclo ./Core/Src/usart.d ./Core/Src/usart.o ./Core/Src/usart.su
|
-$(RM) ./Core/Src/dma.cyclo ./Core/Src/dma.d ./Core/Src/dma.o ./Core/Src/dma.su ./Core/Src/gpio.cyclo ./Core/Src/gpio.d ./Core/Src/gpio.o ./Core/Src/gpio.su ./Core/Src/hid_queue.cyclo ./Core/Src/hid_queue.d ./Core/Src/hid_queue.o ./Core/Src/hid_queue.su ./Core/Src/i2c.cyclo ./Core/Src/i2c.d ./Core/Src/i2c.o ./Core/Src/i2c.su ./Core/Src/main.cyclo ./Core/Src/main.d ./Core/Src/main.o ./Core/Src/main.su ./Core/Src/stm32f4xx_hal_msp.cyclo ./Core/Src/stm32f4xx_hal_msp.d ./Core/Src/stm32f4xx_hal_msp.o ./Core/Src/stm32f4xx_hal_msp.su ./Core/Src/stm32f4xx_it.cyclo ./Core/Src/stm32f4xx_it.d ./Core/Src/stm32f4xx_it.o ./Core/Src/stm32f4xx_it.su ./Core/Src/syscalls.cyclo ./Core/Src/syscalls.d ./Core/Src/syscalls.o ./Core/Src/syscalls.su ./Core/Src/sysmem.cyclo ./Core/Src/sysmem.d ./Core/Src/sysmem.o ./Core/Src/sysmem.su ./Core/Src/system_stm32f4xx.cyclo ./Core/Src/system_stm32f4xx.d ./Core/Src/system_stm32f4xx.o ./Core/Src/system_stm32f4xx.su ./Core/Src/tim.cyclo ./Core/Src/tim.d ./Core/Src/tim.o ./Core/Src/tim.su ./Core/Src/usart.cyclo ./Core/Src/usart.d ./Core/Src/usart.o ./Core/Src/usart.su
|
||||||
|
|
||||||
.PHONY: clean-Core-2f-Src
|
.PHONY: clean-Core-2f-Src
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,6 @@
|
|||||||
"./Core/Src/dma.o"
|
"./Core/Src/dma.o"
|
||||||
"./Core/Src/gpio.o"
|
"./Core/Src/gpio.o"
|
||||||
|
"./Core/Src/hid_queue.o"
|
||||||
"./Core/Src/i2c.o"
|
"./Core/Src/i2c.o"
|
||||||
"./Core/Src/main.o"
|
"./Core/Src/main.o"
|
||||||
"./Core/Src/stm32f4xx_hal_msp.o"
|
"./Core/Src/stm32f4xx_hal_msp.o"
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1 +0,0 @@
|
|||||||
{"hostname":"framework16","username":"ukim"}
|
|
||||||
Reference in New Issue
Block a user