Re: FLProg 9.4.x тестирование
Добавлено: 03 авг 2025, 06:20
ecoins
Уточнение:
► Показать
//=================================================================================================
// 1.4.3. STM32F1V
//=================================================================================================
#if defined(RT_HW_CORE_STM32) && defined(RT_HW_CORE_STM32F1V)
//-------------------------------------------------------------------------------------------------
#if defined(RT_HW_PRESENT_UART0)
if(num==0){if((rx==PA12)&& (tx==PA11)) {LinkUART0.rx=rx; LinkUART0.tx=tx; return;} return;}
#endif
//-------------------------------------------------------------------------------------------------
#if defined(RT_HW_PRESENT_UART1)
if(num==1){if((rx==PA10)&& (tx==PA9)) {LinkUART1.rx=rx; LinkUART1.tx=tx; return;}
if((rx==PB7) && (tx==PB6)) {LinkUART1.rx=rx; LinkUART1.tx=tx; return;} return;}
#endif
//-------------------------------------------------------------------------------------------------
#if defined(RT_HW_PRESENT_UART2)
if(num==2){if((rx==PA3) && (tx==PA2)) {LinkUART2.rx=rx; LinkUART2.tx=tx; return;}
if((rx==PD6) && (tx==PD5)) {LinkUART2.rx=rx; LinkUART2.tx=tx; return;} return;}
#endif
//-------------------------------------------------------------------------------------------------
#if defined(RT_HW_PRESENT_UART3)
if(num==3){if((rx==PB11)&& (tx==PB10)) {LinkUART3.rx=rx; LinkUART3.tx=tx; return;}
if((rx==PD9) && (tx==PD8)) {LinkUART3.rx=rx; LinkUART3.tx=tx; return;} return;}
#endif
//-------------------------------------------------------------------------------------------------
#if defined(RT_HW_PRESENT_UART4)
if(num==4){if((rx==PC11)&& (tx==PC10)) {LinkUART4.rx=rx; LinkUART4.tx=tx; return;} return;}
#endif
//-------------------------------------------------------------------------------------------------
#if defined(RT_HW_PRESENT_UART5)
if(num==5){if((rx==PD2) && (tx==PC12)){LinkUART5.rx=rx; LinkUART5.tx=tx; return;} return;}
#endif
//-------------------------------------------------------------------------------------------------
#endif
//=================================================================================================
// 1.4.3. STM32F1V
//=================================================================================================
#if defined(RT_HW_CORE_STM32) && defined(RT_HW_CORE_STM32F1V)
//-------------------------------------------------------------------------------------------------
#if defined(RT_HW_PRESENT_UART0)
if(num==0){if((rx==PA12)&& (tx==PA11)) {LinkUART0.rx=rx; LinkUART0.tx=tx; return;} return;}
#endif
//-------------------------------------------------------------------------------------------------
#if defined(RT_HW_PRESENT_UART1)
if(num==1){if((rx==PA10)&& (tx==PA9)) {LinkUART1.rx=rx; LinkUART1.tx=tx; return;}
if((rx==PB7) && (tx==PB6)) {LinkUART1.rx=rx; LinkUART1.tx=tx; return;} return;}
#endif
//-------------------------------------------------------------------------------------------------
#if defined(RT_HW_PRESENT_UART2)
if(num==2){if((rx==PA3) && (tx==PA2)) {LinkUART2.rx=rx; LinkUART2.tx=tx; return;}
if((rx==PD6) && (tx==PD5)) {LinkUART2.rx=rx; LinkUART2.tx=tx; return;} return;}
#endif
//-------------------------------------------------------------------------------------------------
#if defined(RT_HW_PRESENT_UART3)
if(num==3){if((rx==PB11)&& (tx==PB10)) {LinkUART3.rx=rx; LinkUART3.tx=tx; return;}
if((rx==PD9) && (tx==PD8)) {LinkUART3.rx=rx; LinkUART3.tx=tx; return;} return;}
#endif
//-------------------------------------------------------------------------------------------------
#if defined(RT_HW_PRESENT_UART4)
if(num==4){if((rx==PC11)&& (tx==PC10)) {LinkUART4.rx=rx; LinkUART4.tx=tx; return;} return;}
#endif
//-------------------------------------------------------------------------------------------------
#if defined(RT_HW_PRESENT_UART5)
if(num==5){if((rx==PD2) && (tx==PC12)){LinkUART5.rx=rx; LinkUART5.tx=tx; return;} return;}
#endif
//-------------------------------------------------------------------------------------------------
#endif
//=================================================================================================
По умолчанию в FLProg: RX,TX=PD9,PD8;
► Показать
//=================================================================================================
// 10.1. UART
//=================================================================================================
#define RT_HW_PERMIT_UART0 //--Разрешение работы с UART0;
#define RT_HW_PERMIT_UART1 //--Разрешение работы с UART1;
#define RT_HW_PERMIT_UART2 //--Разрешение работы с UART2;
#define RT_HW_PERMIT_UART3 //--Разрешение работы с UART3;
#define RT_HW_PERMIT_UART4 //--Разрешение работы с UART4;
#define RT_HW_PERMIT_UART5 //--Разрешение работы с UART5;
//-------------------------------------------------------------------------------------------------
#define RT_HW_CREATE_UART1 //--Разрешение создания объекта Serial1;
#define RT_HW_CREATE_UART3 //--Разрешение создания объекта Serial3;
#define RT_HW_CREATE_UART4 //--Разрешение создания объекта Serial4;
#define RT_HW_CREATE_UART5 //--Разрешение создания объекта Serial5;
//-------------------------------------------------------------------------------------------------
#if !defined(RT_HW_UART0_RX)
#define RT_HW_UART0_RX PA12
#endif
//---------------------------------------------------------
#if !defined(RT_HW_UART0_TX)
#define RT_HW_UART0_TX PA11
#endif
//-------------------------------------------------------------------------------------------------
#if !defined(RT_HW_UART1_RX)
#define RT_HW_UART1_RX PA10
#endif
//---------------------------------------------------------
#if !defined(RT_HW_UART1_TX)
#define RT_HW_UART1_TX PA9
#endif
//-------------------------------------------------------------------------------------------------
#if !defined(RT_HW_UART2_RX)
#define RT_HW_UART2_RX PA3
#endif
//---------------------------------------------------------
#if !defined(RT_HW_UART2_TX)
#define RT_HW_UART2_TX PA2
#endif
//-------------------------------------------------------------------------------------------------
#if !defined(RT_HW_UART3_RX)
#define RT_HW_UART3_RX PD9
#endif
//---------------------------------------------------------
#if !defined(RT_HW_UART3_TX)
#define RT_HW_UART3_TX PD8
#endif
//-------------------------------------------------------------------------------------------------
#if !defined(RT_HW_UART4_RX)
#define RT_HW_UART4_RX PC11
#endif
//---------------------------------------------------------
#if !defined(RT_HW_UART4_TX)
#define RT_HW_UART4_TX PC10
#endif
//-------------------------------------------------------------------------------------------------
#if !defined(RT_HW_UART5_RX)
#define RT_HW_UART5_RX PD2
#endif
//---------------------------------------------------------
#if !defined(RT_HW_UART5_TX)
#define RT_HW_UART5_TX PC12
#endif
// 10.1. UART
//=================================================================================================
#define RT_HW_PERMIT_UART0 //--Разрешение работы с UART0;
#define RT_HW_PERMIT_UART1 //--Разрешение работы с UART1;
#define RT_HW_PERMIT_UART2 //--Разрешение работы с UART2;
#define RT_HW_PERMIT_UART3 //--Разрешение работы с UART3;
#define RT_HW_PERMIT_UART4 //--Разрешение работы с UART4;
#define RT_HW_PERMIT_UART5 //--Разрешение работы с UART5;
//-------------------------------------------------------------------------------------------------
#define RT_HW_CREATE_UART1 //--Разрешение создания объекта Serial1;
#define RT_HW_CREATE_UART3 //--Разрешение создания объекта Serial3;
#define RT_HW_CREATE_UART4 //--Разрешение создания объекта Serial4;
#define RT_HW_CREATE_UART5 //--Разрешение создания объекта Serial5;
//-------------------------------------------------------------------------------------------------
#if !defined(RT_HW_UART0_RX)
#define RT_HW_UART0_RX PA12
#endif
//---------------------------------------------------------
#if !defined(RT_HW_UART0_TX)
#define RT_HW_UART0_TX PA11
#endif
//-------------------------------------------------------------------------------------------------
#if !defined(RT_HW_UART1_RX)
#define RT_HW_UART1_RX PA10
#endif
//---------------------------------------------------------
#if !defined(RT_HW_UART1_TX)
#define RT_HW_UART1_TX PA9
#endif
//-------------------------------------------------------------------------------------------------
#if !defined(RT_HW_UART2_RX)
#define RT_HW_UART2_RX PA3
#endif
//---------------------------------------------------------
#if !defined(RT_HW_UART2_TX)
#define RT_HW_UART2_TX PA2
#endif
//-------------------------------------------------------------------------------------------------
#if !defined(RT_HW_UART3_RX)
#define RT_HW_UART3_RX PD9
#endif
//---------------------------------------------------------
#if !defined(RT_HW_UART3_TX)
#define RT_HW_UART3_TX PD8
#endif
//-------------------------------------------------------------------------------------------------
#if !defined(RT_HW_UART4_RX)
#define RT_HW_UART4_RX PC11
#endif
//---------------------------------------------------------
#if !defined(RT_HW_UART4_TX)
#define RT_HW_UART4_TX PC10
#endif
//-------------------------------------------------------------------------------------------------
#if !defined(RT_HW_UART5_RX)
#define RT_HW_UART5_RX PD2
#endif
//---------------------------------------------------------
#if !defined(RT_HW_UART5_TX)
#define RT_HW_UART5_TX PC12
#endif
Есть блок в кандидатах, который переназначает пины, в случае если выбранное сочетание пинов допустимо для используемого контроллера.
С уважением,ecoins.
---------------------------------------------
P.S.
Вопрос: как добавить наименование к spoiler - конструкция в квадратных скобках
spoil title="STM32F1V - выбор пинов UART"
не помогла.