Портал для радиолюбителей и разработчиков электроники · с 2003 годаРеклама на сайте
Найти компонент, схему или даташит

Даташиты, справочник отечественных приборов, схемы с разбором и живой форум


 
Опции темы

Изучаем STM32 Cortex M3

Непрочитано 26.01.2011, 18:46  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от andries5 Посмотреть сообщение
Глянуть-бы на проект, глазком. А? Какими либами пользовались?
Выкладываю , не пинать ...
Вложения:
Тип файла: rar DAC.rar (73.3 Кб, 459 просмотров)
Реклама:
__________________
Осторожно , злой кот
dosikus вне форума  
Эти 6 пользователя(ей) сказали Спасибо dosikus за это сообщение:
andries5 (26.01.2011), General_Dead (16.02.2011), Highlander (31.01.2011), kozeka (19.03.2012), Lestatlvv (04.03.2011), master.k (10.02.2011)
Непрочитано 26.01.2011, 19:31  
PavelV
Прохожий
 
Регистрация: 18.02.2007
Сообщений: 4
Сказал спасибо: 0
Сказали Спасибо 3 раз(а) в 2 сообщении(ях)
PavelV на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Набросал статейку по быстрому старту с STM32 на примере Discovery. Доступен демо-проект для связки Eclipse + Sourcery GCC.

"Hello World" для STM32 или с чего начать

Приятного прочтения!
PavelV вне форума  
Непрочитано 26.01.2011, 22:05  
ut1wpr
Почётный гражданин KAZUS.RUN
 
Аватар для ut1wpr
 
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,613
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
ut1wpr на пути к лучшему
По умолчанию Re: Конкурс от EBV Elektronik и STMicroelectronics. Рассылают отладочные платы

Сообщение от PavelV Посмотреть сообщение
Набросал статейку по быстрому старту с STM32 на примере Discovery. Доступен демо-проект для связки Eclipse + Sourcery GCC.

"Hello World" для STM32 или с чего начать

Приятного прочтения!
Прочитал. Обнаружил вот это:
Цитата:
После завершения загрузки прошивки, необходимо отключить питание отладочной платы, а затем включить (вынуть кабель из USB и воткнуть снова).
Ну не должно быть так у "правильных" загрузчиков. Загрузчик должен уметь ребутнуть кристалл, никаких процедур с питанием не должно быть! Если постоянно дергать разъем USB, его надолго не хватит. Ну да ладно, это говорит о том, что они этот глюк не побороли. Видимо, загрузка из Кейла и ИАРа тоже не завершается. Был с самого начала такой глюк. Делаем загрузку из среды Кейла либо ИАРа, передергиваем питание (кстати, это удобнее делать при помощи джампера на плате, можно даже нормально-замкнутую кнопку вместо этого джампера повесить - в любом случае, это костыль) и имеем... работу старой прошивки. Лишь загружая скомпилированный проект в режиме дебаггера, он таки загружается. Но при этом тоже требуется "передергивание" питания. Плохо! Сыро. А если мне по условиям проекта надо внести изменения и проверить именно не выключая питания, что, разве не может быть таких ситуаций? Они с этим уже третий месяц живут и рассылают борды с этим явлением. Если из Эклипса тоже надо питаловом шаманить - значит глюк аппаратный, такое продавать нельзя. Отсюда и бесплатная раздача глючной партии. Но все это лишь мое личное мнение. Многие просто советуют не обращать внимание на это неудобство. Но ведь потом с этим загрузчиком работать и работать. Сколько бы он ни стоил, он должен работать правильно? Или не так?
ut1wpr вне форума  
Непрочитано 26.01.2011, 22:44  
PavelV
Прохожий
 
Регистрация: 18.02.2007
Сообщений: 4
Сказал спасибо: 0
Сказали Спасибо 3 раз(а) в 2 сообщении(ях)
PavelV на пути к лучшему
По умолчанию Re: Конкурс от EBV Elektronik и STMicroelectronics. Рассылают отладочные платы

