Отговори на тема  [ 8 мнения ] 
STM32F100RB Използване на PB3 и PB4 
Автор Съобщение
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Чет Ное 08, 2012 10:29 pm
Мнения: 4
Мнение STM32F100RB Използване на PB3 и PB4
Трябва да активирам използване на PB3, PB4 като обикновени цифрови изходи.
PB5..PB9 са конфигурирани като цифрови входове.
Опитвам алтернативни функции, но не намирам регистъра AFIO_MAPR, bit 24..26/ SWJ_CFG за забрана на JTAG_DP, SW_DP.
Работя с mikroPascal, моля за споделяне на опит и помощ!


Вто Сеп 28, 2021 12:08 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Яну 01, 2012 8:04 pm
Мнения: 2663
Местоположение: София / Велико Търново
Мнение Re: STM32F100RB Използване на PB3 и PB4
Не го зная този процесор, но сигурен ли си, че могат да бъдат изходи ?

_________________
https://github.com/slav4ocom/


Вто Сеп 28, 2021 12:47 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пет Апр 13, 2018 4:00 pm
Мнения: 1622
Местоположение: София
Мнение Re: STM32F100RB Използване на PB3 и PB4
Нещо по въпроса:
https://community.st.com/s/question/0D5 ... r-gpio-use
За друг процесор е, това което ми се струва съществено е последния пост в темата в линка:
Цитат:
This is how CubeMx does it:

First make the pins low, then setup for output.
static void MX_GPIO_Init(void)
{
GPIO_InitTypeDef GPIO_InitStruct;
/* GPIO Ports Clock Enable */
__HAL_RCC_GPIOB_CLK_ENABLE();
__HAL_RCC_GPIOA_CLK_ENABLE();
/*Configure GPIO pin Output Level */
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_4|GPIO_PIN_3, GPIO_PIN_RESET);
/*Configure GPIO pins : PB4 PB3 */
GPIO_InitStruct.Pin = GPIO_PIN_4|GPIO_PIN_3;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
}

Може да се инсталира CubeMX и да се види как инициализира за този процесор.


Вто Сеп 28, 2021 8:56 am
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Чет Сеп 30, 2021 5:58 am
Мнения: 2
Мнение Re: STM32F100RB Използване на PB3 и PB4
disable jtag before gpio init

GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);


Чет Сеп 30, 2021 6:10 am
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Чет Сеп 30, 2021 5:58 am
Мнения: 2
Мнение Re: STM32F100RB Използване на PB3 и PB4
try
AFIOEN_bit = 1;
SWJ_CFG0_bit = 1; // PB4 alternate function enable
SWJ_CFG1_bit = 1; // PB3 alternate function enable


Чет Сеп 30, 2021 6:15 am
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Чет Ное 08, 2012 10:29 pm
Мнения: 4
Мнение Re: STM32F100RB Използване на PB3 и PB4
Благодаря на всички!

Конфигурацията, която освобождава и двата извода РВ3 и РВ4 е
AFIOEN_bit := 1;
SWJ_CFG0_bit := 0;
SWJ_CFG1_bit := 0;
SWJ_CFG2_bit := 1;

Описанието е в RM стр.116 / Table 29. Debug port mapping


Съб Окт 02, 2021 1:46 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Чет Ное 08, 2012 10:29 pm
Мнения: 4
Мнение Re: STM32F100RB Използване на PB3 и PB4
Сега друга "греда" - нямам достъп през ST-link и не мога да
възстановя началното положение. Програмата работи, процесорът е недостъпен...


Съб Окт 02, 2021 9:07 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Чет Ное 08, 2012 10:29 pm
Мнения: 4
Мнение Re: STM32F100RB Използване на PB3 и PB4
Решение: BOOT0 := 1 ( прекъсва се мостчето към GND, обикновено този вход е захранен през 10 кOhm /Vdd и 510 Ohm/GND).
Подава се захранване.
В този режим програмно се установяват SWJ_CFG[2:0] :=0.
Изключва се захранването.
Възстановява се връзката на BOOT0 към 0 (GND)


Съб Окт 02, 2021 11:24 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 8 мнения ] 

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 3 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни