hd44780 0 21 июля, 2013 Опубликовано 21 июля, 2013 · Жалоба А где RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOB, ENABLE); ? Или в F0 не нужно? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andries5 0 21 июля, 2013 Опубликовано 21 июля, 2013 (изменено) · Жалоба Видимо моя вина, не расписал комментарии. Но это нормально, запомнит. А то автоматом прошло и хорошо, а надо в отладке пройти по шагам и понять что там делается подробно. Я так делаю. В ARM каждый модуль необходимо включить подачей тактового сигнала. hd44780 Вам подсказал, порты А и С были включены, а В нет. Потому и не заработал. Изменено 21 июля, 2013 пользователем andries5 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Artos5 0 21 июля, 2013 Опубликовано 21 июля, 2013 · Жалоба Видимо моя вина, не расписал комментарии. Но это нормально, запомнит. А то автоматом прошло и хорошо, а надо в отладке пройти по шагам и понять что там делается подробно. Я так делаю. В ARM каждый модуль необходимо включить подачей тактового сигнала. hd44780 Вам подсказал, порты А и С были включены, а В нет. Потому и не заработал. Большущее Вам спасибо! Не знаю , куда я смотрел ? :) Теперь работает порт В : ))) Мне начинает нравится ARM! Особенно точностью генерирования сигнала! Настроил прерывание на 100Гц и в нем меняю состояние выхода, и мой мультиметр показал точно 50.00Гц ! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andries5 0 21 июля, 2013 Опубликовано 21 июля, 2013 · Жалоба Особенно точностью генерирования сигнала! Настроил прерывание на 100Гц и в нем меняю состояние выхода, и мой мультиметр показал точно 50.00Гц ! Учтите, на плате STM32F0Discovery целевой МК, тактируется от встроенного генератора. На плате нет кварца! Только место под него. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Artos5 0 21 июля, 2013 Опубликовано 21 июля, 2013 · Жалоба Учтите, на плате STM32F0Discovery целевой МК, тактируется от встроенного генератора. На плате нет кварца! Только место под него. Я это заметил :) А скажите пожалуйста что это за системный таймер? И с какой макс. частотой могут происходить прерывания? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
HHIMERA 0 21 июля, 2013 Опубликовано 21 июля, 2013 · Жалоба Учтите, на плате STM32F0Discovery целевой МК, тактируется от встроенного генератора. На плате нет кварца! Только место под него. И что??? Вы ничего не путаете??? SB18 (MCO) ON Provides the 8 MHz for OSC_IN from MCO of STM32F103C8T6. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andries5 0 21 июля, 2013 Опубликовано 21 июля, 2013 (изменено) · Жалоба Верно! SB18 замкнут, а SB17 разомкнут. Не обратил внимания. Значит от кварца. А о SYSTICK почитать например http://chipspace.ru/stm32-systick Изменено 21 июля, 2013 пользователем andries5 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Artos5 0 22 июля, 2013 Опубликовано 22 июля, 2013 · Жалоба Верно! SB18 замкнут, а SB17 разомкнут. Не обратил внимания. Значит от кварца. А о SYSTICK почитать например http://chipspace.ru/stm32-systick Спасибо! Хорошо разжевано! :) Вот по больше таких примеров и описаний! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andries5 0 22 июля, 2013 Опубликовано 22 июля, 2013 · Жалоба Сейчас разбираюсь с таймерами на F0, подбираю подобные описания. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Artos5 0 22 июля, 2013 Опубликовано 22 июля, 2013 · Жалоба Здесь были? > http://forum.easyelectronics.ru/viewtopic....f=35&t=7080 Там по одной ссылке есть очень хорошая книга по СТМ32 на Русском! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_D9_ 0 16 августа, 2013 Опубликовано 16 августа, 2013 (изменено) · Жалоба вопрос снят) Изменено 16 августа, 2013 пользователем _D9_ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KuAlex 0 6 ноября, 2013 Опубликовано 6 ноября, 2013 · Жалоба Создал проект, пробуйте. Не могу запустить проект в симуляторе - *** error 65: access violation at 0x0000000C : no 'read' permission Подскажите куда копать? Пробовал с stm32f100 debug c помощью st-link проходило успешно, вот только меню периферии существенно отличалось - можно было наблюдать подробную информацию о состоянии портов, настройках и частотах. Здесь же голые регистры показаны. Этот момент от чего зависит? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Falkon_99 0 7 ноября, 2013 Опубликовано 7 ноября, 2013 · Жалоба В симуляторе проэкт может не работать, например если при инициализации в коде есть бесконечный цикл ожидания готовности регистров. На реальной плате эта проверка легко проходит, а в симуляторе зависает. Может помочь галочка RUNtoMAIN, с которой вы пропустите начальный код STARTUP Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KuAlex 0 8 ноября, 2013 Опубликовано 8 ноября, 2013 · Жалоба В симуляторе проэкт может не работать, например если при инициализации в коде есть бесконечный цикл ожидания готовности регистров. На реальной плате эта проверка легко проходит, а в симуляторе зависает. Может помочь галочка RUNtoMAIN, с которой вы пропустите начальный код STARTUP Дело в том что проект не стартовал совсем, в нулевом адресе. Галочка не помогла.. С другого проекта подглядел, здесь помогло. Установил параметр SARMCM3.DLL ->> "-REMAP" во вкладке Debug. Ошибки все равно идут, но симулирует, правда периферию показывает не так подробно как 32F100 и пользы не приносит. Что бы это значило? И еще вопрос, есть шанс прошить F0 при помощи st-link установленного vlDiscovery или сразу заказывать программатор вместе с МК? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Artos5 0 12 ноября, 2013 Опубликовано 12 ноября, 2013 (изменено) · Жалоба Добрый день дорогие друзья и товарищи! Помогите пожалуйста чайнику... Начну по порядку. есть файлы: 1) main.c // тут есть функции индикации 2) STM32F0xx_it.c // тут содержатся обработчики прерывания Во втором файле , такой обработчик: void SysTick_Handler(void) { indication_funс(); } void led_out (){ clear_leds; // digit off switch (y) // select digit { case 0: IND_PORT->ODR = led_buff[0]; digit_1; break; case 1: IND_PORT->ODR = led_buff[1]; digit_2; break; case 2: IND_PORT->ODR = led_buff[2]; digit_3; break; } if (++y>2)y=0; } void indication_func() { temp1 = temp; temp_lcd1=temp_lcd2=temp_lcd3=0; while (temp1>99) { temp1-=100; temp_lcd3++; } while (temp1>9) { temp1-=10; temp_lcd2++; } while (temp1<10 && temp1!=0) { temp1--; temp_lcd1++; } if(temp<10) { led_buff[2]=led_table[temp_lcd1]; led_buff[1]=led_table[10]; led_buff[0]=led_table[10]; } else if(temp>9 && temp<100) { led_buff[1]=led_table[temp_lcd1]; led_buff[2]=led_table[temp_lcd2]; led_buff[0]=led_table[10]; } else if(temp>99) { led_buff[0]=led_table[temp_lcd1]; led_buff[1]=led_table[temp_lcd2]; led_buff[2]=led_table[temp_lcd3]; } led_out(); } Хочу поместить в обработчик системного таймера функцию indication_func(); Никакими из всевозможных способов мне не получается это сделать.... Надо такое: в прерывании работает индикация и разложение числа на разряды, а в основном цикле я только отправляю в переменную значения. temp=111; Помогите пожалуйста! Буду очень благодарен! Изменено 12 ноября, 2013 пользователем Artos5 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться