Skip to content

Commit

Permalink
conditional build of r3b3 version
Browse files Browse the repository at this point in the history
  • Loading branch information
mvladic committed Oct 30, 2020
1 parent c8aa0e3 commit 7c9630a
Show file tree
Hide file tree
Showing 18 changed files with 2,884 additions and 1,052 deletions.
11 changes: 9 additions & 2 deletions src/eez/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -202,9 +202,16 @@ extern "C" void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) {
sendMessageToPsu(PSU_MESSAGE_SPI_IRQ, 1, 0);
} else if (GPIO_Pin == SPI5_IRQ_Pin) {
sendMessageToPsu(PSU_MESSAGE_SPI_IRQ, 2, 0);
} else if (GPIO_Pin == SD_DETECT_Pin) {
}

#ifdef MASTER_MCU_REVISION_R3B3_OR_NEWER
#else
else if (GPIO_Pin == SD_DETECT_Pin) {
eez::psu::sd_card::onSdDetectInterrupt();
} else if (GPIO_Pin == ENC_A_Pin || GPIO_Pin == ENC_B_Pin) {
}
#endif

else if (GPIO_Pin == ENC_A_Pin || GPIO_Pin == ENC_B_Pin) {
eez::mcu::encoder::onPinInterrupt();
}
}
Expand Down
9 changes: 9 additions & 0 deletions src/eez/modules/bp3c/flash_slave.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,11 @@ static const uint8_t NACK = 0x1F;
static const uint32_t SYNC_TIMEOUT = 30000;
static const uint32_t CMD_TIMEOUT = 100;

#ifdef MASTER_MCU_REVISION_R3B3_OR_NEWER
static UART_HandleTypeDef *phuart = &huart4;
#else
static UART_HandleTypeDef *phuart = &huart7;
#endif

