|
|
  |
STM32 или LPC17xx?, для нового проекта надо |
|
|
|
Jun 19 2011, 08:45
|
Местный
  
Группа: Участник
Сообщений: 406
Регистрация: 1-03-06
Пользователь №: 14 821

|
Цитата(aaarrr @ Jun 19 2011, 10:36)  Кто такие "фирмварники", "электронщики", и за что им биться? Поясните, а то действительно какой-то бред. Ну, ну, когда мне человек втирает, что ему для опроса сенсора по i2c две недели надо, т.к. библиотеки в тунисе написаны, и не понять что там за программировано - эт фирмварники. если вы не из этого коллектива, то не пишите.
|
|
|
|
|
Jun 19 2011, 08:53
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(andron86 @ Jun 19 2011, 12:45)  Ну, ну, когда мне человек втирает, что ему для опроса сенсора по i2c две недели надо, т.к. библиотеки в тунисе написаны, и не понять что там за программировано - эт фирмварники. если вы не из этого коллектива, то не пишите. Ну, если человек за две недели не может освоить i2c, то его в любом случае гнать надо. Но точно так же надо гнать и того, кто на основе тунисских библиотек пишет проект на 100500 строк, а потом год не может довести его до ума из-за ошибок и архитектурных особенностей помянутых библиотек и элементарного незнания и нежелания изучать матчасть.
|
|
|
|
|
Jun 19 2011, 09:01
|
Местный
  
Группа: Участник
Сообщений: 406
Регистрация: 1-03-06
Пользователь №: 14 821

|
Да, согласен я. Ну что здесь например плохого: Код /******************************************************************************* * Function Name : I2C_GenerateSTART * Description : Generates I2Cx communication START condition. * Input : - I2Cx: where x can be 1 or 2 to select the I2C peripheral. * - NewState: new state of the I2C START condition generation. * This parameter can be: ENABLE or DISABLE. * Output : None * Return : None. *******************************************************************************/ void I2C_GenerateSTART(I2C_TypeDef* I2Cx, FunctionalState NewState) { /* Check the parameters */ assert_param(IS_I2C_ALL_PERIPH(I2Cx)); assert_param(IS_FUNCTIONAL_STATE(NewState));
if (NewState != DISABLE) { /* Generate a START condition */ I2Cx->CR1 |= CR1_START_Set; } else { /* Disable the START condition generation */ I2Cx->CR1 &= CR1_START_Reset; } }
Сообщение отредактировал andron86 - Jun 19 2011, 09:01
|
|
|
|
|
Jun 19 2011, 10:09
|

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

|
Цитата(ViKo @ Jun 19 2011, 13:36)  Вместо этого лучше разобраться в самих регистрах и битах STM32. Ну, давайте предположим, разобрались мы в битах и регистрах некого периферийного модуля STM32, как быть на практике с его конфигурированием и дальнейшей работой, методом проб и ошибок? Все таки, хотелось бы взглянуть на последовательность операций, рекомендованных первоисточником, + «поиметь» пример сколько-нибудь крупного проекта, написанного профи. К примеру, до использования STM32 я 2 года занимался программированием PIC24, у них куда лучше все это документировано, к описанию каждого периферийного модуля прилагается код на ассемблере (периферийная библиотека также имеется), иногда даже несколько для каждого конкретного случая. Мне стоило всего лишь перебить его на Си. В случае же с STM32 такого удобства я не нашел, пришлось ковыряться в периферийной библиотеке STM32 и разбираться по кусочкам.
--------------------
Magic Friend
|
|
|
|
|
Jun 19 2011, 10:24
|

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

|
Цитата(Danis @ Jun 19 2011, 13:09)  Ну, давайте предположим, разобрались мы в битах и регистрах некого периферийного модуля STM32, как быть на практике с его конфигурированием и дальнейшей работой, методом проб и ошибок? Все таки, хотелось бы взглянуть последовательность операций, рекомендованных первоисточником, + «поиметь» пример сколько-нибудь крупного проекта, написанного профи. Я - не профи, у меня опыта меньше вашего. Но сейчас я смотрю на примеры из библиотеки, только, чтобы понять последовательность действий. Пишу, но почему методом проб и ошибок? В соответствии с описанными регистрами.
|
|
|
|
|
  |
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|