Сообщение от ut1wpr Посмотреть сообщение
Прочитал. Обнаружил вот это:
Ну не должно быть так у "правильных" загрузчиков. Загрузчик должен уметь ребутнуть кристалл, никаких процедур с питанием не должно быть! Если постоянно дергать разъем USB, его надолго не хватит. Ну да ладно, это говорит о том, что они этот глюк не побороли. Видимо, загрузка из Кейла и ИАРа тоже не завершается. Был с самого начала такой глюк. Делаем загрузку из среды Кейла либо ИАРа, передергиваем питание (кстати, это удобнее делать при помощи джампера на плате, можно даже нормально-замкнутую кнопку вместо этого джампера повесить - в любом случае, это костыль) и имеем... работу старой прошивки. Лишь загружая скомпилированный проект в режиме дебаггера, он таки загружается. Но при этом тоже требуется "передергивание" питания. Плохо! Сыро. А если мне по условиям проекта надо внести изменения и проверить именно не выключая питания, что, разве не может быть таких ситуаций? Они с этим уже третий месяц живут и рассылают борды с этим явлением. Если из Эклипса тоже надо питаловом шаманить - значит глюк аппаратный, такое продавать нельзя. Отсюда и бесплатная раздача глючной партии. Но все это лишь мое личное мнение. Многие просто советуют не обращать внимание на это неудобство. Но ведь потом с этим загрузчиком работать и работать. Сколько бы он ни стоил, он должен работать правильно? Или не так?
Да, так оно и есть - для того, чтобы запустить новую прошивку необходимо передернуть питание, никакие другие манипуляции (в том числе аппаратный Reset) не помогают. А может быть это я не до конца разобрался..

Eclipse, кстати, тут не причем. В моем примере используется фирменный загрузчик.

ST-Link, увы, никем кроме Keil и IAR не поддерживается ИМХО, довольно бесполезная штукенция (которая в дискавери к тому же ограничена одним SWD), как ни крути нужен нормальный JTAG. У меня есть MT-Link (клон J-Link) - с фирменным GDB сервером работает отлично.

Последний раз редактировалось PavelV; 26.01.2011 в 22:46.
PavelV вне форума  
Непрочитано 26.01.2011, 22:49  
Murka-MakMur
Вид на жительство
 
Аватар для Murka-MakMur
 
Регистрация: 05.09.2007
Адрес: Новороссия ЛНР Рубежное -> РФ Калуга
Сообщений: 363
Сказал спасибо: 10
Сказали Спасибо 74 раз(а) в 59 сообщении(ях)
Murka-MakMur на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от PavelV Посмотреть сообщение
для того, чтобы запустить новую прошивку необходимо передернуть питание
Ничего подобного делать не приходится, или я чего то не правильно делаю?
__________________
Политика России будет выглядеть неоднозначной до тех пор, пока не будет решен исход битвы.
Чем больше слёз тем больше облегчения, в слезах и заключается лечение.
Не зли меня
Murka-MakMur вне форума  
Непрочитано 26.01.2011, 23:15  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Это похоже только для прошивалки , в дебуггере сразу стартует.
Выход юзать STM32 ST-Link Utility .
Там и стартуется и сбрасывается ...

Гы... И все таки я не зря ST-link купил...
__________________
Осторожно , злой кот

Последний раз редактировалось dosikus; 27.01.2011 в 00:07.
dosikus вне форума  
Непрочитано 26.01.2011, 23:34  
Serega_B
Прописка
 
Регистрация: 09.11.2010
Сообщений: 102
Сказал спасибо: 4
Сказали Спасибо 28 раз(а) в 22 сообщении(ях)
Serega_B на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

Сообщение от ut1wpr Посмотреть сообщение
Сообщение от PavelV
Набросал статейку по быстрому старту с STM32 на примере Discovery. Доступен демо-проект для связки Eclipse + Sourcery GCC.

"Hello World" для STM32 или с чего начать

Приятного прочтения!

Прочитал. Обнаружил вот это:

Цитата:
После завершения загрузки прошивки, необходимо отключить питание отладочной платы, а затем включить (вынуть кабель из USB и воткнуть снова).

Ну не должно быть так у "правильных" загрузчиков. Загрузчик должен уметь ребутнуть кристалл, никаких процедур с питанием не должно быть! Если постоянно дергать разъем USB, его надолго не хватит. Ну да ладно, это говорит о том, что они этот глюк не побороли. Видимо, загрузка из Кейла и ИАРа тоже не завершается. Был с самого начала такой глюк. Делаем загрузку из среды Кейла либо ИАРа, передергиваем питание (кстати, это удобнее делать при помощи джампера на плате, можно даже нормально-замкнутую кнопку вместо этого джампера повесить - в любом случае, это костыль) и имеем... работу старой прошивки. Лишь загружая скомпилированный проект в режиме дебаггера, он таки загружается. Но при этом тоже требуется "передергивание" питания. Плохо! Сыро. А если мне по условиям проекта надо внести изменения и проверить именно не выключая питания, что, разве не может быть таких ситуаций? Они с этим уже третий месяц живут и рассылают борды с этим явлением. Если из Эклипса тоже надо питаловом шаманить - значит глюк аппаратный, такое продавать нельзя. Отсюда и бесплатная раздача глючной партии. Но все это лишь мое личное мнение. Многие просто советуют не обращать внимание на это неудобство. Но ведь потом с этим загрузчиком работать и работать. Сколько бы он ни стоил, он должен работать правильно? Или не так?
НЕ ТАК!
Ну нет там такого глюка! Иначе я бы уже три раза повесился, передергивая питание у целевого контроллера (STM32F103RB). Специально заказал халявный Дисковери32 для того чтобы проверить, но он пока не приехал. Пользуюсь Дисковери, купленным в DIgi-Key_е 9/30/2010 5:14:09 AM. Т.е. если бы там был глюк - он еще не устранен. Из ПО стоИт IAR 6.10.1.
Serega_B вне форума  
Непрочитано 27.01.2011, 00:55  
gromovi
Заблокирован
 
