реклама на сайте
подробности

 
 
3 страниц V   1 2 3 >  
Closed TopicStart new topic
> STM32F050F5P6 и USART на ногах PA2-PA3, То ли несоотвествие в даташите, то ли лыжи не едут...
Tronix286
сообщение Dec 25 2014, 12:30
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 25-10-14
Пользователь №: 83 341



Доброго дня.

Смотрю в даташит на сабж:



PA2 - USART1_TX
PA3 - USART1_RX

Смотрю дальше:



Вопрос - это как так? По серии экспериментов получается, что USART1 реально находится на PA1 и PA2. Но устройство уже готово, ибо смотрел я ессно в первую табличку. Никто не видел каких-нибудь "софтварных" реализаций UART, скорость то вообщем-то нужна никакая - 1200 бит, можно и самому ногами подергать, но так не хочется велосипед с нуля писать.

Печаль...
Go to the top of the page
 
+Quote Post
hd44780
сообщение Dec 25 2014, 16:36
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Софтварные есть для AVR, посмотрите, мож что-то получится.
Для STM не попадались. Может их вообще нету, т.к. у них обычно много уартов....


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
1113
сообщение Dec 25 2014, 19:49
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 604
Регистрация: 24-02-06
Из: Москва
Пользователь №: 14 658



а что это за контроллер такой? дайте на него ссылку...
Go to the top of the page
 
+Quote Post
adnega
сообщение Dec 25 2014, 20:03
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(Tronix286 @ Dec 25 2014, 16:30) *
Печаль...

А махнуть МК на F03x, F04x не вариант?
Go to the top of the page
 
+Quote Post
Tronix286
сообщение Dec 25 2014, 20:04
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 25-10-14
Пользователь №: 83 341



Цитата(1113 @ Dec 25 2014, 22:49) *
а что это за контроллер такой? дайте на него ссылку...


Прошу прощения, промахнулся при печати. Камень конечно stm32f050f4p6
Даташит: http://www.st.com/web/en/resource/technica.../DM00065136.pdf
Go to the top of the page
 
+Quote Post
1113
сообщение Dec 25 2014, 20:20
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 604
Регистрация: 24-02-06
Из: Москва
Пользователь №: 14 658



а что с этим контроллером не так, почему его нет в таблицах на сайте и в QUBE`е?
Go to the top of the page
 
+Quote Post
adnega
сообщение Dec 25 2014, 20:28
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(1113 @ Dec 26 2014, 00:20) *
а что с этим контроллером не так, почему его нет в таблицах на сайте и в QUBE`е?

ST-шники полгода назад rename своим контроллерам устроили)
Go to the top of the page
 
+Quote Post
1113
сообщение Dec 25 2014, 20:32
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 604
Регистрация: 24-02-06
Из: Москва
Пользователь №: 14 658



Цитата(adnega @ Dec 25 2014, 23:28) *
ST-шники полгода назад rename своим контроллерам устроили)

и как он называется сейчас?
Go to the top of the page
 
+Quote Post
Tronix286
сообщение Dec 25 2014, 20:34
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 25-10-14
Пользователь №: 83 341



