Обновлены пины в проекте PY32F002A и в принципе описание всех пинов для B и A контроллера
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -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
BIN
PY32F002A_Pins.xlsx
Normal file
Binary file not shown.
BIN
PY32F002B_Pins.xlsx
Normal file
BIN
PY32F002B_Pins.xlsx
Normal file
Binary file not shown.
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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******************/
|
||||
|
||||
@@ -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 */
|
||||
|
||||
@@ -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>
|
||||
|
||||
Reference in New Issue
Block a user