Регистрация: 12.09.2009
Сообщений: 420
Сказал спасибо: 148
Сказали Спасибо 166 раз(а) в 118 сообщении(ях)
gromovi на пути к лучшему
Вопрос Re: Изучаем STM32 Cortex M3

people запутался напрочь в настройках и2с. есть там Control register 2 (I2C_CR2)
где задается частота - чего???
из шита(Периферийная тактовая частота должна быть сконфигурирована, используя входную тактовую частоту APB (I2C
периферийное устройство соединялось с APB). Минимальная позволенная частота составляет 2 МГц, максимум
частота ограничена максимальной частотой APB (24 МГц) и внутренним ограничением
46 МГц.)
последовательность действий
● Program the peripheral input clock in I2C_CR2 Register in order to generate correct
timings
● Configure the clock control registers
● Configure the rise time register
● Program the I2C_CR1 register to enable the peripheral
● Set the START bit in the I2C_CR1 register to generate a Start condition
The peripheral input clock frequency must be at least:
● 2 MHz in Standard mode
● 4 MHz in Fast mode

а вот чем именно надо эту частоту задать? непоняткой выше или пред делителем шины APB1 prescaler?

Последний раз редактировалось gromovi; 27.01.2011 в 01:18.
gromovi вне форума  
Непрочитано 27.01.2011, 01:28  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

gromovi, В примерах поройся :
Пака_куда_установлен_Keil\ARM\Ex amples\ST\STM32F10xFWLib\Examples\I2C\M24C08_EEPROM

Код:
#define I2C_Speed              400000
#define I2C1_SLAVE_ADDRESS7    0xA0
////////////////////////////////////////////////
cut !!!!
//////////////////////////////////////
void I2C_Configuration(void)
{
  I2C_InitTypeDef  I2C_InitStructure; 

  /* I2C configuration */
  I2C_InitStructure.I2C_Mode = I2C_Mode_I2C;
  I2C_InitStructure.I2C_DutyCycle = I2C_DutyCycle_2;
  I2C_InitStructure.I2C_OwnAddress1 = I2C1_SLAVE_ADDRESS7;
  I2C_InitStructure.I2C_Ack = I2C_Ack_Enable;
  I2C_InitStructure.I2C_AcknowledgedAddress = I2C_AcknowledgedAddress_7bit;
  I2C_InitStructure.I2C_ClockSpeed = I2C_Speed;
  
  /* I2C Peripheral Enable */
  I2C_Cmd(I2C1, ENABLE);
  /* Apply I2C configuration after enabling it */
  I2C_Init(I2C1, &I2C_InitStructure);
}
__________________
Осторожно , злой кот

Последний раз редактировалось dosikus; 27.01.2011 в 01:44.
dosikus вне форума  
Сказали "Спасибо" dosikus
gromovi (27.01.2011)
Непрочитано 27.01.2011, 01:35  
gromovi
Заблокирован
 
Регистрация: 12.09.2009
Сообщений: 420
Сказал спасибо: 148
Сказали Спасибо 166 раз(а) в 118 сообщении(ях)
gromovi на пути к лучшему
По умолчанию Re: Изучаем STM32 Cortex M3

перерыл все вдоль и поперек. не хочу юзать кейловские библиотеки. хочу чтоб сам все ручками по даташиту(как можно юзать чужие библ. не зная как работает модуль?). а там тяни-толкай.
gromovi вне форума  
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Школа АRMрестлинга Uragan90 Микроконтроллеры, АЦП, память и т.д 54 22.08.2011 16:13
ARM Cortex M3 + Linux SiMiLya Микроконтроллеры, АЦП, память и т.д 10 17.06.2011 17:20
Помогите с STM32 - очень нужно... yakuzaa Микроконтроллеры, АЦП, память и т.д 60 04.08.2010 11:04
Как добавить поддержку для STM32 SFHK Микроконтроллеры, АЦП, память и т.д 11 18.12.2009 18:09


Часовой пояс GMT +4, время: 00:22.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.