Обновлены пины в проекте PY32F002A и в принципе описание всех пинов для B и A контроллера

This commit is contained in:
2025-03-06 14:35:40 +03:00
parent 4c987be8e7
commit 570a11a37f
9 changed files with 48 additions and 10 deletions

2
.gitignore vendored
View File

@@ -48,3 +48,5 @@ JLinkLog.txt
/MDK-ARM/DebugConfig/
/MDK-ARM/Output/
/~$ds18b20_locations.xlsx
/~$PY32F002A_Pins.xlsx
/~$PY32F002B_Pins.xlsx

BIN
PY32F002A_Pins.xlsx Normal file

Binary file not shown.

BIN
PY32F002B_Pins.xlsx Normal file

Binary file not shown.

View File

@@ -22,8 +22,14 @@
#include "onewire.h"
/* I/O Port ------------------------------------------------------------------*/
#ifdef PY32F002Bx5
#define DS_Pin GPIO_PIN_0
#define DS_GPIO_Port GPIOB
#endif
#ifdef PY32F002Ax5
#define DS_Pin GPIO_PIN_3
#define DS_GPIO_Port GPIOA
#endif
/* Data Structure ------------------------------------------------------------*/
#define DS18B20_DEVICE_AMOUNT 30

View File

@@ -8,6 +8,13 @@
#include "onewire.h"
#include "tim.h"
#ifdef PY32F002Bx5
#define PIN_NUMB 0
#endif
#ifdef PY32F002Ax5
#define PIN_NUMB 3
#endif
/**
* @brief The internal function is used as gpio pin mode
* @param OW OneWire HandleTypedef
@@ -18,11 +25,11 @@ void OneWire_Pin_Mode(OneWire_t* OW, PinMode Mode)
#ifdef CMSIS_Driver
if(Mode == Input)
{
OW->DataPort->MODER &= ~((GPIO_MODER_MODE0_Msk) << 0);
OW->DataPort->MODER |= (GPIO_MODE_INPUT << (0+2));
OW->DataPort->MODER &= ~((GPIO_MODER_MODE0_Msk) << PIN_NUMB);
OW->DataPort->MODER |= (GPIO_MODE_INPUT << (PIN_NUMB));
}else{
OW->DataPort->MODER &= ~((GPIO_MODER_MODE0_Msk) << 0);
OW->DataPort->MODER |= (GPIO_MODE_OUTPUT_PP << 0);
OW->DataPort->MODER &= ~((GPIO_MODER_MODE0_Msk) << PIN_NUMB);
OW->DataPort->MODER |= (GPIO_MODE_OUTPUT_PP << PIN_NUMB);
}
#else
#ifdef LL_Driver

View File

@@ -39,6 +39,9 @@
#define RS_TIM_DeInit HAL_TIM_Base_MspDeInit
#define rs_huart huart1
#define rs_htim htim14
#define RS_EnableReceive() GPIOB->ODR |= GPIO_PIN_3
#define RS_EnableTransmit() GPIOB->ODR &= ~GPIO_PIN_3
/**
* @brief Поменять комманды 0x03 и 0x04 местами (для LabView терминалки от двигателей)
* @details Терминалка от двигателей использует для чтения регистров комманду R_HOLD_REGS вместо R_IN_REGS

View File

@@ -68,5 +68,15 @@ void MX_GPIO_Init(void)
GPIOA->OSPEEDR |= (GPIO_SPEED_FREQ_LOW << GPIO_OSPEEDR_OSPEED1_Pos) |
(GPIO_SPEED_FREQ_LOW << GPIO_OSPEEDR_OSPEED4_Pos) |
(GPIO_SPEED_FREQ_LOW << GPIO_OSPEEDR_OSPEED5_Pos);
#ifdef PY32F002Bx5
/*Configure LED GPIO pin : PB3 (Receive Enable) */
/* Íàñòðîéêà ïèíîâ PA1, PA4, PA5 */
GPIOB->MODER &= ~(GPIO_MODER_MODE3);
GPIOB->MODER |= (GPIO_MODE_OUTPUT_PP << GPIO_MODER_MODE3_Pos);
GPIOB->PUPDR &= ~(GPIO_PUPDR_PUPD3);
GPIOB->PUPDR |= (GPIO_NOPULL << GPIO_PUPDR_PUPD3_Pos);
GPIOB->OSPEEDR |= (GPIO_SPEED_FREQ_HIGH << GPIO_OSPEEDR_OSPEED3_Pos);
#endif
}
/************************ (C) COPYRIGHT Puya *****END OF FILE******************/

View File

@@ -67,7 +67,8 @@ void HAL_UART_MspInit(UART_HandleTypeDef* uartHandle)
/* USART1 clock enable */
__HAL_RCC_GPIOB_CLK_ENABLE();
__HAL_RCC_USART1_CLK_ENABLE();
#ifdef PY32F002Bx5
/* GPIO initialization
PB04:TX,
PB05:RX
@@ -89,17 +90,26 @@ void HAL_UART_MspInit(UART_HandleTypeDef* uartHandle)
GPIOB->OSPEEDR |= (GPIO_SPEED_FREQ_HIGH << GPIO_OSPEEDR_OSPEED5_Pos);
GPIOB->AFR[0] &= ~(0xF << GPIO_AFRL_AFSEL5_Pos);
GPIOB->AFR[0] |= (GPIO_AF1_USART1 << GPIO_AFRL_AFSEL5_Pos);
#endif
#ifdef PY32F002Ax5
GPIOA->MODER &= ~GPIO_MODER_MODE10; // Î÷èñòèòü ñòàðóþ íàñòðîéêó äëÿ PA2
GPIOA->MODER |= GPIO_MODER_MODE10_1; // Óñòàíîâèòü ðåæèì àëüòåðíàòèâíîé ôóíêöèè (AF)
GPIOA->OTYPER |= GPIO_OTYPER_OT10; // Óñòàíîâèòü âûõîä â ðåæèìå Open-Drain
GPIOA->PUPDR &= ~GPIO_PUPDR_PUPD10; // Î÷èñòèòü ïîäòÿæêó
GPIOA->PUPDR |= GPIO_PUPDR_PUPD10_0; // Ïîäòÿæêà ââåðõ
GPIOA->AFR[1] &= ~(0xF << GPIO_AFRH_AFSEL10_Pos);
GPIOA->AFR[1] |= (GPIO_AF1_USART1 << GPIO_AFRH_AFSEL10_Pos);
#endif
/* USART1 interrupt Init */
HAL_NVIC_SetPriority(USART1_IRQn, 0, 0);
HAL_NVIC_EnableIRQ(USART1_IRQn);
/* USER CODE BEGIN USART1_MspInit 1 */
/* USER CODE BEGIN USART1_MspInit 1 */
/* USER CODE END USART1_MspInit 1 */
/* USER CODE END USART1_MspInit 1 */
}
}
/* USER CODE BEGIN 1 */
/* USER CODE END 1 */

View File

@@ -987,7 +987,7 @@
<Group>
<GroupName>Drivers/PY32F002B_HAL_Driver</GroupName>
<tvExp>1</tvExp>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>
@@ -1067,7 +1067,7 @@
<Group>
<GroupName>Drivers/PY32F002A_HAL_Driver</GroupName>
<tvExp>1</tvExp>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>