Цитата(1113 @ Dec 25 2014, 23:20) *
а что с этим контроллером не так, почему его нет в таблицах на сайте и в QUBE`е?


Не знаю, видимо снят с производства, хотя в китае продается по рублю за мешок до сих пор. Да и в России купить не проблема.
Плохо, что в errat'е ни слова про несоответствие ног USART. Я ведь и ее читал тоже.

Как я понимаю, его новый аналог STM32F030F4P6, все то же самое, только в даташите уже нет несоответствий. Просто не ожидал от ST такого, тем более камень древний, дешевый, должно было все тыщу раз на форумах обсудится. Так даже не нашел упоминание о проблеме в инете...
Go to the top of the page
 
+Quote Post
smalcom
сообщение Dec 26 2014, 09:55
Сообщение #10


Профессионал
*****

Группа: Свой
Сообщений: 1 292
Регистрация: 26-06-07
Пользователь №: 28 718



А обратили внимание на сноски и маркировку своего МК?
Go to the top of the page
 
+Quote Post
HHIMERA
сообщение Dec 26 2014, 16:49
Сообщение #11


Местный
***

Группа: Участник
Сообщений: 226
Регистрация: 10-07-09
Пользователь №: 51 126



Цитата(Tronix286 @ Dec 25 2014, 15:30) *
По серии экспериментов получается, что USART1 реально находится на PA1 и PA2.

Чушь какая-то... Зачем это надо было выдумывать???
Go to the top of the page
 
+Quote Post
Tronix286
сообщение Dec 26 2014, 17:03
Сообщение #12


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 25-10-14
Пользователь №: 83 341



Цитата(smalcom @ Dec 26 2014, 12:55) *
А обратили внимание на сноски и маркировку своего МК?


Обратил. В сноске написано: "This alternate feature is available on standard dies only". Честно говоря я не знаю, что это значит. Ну, даже допустим, что они имели ввиду разные маркировки. Но все равно, табличка номер один не сходится с табличкой номер два из одного и того же даташита.

Цитата(HHIMERA @ Dec 26 2014, 19:49) *
Чушь какая-то... Зачем это надо было выдумывать???


Зачем мне что-то выдумывать?
Go to the top of the page
 
+Quote Post
HHIMERA
сообщение Dec 26 2014, 17:09
Сообщение #13


Местный
***

Группа: Участник
Сообщений: 226
Регистрация: 10-07-09
Пользователь №: 51 126



Цитата(Tronix286 @ Dec 26 2014, 20:03) *
Зачем мне что-то выдумывать?

Ещё раз...
Цитата
По серии экспериментов получается, что USART1 реально находится на PA1 и PA2.

С какой целью это было придумано???
Посмотрите даташиты других STM32... где там TX и RX...
Go to the top of the page
 
+Quote Post
Tronix286
сообщение Dec 26 2014, 17:23
Сообщение #14


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 25-10-14
Пользователь №: 83 341



Цитата(HHIMERA @ Dec 26 2014, 20:09) *
Ещё раз...

Посмотрите даташиты других STM32... где там TX и RX...


Смотрю в даташит на похожий контроллер stm32f030f4p6, вроде как позиционируется как замена сабжу, и вижу в первой таблице



и потом дальше



Все, как и должно было бы быть у stm32f050f4p6, судя по первой таблице из его даташита. Вот только на практике оказалась верна вторая таблица из его же даташита, где PA1 - TX, PA2 - RX:



Что я смотрю не так и куда мне смотреть?
Go to the top of the page
 
+Quote Post
HHIMERA
сообщение Dec 26 2014, 17:36
Сообщение #15


Местный
***

Группа: Участник
Сообщений: 226
Регистрация: 10-07-09
Пользователь №: 51 126



Цитата(Tronix286 @ Dec 26 2014, 20:23) *
Вот только на практике оказалась верна вторая таблица из его же даташита, где PA1 - TX, PA2 - RX:

Вы педали (перечёркнуто) пины не путаете???
Почему у меня РА2 - ТХ??? STM32F050F4...
Go to the top of the page
 
+Quote Post
Tronix286
сообщение Dec 26 2014, 17:48
Сообщение #16


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 25-10-14
Пользователь №: 83 341



Цитата(HHIMERA @ Dec 26 2014, 20:36) *
Почему у меня РА2 - ТХ??? STM32F050F4...


Не знаю, почему. А почему? По первой таблице из даташита - да, должно так и быть. А вот по второй таблице, где ремап пинов на альтернативные функции - уже не так. И на практике у меня так, как в таблице с ремапом.
Go to the top of the page
 
+Quote Post
HHIMERA
сообщение Dec 26 2014, 17:58
Сообщение #17


Местный
***

Группа: Участник
Сообщений: 226
Регистрация: 10-07-09
Пользователь №: 51 126



Цитата(Tronix286 @ Dec 26 2014, 20:48) *
на практике у меня так, как в таблице с ремапом.

(рукалицо)
Ага... STM запилили специально для вас "чудо-чип"... в единственном экземпляре... и сейчас смеются читая этот топик... Вот шалуны!!!

Go to the top of the page
 
+Quote Post
ViKo
сообщение Dec 26 2014, 19:26
Сообщение #18


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(Tronix286 @ Dec 26 2014, 20:48) *
Не знаю, почему. А почему? По первой таблице из даташита - да, должно так и быть. А вот по второй таблице, где ремап пинов на альтернативные функции - уже не так. И на практике у меня так, как в таблице с ремапом.

Косяк STM, ошиблись в документации. Придется вам выбрать новый микроконтроллер, из доступных в списках. А с этими дорожки перерезать, проводками перепаять. Программно USART сделать легко, если будет прерывание по таймеру с частотой, в 4 раза больше скорости передачи. Когда-то у Microchip была такая Application Note. Я делал, работало.
Go to the top of the page
 
+Quote Post
adnega
сообщение Dec 26 2014, 19:27
Сообщение #19


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(Tronix286 @ Dec 26 2014, 21:23) *
Что я смотрю не так и куда мне смотреть?

Заглянуть сюда.
А на самом деле все вы правильно смотрите и видете - в документации косячина.
Бог с ним с F050 (который, как известно, NRND), но в переименованном F031 (сейчас Active) - такое же безобразие.
Срочно переходите на F030 ))
Go to the top of the page
 
+Quote Post
Tronix286
сообщение Dec 26 2014, 19:38
Сообщение #20


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 25-10-14
Пользователь №: 83 341



Да, решили просто поменять контроллер на stm32f030f4p6, потому что все остальные ноги тоже заняты и резать дороги и паять МГТФ просто некуда. Можно было конечно программный УАРТ завести, почитал - это действительно очень просто, но решили не костылить и делать по феншую до конца.

Спасибо всем участникам, я просто хотел лишний раз убедиться, что это не я глючу, а реальный баг даташита.
Go to the top of the page
 
+Quote Post
HHIMERA
сообщение Dec 26 2014, 21:17
Сообщение #21


Местный
***

Группа: Участник
Сообщений: 226
Регистрация: 10-07-09
Пользователь №: 51 126



Цитата(Tronix286 @ Dec 26 2014, 22:38) *
Да, решили просто поменять контроллер на stm32f030f4p6

И что изменится??? laughing.gif
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Dec 27 2014, 11:36
Сообщение #22


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Вот нашел у себя табличку с переименованиями:
Код
Previous        New
Part Number     Part Number
STM32F0506DIE1  STM32F0316DIE1
STM32F050C4T6   STM32F031C4T6
STM32F050C4T6TR STM32F031C4T6TR
STM32F050C6T6   STM32F031C6T6
STM32F050C6T6TR STM32F031C6T6TR
STM32F050C6T7   STM32F031C6T7
STM32F050F4P6   STM32F031F4P6
STM32F050F6P6   STM32F031F6P6
STM32F050F6P7   STM32F031F6P7
STM32F050G4U6   STM32F031G4U6
STM32F050G6U6   STM32F031G6U6
STM32F050K4U6   STM32F031K4U6
STM32F050K6U6   STM32F031K6U6
STM32F313CCT6   STM32F358CCT6
STM32F313RCT6   STM32F358RCT6
STM32F313VCT6   STM32F358VCT6
STM32F383CCT6   STM32F378CCT6
STM32F383RCT6   STM32F378RCT6
STM32F383VCT6   STM32F378VCT6


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Tronix286
сообщение Dec 27 2014, 20:49
Сообщение #23


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 25-10-14
Пользователь №: 83 341



От перестановки мест слагаемое не поменялось - прям на сайте для STM32F031F4 эррата девственно чиста, в даташите точно такое-же несоответствие таблиц, что и у 050f4p6. http://www.st.com/web/catalog/mmc/FM141/SC...74/LN7/PF259776

PS: Заменил седня на STM32F030F4P6 - полет нормальный, уарт завелся на PA2 и PA3, даже без изменения прошивки - влил просто ту, которая не работала на 050. Такие дела...
Go to the top of the page
 
+Quote Post
HHIMERA
сообщение Dec 27 2014, 22:11
Сообщение #24


Местный
***

Группа: Участник
Сообщений: 226
Регистрация: 10-07-09
Пользователь №: 51 126



Цитата(Tronix286 @ Dec 27 2014, 23:49) *
Заменил седня на STM32F030F4P6 - полет нормальный, уарт завелся на PA2 и PA3, даже без изменения прошивки - влил просто ту, которая не работала на 050. Такие дела...

Прекратите врать и на этом закончим... По иронии судьбы у меня на столе валяется именно STM32F050F4... Специально UART проверял...
Никто персонально для вас кристалл с изменённой топологией выпускать не будет...
Ещё раз... загляните в даташиты других семейств... везде - РА2-РА3... Можете и дальше настаивать на чудесах... cranky.gif
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Dec 28 2014, 10:12
Сообщение #25


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



Не понимаю я чего эта химера такая борзая....

взял в яндексе написал название кристалла, открыл pdf с их сайта. Нажал поиск по PA1. И действительно в 2 местах этого pdf написано разное.
В одном месте на PA1 - RTS, в другом на PA1 - TX

проверяйте
http://www.st.com/web/en/resource/technica.../DM00065136.pdf

явная ошибка в описании, и повезло что первая таблица более правильна чем вторая. Я вот как программист смотрел бы на 2, настраивал бы альтернативные функции, и даже может начал бы просить поправить плату.

У человека проблемы, и он видит неточность в описании, поделился этим с нами, за что ему большое спасибо. А вы уже 3 или 4 пост на него наезжаете без причинно. Это как-то не профессионально, мне кажется...
Если беспокоит высказывание типа
Цитата
По серии экспериментов получается, что USART1 реально находится на PA1 и PA2

напишите "нет вы не правы, у меня такой кристалл на нем все Ок., ошибка в другом месте" и человек скажет вам спасибо, а вы....
Go to the top of the page
 
+Quote Post
HHIMERA
сообщение Dec 28 2014, 11:39
Сообщение #26


Местный
***

Группа: Участник
Сообщений: 226
Регистрация: 10-07-09
Пользователь №: 51 126



Цитата(Golikov A. @ Dec 28 2014, 13:12) *
Не понимаю

Значит не дано... типа "Не шмагла!"(С)... такое тоже бывает... laughing.gif
Сами проверьте... на каких ногах UART у STM32F050F4... а потом пытайтесь дерзить по пионерски... Не можете??? Тогда - что эхо в лесу...
Ошибку в даташите никто не отрицает... но это ничего не меняет... UART, как и положено, на РА2-РА3... если вам и в десятый раз не понятно... там не может быть по другому... как бы вы не упирались...

Сообщение отредактировал HHIMERA - Dec 28 2014, 11:41
Go to the top of the page
 
+Quote Post
adnega
сообщение Dec 28 2014, 12:31
Сообщение #27


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(HHIMERA @ Dec 28 2014, 15:39) *
Сами проверьте... на каких ногах UART у STM32F050F4...

Действительно, HHIMERA разошлась) Нужно быть сдержаннее.

Однако, соглашусь, что pin2pin по заявлениям ТС теряется, и это не какая-нибудь опечатка в документе - а очень серьезная железная проблема.
Тут я на стороне HHIMERы и присоединяюсь к просьбе проверить назначение ног аккуратно. К сожалению, STM32F050F4 в наличии у самого нет.
Go to the top of the page
 
+Quote Post
Tronix286
сообщение Dec 29 2014, 10:15
Сообщение #28


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 25-10-14
Пользователь №: 83 341



Итак, прям щаз ради интереса запаял обратно 050 на плату - и... и работает на PA2, PA3.. Действительно, хоть и в грубой форме, но HHIMERA оказался прав. Первый раз я видимо что-то не так заинициализил, ибо программер из меня тот еще..., и торопился...

В общем, в даташите есть ошибка, на практике оказалась верна первая таблица. USART у stm32f050f4p6 находится реально на PA2, PA3.

На всякий случай кусок говнокодеса инициализации, который работает и на 030f4 и на 050f4:
CODE
/* NVIC configuration */
/* Enable the USARTx Interrupt */
NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPriority = 0;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);

RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE);
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);

/* Writes data to the specified GPIO data port */
GPIO_PinAFConfig(GPIOA, GPIO_PinSource2, GPIO_AF_1);

/* Connect PXx to USARTx_Rx */
GPIO_PinAFConfig(GPIOA, GPIO_PinSource3, GPIO_AF_1);


/* Configure USART Tx and Rx as alternate function push-pull */
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //GPIO_Speed_Level_3;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;
GPIO_Init(GPIOA, &GPIO_InitStructure);

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3;
GPIO_Init(GPIOA, &GPIO_InitStructure);

USART_InitStructure.USART_BaudRate = 1200;
USART_InitStructure.USART_WordLength = USART_WordLength_8b;
USART_InitStructure.USART_StopBits = USART_StopBits_1;
USART_InitStructure.USART_Parity = USART_Parity_No;
USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;
USART_Init(USART1, &USART_InitStructure);

//GPIO_ResetBits(GPIOF, GPIO_Pin_0);
USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);
USART_ITConfig(USART1, USART_IT_TXE, DISABLE);

USART_ITConfig(USART1, USART_IT_ORE, ENABLE);
USART_ITConfig(USART1, USART_IT_NE, ENABLE);
USART_ITConfig(USART1, USART_IT_FE, ENABLE);

/* Enable USART */
USART_Cmd(USART1, ENABLE);


Сообщение отредактировал IgorKossak - Dec 29 2014, 11:35
Причина редактирования: [codebox] для длинного кода, [code] - для короткого!!!
Go to the top of the page
 
+Quote Post
adnega
сообщение Dec 29 2014, 10:28
Сообщение #29


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(Tronix286 @ Dec 29 2014, 14:15) *
Итак, прям щаз ради интереса запаял обратно 050 на плату - и... и работает на PA2, PA3.. Действительно, хоть и в грубой форме, но HHIMERA оказался прав.

Победила дружба!
Уфф, как камень с плеч. Теперь все встало на свои места.
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Dec 29 2014, 12:12
Сообщение #30


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



Блин все всегда было на своих местах.

И было весьма вероятно что у ТС ошибка, просто кое кому надо было не говном исходиться, а сказать что у него такой же камень и все работает на нужных ногах. Это кое кто сообщил даже не во 2 и не в 3 своем посте. В итоге человек даже микроконтроллер перепаял, потому что владельцы других сразу заявили что в них все Ок....



Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Dec 29 2014, 13:40
Сообщение #31


Шаман
******

Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221



Вопрос исчерпан. Тему закрываю.
Модератор.
Go to the top of the page
 
+Quote Post

3 страниц V   1 2 3 >
Closed TopicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 12:59
Рейтинг@Mail.ru


Страница сгенерированна за 0.01716 секунд с 7
ELECTRONIX ©2004-2016