|
|
  |
STM32 – вопросы – проблемы - решения. |
|
|
|
Jul 20 2011, 09:43
|
Группа: Участник
Сообщений: 11
Регистрация: 5-07-11
Пользователь №: 66 069

|
Цитата Сдается мне, что кто-то игнорирует ворнинги sm.gif Обижаете, товарищ! Не было ворнингов. Именно поэтому долго не мог допереть. Пишу в ЫАРе. Цитата Ну тогда уж наоборот - обращался и находил, но не ту которую вы ожидали (ваша обработка прерываний, видимо, в другом файле, так?). Да, обработка прерываний в main.c. В *_it.h и *_it.c нет и не было строчки "void USART2_IRQHandler(void);"! Компилер почему-то лезет в *_it.h и *_it.c, игнорируя п/п прерывания в main.c! Отключил *_it.h и *_it.c - тогда заработало
|
|
|
|
|
Jul 20 2011, 10:03
|

Частый гость
 
Группа: Свой
Сообщений: 107
Регистрация: 5-04-11
Из: г.Саратов
Пользователь №: 64 137

|
Цитата(A. Fig Lee @ Jul 20 2011, 07:15)  parity какой? должен быть even, наскоко помню именно такой и есть
|
|
|
|
|
Jul 20 2011, 13:46
|
Участник

Группа: Участник
Сообщений: 17
Регистрация: 4-02-09
Пользователь №: 44 400

|
Привет всем. А можно от STM32F10x получить с какой-нибудь ноги клок 32 кГц от его LSE с часовым кварцем, да еще и чтобы в standby mode работал? Вычитал пока только про ногу RTC-TAMPER, на которую можно выпульнуть 32/64 кГц
Хотя, пораскинув мозгами, понял, что можно использовать ногу OSC32_OUT
Сообщение отредактировал uu5jkb - Jul 20 2011, 13:50
|
|
|
|
|
Jul 24 2011, 05:48
|

Знающий
   
Группа: Свой
Сообщений: 966
Регистрация: 27-05-06
Из: СПб
Пользователь №: 17 499

|
Цитата(wedmeed @ Jul 18 2011, 16:32)  Во! Только что на работе нашел осциллограф и нормальную програмку для UARTа. Пообщаться с бутлоадером получилось, но вот в чем беда: для того, чтобы бутлоадер в МК понял команду, помимо идентификатора команды ему надо послать ее инверсию следующим байтом (01 - FE). Если посылать байты поочередно - все гуд. Если послать байты сразу - на первую попытку молчит, на вторую выдает ошибку. Получается он не успевает впоймать второй байт. Попробовал ставить 2 стоповых бита - не видит второй байт. Попробовал вставить между этими двумя байтами 0xFF - заработало! Картина стала такова: МК ловит первый байт, стартового бита второго байта не видит, дальше идут 1, которые МК воспринимает как молчание на линии, дальше ловит третий байт, считая его вторым.
Вопрос - почему МК не воспринимает нормально следующие сразу друг за другом байты? Очень вероятно, что он в это время подстраивает генератор usart-a. (скорость определяется автоматически). Столкнулся с тем, что версии загрузчика, описанные на сайте ST и в чипах STM32F103- разные. Антоха приводил ссылку несколькими страницами ранее на open sourse проект, который не работает с STM32F103, но прекрасно работает с F100. У FlashLoader Demo есть версия для командной строки, на основе ее удобно делать приложения для прошивки. (просто запускаете батник). Или запускать ее из своей графической оболочки.
|
|
|
|
|
Jul 24 2011, 06:51
|

Нечётный пользователь.
     
Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417

|
Цитата(Serj78 @ Jul 24 2011, 08:48)  Столкнулся с тем, что версии загрузчика, описанные на сайте ST и в чипах STM32F103- разные. Антоха приводил ссылку несколькими страницами ранее на open sourse проект, который не работает с STM32F103, но прекрасно работает с F100. Работает он с STM32F103, но только с достаточно новыми. Или, точнее, не работает со слишком старыми. http://electronix.ru/forum/index.php?s=&am...st&p=952862_____________ Вот таки зря такая длиннющая тема «про всё» сделана.
--------------------
Ну, я пошёл… Если что – звоните…
|
|
|
|
|
Jul 27 2011, 07:48
|
Местный
  
Группа: Участник
Сообщений: 294
Регистрация: 29-06-11
Пользователь №: 65 952