void sendDataAndCRC(uint8_t data) {
uint8_t sendData[1];
Expand Down Expand Up @@ -347,8 +351,13 @@ void enterBootloaderMode(int slotIndex) {

osDelay(25);

#ifdef MASTER_MCU_REVISION_R3B3_OR_NEWER
MX_UART4_Init();
#else
MX_UART7_Init();
#endif

#endif
}

void leaveBootloaderMode() {
Expand Down
2 changes: 1 addition & 1 deletion src/eez/modules/dib-mio168/dib-mio168.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -824,7 +824,7 @@ struct Mio168Module : public Module {
latestModuleRevision = MODULE_REVISION_R1B2;
flashMethod = FLASH_METHOD_STM32_BOOTLOADER_SPI;
#if defined(EEZ_PLATFORM_STM32)
spiBaudRatePrescaler = SPI_BAUDRATEPRESCALER_16;
spiBaudRatePrescaler = SPI_BAUDRATEPRESCALER_4;
spiCrcCalculationEnable = true;
#else
spiBaudRatePrescaler = 0;
Expand Down
5 changes: 5 additions & 0 deletions src/eez/modules/psu/conf_advanced.h
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,12 @@
#endif

#define MCU_NAME "STM32"

#ifdef MASTER_MCU_REVISION_R3B3_OR_NEWER
#define MCU_REVISION "R3B3"
#else
#define MCU_REVISION "R2B4"
#endif

/// SCPI TCP server port.
#define TCP_PORT 5025
Expand Down
2 changes: 1 addition & 1 deletion src/eez/modules/psu/io_pins.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -264,7 +264,7 @@ void initOutputPin(int pin) {
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
HAL_GPIO_Init(DOUT2_GPIO_Port, &GPIO_InitStruct);
HAL_GPIO_Init(UART_TX_DOUT1_GPIO_Port, &GPIO_InitStruct);
HAL_GPIO_WritePin(UART_TX_DOUT1_GPIO_Port, UART_TX_DOUT1_Pin, GPIO_PIN_RESET);
}
#endif
Expand Down
2 changes: 1 addition & 1 deletion src/eez/modules/psu/temp_sensor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ bool TempSensor::test() {
if (g_testResult == TEST_OK) {
break;
}
delay(1);
osDelay(1);
} while (millis() - start < 1000);

if (g_testResult != TEST_OK) {
Expand Down
335 changes: 335 additions & 0 deletions src/third_party/stm32_truestudio/.cproject

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions src/third_party/stm32_truestudio/.gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
/Debug/
/Debug (R3B3)/
Original file line number Diff line number Diff line change
@@ -1,10 +1,20 @@
eclipse.preferences.version=1
environment/buildEnvironmentInclude/com.atollic.truestudio.exe.debug.1518366166.1542846311/CPATH/delimiter=;
environment/buildEnvironmentInclude/com.atollic.truestudio.exe.debug.1518366166.1542846311/CPATH/operation=remove
environment/buildEnvironmentInclude/com.atollic.truestudio.exe.debug.1518366166.1542846311/C_INCLUDE_PATH/delimiter=;
environment/buildEnvironmentInclude/com.atollic.truestudio.exe.debug.1518366166.1542846311/C_INCLUDE_PATH/operation=remove
environment/buildEnvironmentInclude/com.atollic.truestudio.exe.debug.1518366166.1542846311/append=true
environment/buildEnvironmentInclude/com.atollic.truestudio.exe.debug.1518366166.1542846311/appendContributed=true
environment/buildEnvironmentInclude/com.atollic.truestudio.exe.debug.1518366166/CPATH/delimiter=;
environment/buildEnvironmentInclude/com.atollic.truestudio.exe.debug.1518366166/CPATH/operation=remove
environment/buildEnvironmentInclude/com.atollic.truestudio.exe.debug.1518366166/C_INCLUDE_PATH/delimiter=;
environment/buildEnvironmentInclude/com.atollic.truestudio.exe.debug.1518366166/C_INCLUDE_PATH/operation=remove
environment/buildEnvironmentInclude/com.atollic.truestudio.exe.debug.1518366166/append=true
environment/buildEnvironmentInclude/com.atollic.truestudio.exe.debug.1518366166/appendContributed=true
environment/buildEnvironmentLibrary/com.atollic.truestudio.exe.debug.1518366166.1542846311/LIBRARY_PATH/delimiter=;
environment/buildEnvironmentLibrary/com.atollic.truestudio.exe.debug.1518366166.1542846311/LIBRARY_PATH/operation=remove
environment/buildEnvironmentLibrary/com.atollic.truestudio.exe.debug.1518366166.1542846311/append=true
environment/buildEnvironmentLibrary/com.atollic.truestudio.exe.debug.1518366166.1542846311/appendContributed=true
environment/buildEnvironmentLibrary/com.atollic.truestudio.exe.debug.1518366166/LIBRARY_PATH/delimiter=;
environment/buildEnvironmentLibrary/com.atollic.truestudio.exe.debug.1518366166/LIBRARY_PATH/operation=remove
environment/buildEnvironmentLibrary/com.atollic.truestudio.exe.debug.1518366166/append=true
Expand Down
72 changes: 70 additions & 2 deletions src/third_party/stm32_truestudio/Inc/main.h
Original file line number Diff line number Diff line change
Expand Up @@ -84,10 +84,78 @@ extern "C" {
void Error_Handler(void);

/* USER CODE BEGIN EFP */

#ifdef MASTER_MCU_REVISION_R3B3_OR_NEWER
/* USER CODE END EFP */

/* Private defines -----------------------------------------------------------*/
#define SPI4_CSB_Pin GPIO_PIN_3
#define SPI4_CSB_GPIO_Port GPIOE
#define SPI4_CSA_Pin GPIO_PIN_4
#define SPI4_CSA_GPIO_Port GPIOE
#define SPI5_CSC_Pin GPIO_PIN_8
#define SPI5_CSC_GPIO_Port GPIOI
#define DIN2_Pin GPIO_PIN_13
#define DIN2_GPIO_Port GPIOC
#define SPI5_CSA_Pin GPIO_PIN_6
#define SPI5_CSA_GPIO_Port GPIOF
#define NFAULT_Pin GPIO_PIN_2
#define NFAULT_GPIO_Port GPIOB
#define TFT_BRIGHTNESS_Pin GPIO_PIN_15
#define TFT_BRIGHTNESS_GPIO_Port GPIOB
#define SPI2_CSB_Pin GPIO_PIN_11
#define SPI2_CSB_GPIO_Port GPIOD
#define PWR_DIRECT_Pin GPIO_PIN_12
#define PWR_DIRECT_GPIO_Port GPIOD
#define OE_SYNC_Pin GPIO_PIN_13
#define OE_SYNC_GPIO_Port GPIOD
#define PWR_SSTART_Pin GPIO_PIN_3
#define PWR_SSTART_GPIO_Port GPIOG
#define ENC_A_Pin GPIO_PIN_6
#define ENC_A_GPIO_Port GPIOC
#define ENC_A_EXTI_IRQn EXTI9_5_IRQn
#define ENC_B_Pin GPIO_PIN_7
#define ENC_B_GPIO_Port GPIOC
#define ENC_B_EXTI_IRQn EXTI9_5_IRQn
#define MCLK_25_Pin GPIO_PIN_9
#define MCLK_25_GPIO_Port GPIOC
#define SPI2_IRQ_Pin GPIO_PIN_8
#define SPI2_IRQ_GPIO_Port GPIOA
#define SPI2_IRQ_EXTI_IRQn EXTI9_5_IRQn
#define USB_OTG_FS_ID_Pin GPIO_PIN_10
#define USB_OTG_FS_ID_GPIO_Port GPIOA
#define SPI5_IRQ_Pin GPIO_PIN_15
#define SPI5_IRQ_GPIO_Port GPIOA
#define SPI5_IRQ_EXTI_IRQn EXTI15_10_IRQn
#define UART_TX_DOUT1_Pin GPIO_PIN_10
#define UART_TX_DOUT1_GPIO_Port GPIOC
#define UART_RX_DIN1_Pin GPIO_PIN_11
#define UART_RX_DIN1_GPIO_Port GPIOC
#define USB_OTG_FS_OC_Pin GPIO_PIN_4
#define USB_OTG_FS_OC_GPIO_Port GPIOD
#define USB_OTG_FS_PSO_Pin GPIO_PIN_5
#define USB_OTG_FS_PSO_GPIO_Port GPIOD
#define SD_DETECT_Pin GPIO_PIN_6
#define SD_DETECT_GPIO_Port GPIOD
#define IRQ_TOUCH_Pin GPIO_PIN_7
#define IRQ_TOUCH_GPIO_Port GPIOD
#define USER_SW_Pin GPIO_PIN_9
#define USER_SW_GPIO_Port GPIOG
#define SPI5_CSB_Pin GPIO_PIN_13
#define SPI5_CSB_GPIO_Port GPIOG
#define SPI4_CSC_Pin GPIO_PIN_14
#define SPI4_CSC_GPIO_Port GPIOG
#define SPI2_CSA_Pin GPIO_PIN_4
#define SPI2_CSA_GPIO_Port GPIOB
#define DOUT2_Pin GPIO_PIN_5
#define DOUT2_GPIO_Port GPIOB
#define SPI4_IRQ_Pin GPIO_PIN_9
#define SPI4_IRQ_GPIO_Port GPIOB
#define SPI4_IRQ_EXTI_IRQn EXTI9_5_IRQn
#define ENC_SW_Pin GPIO_PIN_4
#define ENC_SW_GPIO_Port GPIOI
/* USER CODE BEGIN Private defines */
#else

#define SPI4_CSA_Pin GPIO_PIN_3
#define SPI4_CSA_GPIO_Port GPIOE
#define SPI4_CSB_Pin GPIO_PIN_4
Expand Down Expand Up @@ -150,8 +218,8 @@ void Error_Handler(void);
#define SPI4_IRQ_EXTI_IRQn EXTI9_5_IRQn
#define ENC_SW_Pin GPIO_PIN_4
#define ENC_SW_GPIO_Port GPIOI
/* USER CODE BEGIN Private defines */

#endif
/* USER CODE END Private defines */

#ifdef __cplusplus
Expand Down
31 changes: 30 additions & 1 deletion src/third_party/stm32_truestudio/Inc/stm32f7xx_it.h
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@

/* Exported macro ------------------------------------------------------------*/
/* USER CODE BEGIN EM */
#ifdef MASTER_MCU_REVISION_R3B3_OR_NEWER

/* USER CODE END EM */

Expand All @@ -76,6 +77,7 @@ void EXTI9_5_IRQHandler(void);
void TIM1_UP_TIM10_IRQHandler(void);
void EXTI15_10_IRQHandler(void);
void SDMMC1_IRQHandler(void);
void UART4_IRQHandler(void);
void TIM7_IRQHandler(void);
void DMA2_Stream0_IRQHandler(void);
void DMA2_Stream1_IRQHandler(void);
Expand All @@ -85,9 +87,36 @@ void ETH_IRQHandler(void);
void OTG_FS_IRQHandler(void);
void DMA2_Stream5_IRQHandler(void);
void DMA2_Stream6_IRQHandler(void);
void UART7_IRQHandler(void);
/* USER CODE BEGIN EFP */

#else

void NMI_Handler(void);
void HardFault_Handler(void);
void MemManage_Handler(void);
void BusFault_Handler(void);
void UsageFault_Handler(void);
void DebugMon_Handler(void);
void DMA1_Stream1_IRQHandler(void);
void DMA1_Stream4_IRQHandler(void);
void DMA1_Stream5_IRQHandler(void);
void ADC_IRQHandler(void);
void EXTI9_5_IRQHandler(void);
void TIM1_UP_TIM10_IRQHandler(void);
void EXTI15_10_IRQHandler(void);
void SDMMC1_IRQHandler(void);
void TIM7_IRQHandler(void);
void DMA2_Stream0_IRQHandler(void);
void DMA2_Stream1_IRQHandler(void);
void DMA2_Stream3_IRQHandler(void);
void DMA2_Stream4_IRQHandler(void);
void ETH_IRQHandler(void);
void OTG_FS_IRQHandler(void);
void DMA2_Stream5_IRQHandler(void);
void DMA2_Stream6_IRQHandler(void);
void UART7_IRQHandler(void);

#endif
/* USER CODE END EFP */

#ifdef __cplusplus
Expand Down
15 changes: 10 additions & 5 deletions src/third_party/stm32_truestudio/Inc/usart.h
Original file line number Diff line number Diff line change
Expand Up @@ -27,19 +27,24 @@
#include "main.h"

/* USER CODE BEGIN Includes */

#ifdef MASTER_MCU_REVISION_R3B3_OR_NEWER
/* USER CODE END Includes */

extern UART_HandleTypeDef huart7;
extern UART_HandleTypeDef huart4;

/* USER CODE BEGIN Private defines */

#else
extern UART_HandleTypeDef huart7;
#endif
#ifdef MASTER_MCU_REVISION_R3B3_OR_NEWER
/* USER CODE END Private defines */

void MX_UART7_Init(void);
void MX_UART4_Init(void);

/* USER CODE BEGIN Prototypes */

#else
void MX_UART7_Init(void);
#endif
/* USER CODE END Prototypes */

#ifdef __cplusplus
Expand Down
Loading

0 comments on commit 7c9630a

Please sign in to comment.