Перейти к содержанию
    

STM32 – вопросы – проблемы - решения.

Сдается мне, что кто-то игнорирует ворнинги sm.gif

Обижаете, товарищ!

Не было ворнингов.

Именно поэтому долго не мог допереть.

Пишу в ЫАРе.

Ну тогда уж наоборот - обращался и находил, но не ту которую вы ожидали (ваша обработка прерываний, видимо, в другом файле, так?).

Да, обработка прерываний в main.c.

В *_it.h и *_it.c нет и не было строчки "void USART2_IRQHandler(void);"!

 

Компилер почему-то лезет в *_it.h и *_it.c, игнорируя п/п прерывания в main.c!

Отключил *_it.h и *_it.c - тогда заработало :laughing:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

parity какой? должен быть even, наскоко помню

 

именно такой и есть

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Привет всем.

А можно от STM32F10x получить с какой-нибудь ноги клок 32 кГц от его LSE с часовым кварцем, да еще и чтобы в standby mode работал? Вычитал пока только про ногу RTC-TAMPER, на которую можно выпульнуть 32/64 кГц

 

Хотя, пораскинув мозгами, понял, что можно использовать ногу OSC32_OUT

Изменено пользователем uu5jkb

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Привет всем.

А можно от STM32F10x получить с какой-нибудь ноги клок 32 кГц от его LSE с часовым кварцем, да еще и чтобы в standby mode работал? Вычитал пока только про ногу RTC-TAMPER, на которую можно выпульнуть 32/64 кГц

 

Хотя, пораскинув мозгами, понял, что можно использовать ногу OSC32_OUT

Поаккуратней с этой ногой: там слабый сигнал - чуть ткнул щупом, генератор заткнулся. Да и по уровню совсем не CMOS/TTL. Надо высокоомный компаратор подключать, с подстройкой уровня.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Во! Только что на работе нашел осциллограф и нормальную програмку для UARTа. Пообщаться с бутлоадером получилось, но вот в чем беда:

для того, чтобы бутлоадер в МК понял команду, помимо идентификатора команды ему надо послать ее инверсию следующим байтом (01 - FE). Если посылать байты поочередно - все гуд. Если послать байты сразу - на первую попытку молчит, на вторую выдает ошибку. Получается он не успевает впоймать второй байт. Попробовал ставить 2 стоповых бита - не видит второй байт. Попробовал вставить между этими двумя байтами 0xFF - заработало! Картина стала такова: МК ловит первый байт, стартового бита второго байта не видит, дальше идут 1, которые МК воспринимает как молчание на линии, дальше ловит третий байт, считая его вторым.

 

Вопрос - почему МК не воспринимает нормально следующие сразу друг за другом байты?

 

Очень вероятно, что он в это время подстраивает генератор usart-a. (скорость определяется автоматически).

 

Столкнулся с тем, что версии загрузчика, описанные на сайте ST и в чипах STM32F103- разные.

Антоха приводил ссылку несколькими страницами ранее на open sourse проект, который не работает с STM32F103, но прекрасно работает с F100.

 

У FlashLoader Demo есть версия для командной строки, на основе ее удобно делать приложения для прошивки. (просто запускаете батник). Или запускать ее из своей графической оболочки.

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Столкнулся с тем, что версии загрузчика, описанные на сайте ST и в чипах STM32F103- разные.

Антоха приводил ссылку несколькими страницами ранее на open sourse проект, который не работает с STM32F103, но прекрасно работает с F100.

Работает он с STM32F103, но только с достаточно новыми. Или, точнее, не работает со слишком старыми.

http://electronix.ru/forum/index.php?s=&am...st&p=952862

 

_____________

Вот таки зря такая длиннющая тема «про всё» сделана.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добрый день, что то с АЦП не ладиться у меня пните в нужном направлении или подскажите что не так?

  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 в любой момент времени. А там постоянно висят единицы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот таки зря такая длиннющая тема «про всё» сделана.

Ах, как же я с Вами согласен!

Не очень прилично было бы говорить в таком случае автору "аятебечтоговорил". Но, чёрт возьми, АЯТЕБЕЧТОГОВОРИЛ!

Буду думать как весь этот хлам в божеский вид привести.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Но, чёрт возьми, АЯТЕБЕЧТОГОВОРИЛ!

 

Ну, раз уж так, отцепите тему из шапки. Я не буду возражать. Вы мудрее и опытнее. Все таки, изначально я просил создать под форум STM32, и на мой взгляд это было бы куда лучше. В форуме ARM чуть ли каждая 3-я тема о STM32, с продвижением F2 их будет еще больше.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В форуме ARM чуть ли каждая 3-я тема о STM32 ...

Другие две трети - это LPC и то, что от атмела, что тоже не мало.

Кроме того, существенная доля вопросов в этой теме относятся скорее к ядру Cortex-M3, к GCC, IAR, программированию вообще и т. д.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все таки, изначально я просил создать под форум 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 и люминари)

 

Правда, это требует самодисциплины от участников форума, проще попросить администрацию сделать разметку...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Крайне интересно опробовать STM32F100C4T6B. Пытаюсь определиться с IDE и прошиванием. Как я понял, Keil их не поддерживает? Есть ли у них встроеный бутлоадер и можно ли из шить через СОМ-порт (MAX232)? Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Крайне интересно опробовать 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.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, Keil поддерживает.

По поводу загрузчика - ну это просто неприлично. Вы бы хоть в даташит заглянули бы. Там чёрным по белому написано:

На счет загрузчика виноват. Исправлюсь. По поддержке Keil: пытался завести новый проект и не нашел STM32F100. Keil uVision 4.00 . Может нужен новее?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

пытался завести новый проект и не нашел STM32F100. Keil uVision 4.00 . Может нужен новее?

В более новой версии должно быть. Можно и в старой, если там есть STM32F101. Они почти идентичны. STM32F100 чуть помедленнее и в нём добавлен ЦАП.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость
Эта тема закрыта для публикации ответов.
×
×
  • Создать...