|
Добрый день, что то с АЦП не ладиться у меня пните в нужном направлении или подскажите что не так? Код RCC->CFGR &= ~RCC_CFGR_ADCPRE; RCC->CFGR |= RCC_CFGR_ADCPRE_DIV2; RCC->APB2ENR |= RCC_APB2ENR_ADC1EN; ADC1->CR1=ADC_CR1_SCAN|ADC_CR1_JAUTO; ADC1->CR2=ADC_CR2_ADON|ADC_CR2_CONT|ADC_CR2_JSWSTART; ADC1->SMPR2=ADC_SMPR2_SMP4_1|ADC_SMPR2_SMP5_1; ADC1->JSQR=ADC_JSQR_JL_0|ADC_JSQR_JSQ1_2|ADC_JSQR_JSQ2_0|ADC_JSQR_JSQ2_2; //// калибровка АЦП //// ADC1->CR2 |= ADC_CR2_RSTCAL; while ((ADC1->CR2 & ADC_CR2_RSTCAL) == ADC_CR2_RSTCAL); ADC1->CR2 |= ADC_CR2_CAL; while ((ADC1->CR2 & ADC_CR2_RSTCAL) == ADC_CR2_CAL); ADC1->CR2=ADC_CR2_ADON; Хочу использовать ижекционных канала два 4 и 5-й в непрерывном преобразовании. потом считываю просто из регистров ADC_JDR1_JDATA и ADC_JDR2_JDATA в любой момент времени. А там постоянно висят единицы.
|
|
|
|
|
Jul 28 2011, 18:24
|

Twilight Zone
  
Группа: Свой
Сообщений: 454
Регистрация: 17-02-09
Из: Челябинск
Пользователь №: 44 990

|
Цитата(IgorKossak @ Jul 27 2011, 12:26)  Но, чёрт возьми, АЯТЕБЕЧТОГОВОРИЛ! Ну, раз уж так, отцепите тему из шапки. Я не буду возражать. Вы мудрее и опытнее. Все таки, изначально я просил создать под форум STM32, и на мой взгляд это было бы куда лучше. В форуме ARM чуть ли каждая 3-я тема о STM32, с продвижением F2 их будет еще больше.
--------------------
Magic Friend
|
|
|
|
|
Jul 29 2011, 08:45
|

Нечётный пользователь.
     
Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417

|
Цитата(Danis @ Jul 28 2011, 21:24)  Все таки, изначально я просил создать под форум STM32, и на мой взгляд это было бы куда лучше. В форуме ARM чуть ли каждая 3-я тема о STM32, с продвижением F2 их будет еще больше. И в итоге в том отдельном подфоруме часть вопросов касалась бы не STM32, а CM3 вообще. Часть аналогичных вопросов по CM3 оказалась бы в подфоруме по LPC17 (ведь его тогда тоже нужно создать, не правда ли?). Итого всё равно смотреть всё. А у тех же CM3-шных LPC17 периферия аналогична ARM7-ным LPC23/24, где тут резать? На мой взгляд, гораздо лучше просто в теме указывать STM32 - SPI - bla-bla-bla CM3 (STM32) - NVIC - bla-bla-bla (тут конкретно у спрашивающего STM32, но с тем же успехом _ответить_ может пользователь LPC17, который в отдельный форум по STM32 может и не полезть). CM3 - GCC - bla-bla-bla (а тут вообще STM32 равноправен с LPC17 и люминари) Правда, это требует самодисциплины от участников форума, проще попросить администрацию сделать разметку...
--------------------
Ну, я пошёл… Если что – звоните…
|
|
|
|
|
Aug 2 2011, 07:16
|
Гуру
     
Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136

|
Цитата(smk @ Aug 2 2011, 09:54)  Крайне интересно опробовать STM32F100C4T6B. Пытаюсь определиться с IDE и прошиванием. Как я понял, Keil их не поддерживает? Есть ли у них встроеный бутлоадер и можно ли из шить через СОМ-порт (MAX232)? Спасибо. Да, Keil поддерживает. По поводу загрузчика - ну это просто неприлично. Вы бы хоть в даташит заглянули бы. Там чёрным по белому написано: Цитата The boot loader is located in System Memory. It is used to reprogram the Flash memory by using USART1. For further details please refer to AN2606.
|
|
|
|
|
  |
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|