Найден 31 результат
Перейти к расширенному поиску
- TDuke
- Сб июн 14, 2014 13:51:02
- Форум: ARM
- Тема: STM32: Трудности при освоении
- Ответы: 33
- Просмотры: 11198
Не, обычный аналоговый вход.
Код: Выделить всё
PORT.GPIO_Pin = GPIO_Pin_3;
PORT.GPIO_Mode = GPIO_Mode_IN_FLOATING;
USART2->SR дает - 00 1100 0000. Тоесть активны только флаги TC и TXE. Приема байта нету. Обработчик прерываний нужно полностью проверять.
- TDuke
- Сб июн 14, 2014 13:28:12
- Форум: ARM
- Тема: STM32: Трудности при освоении
- Ответы: 33
- Просмотры: 11198
Хе! В системе постоянно возникают прерывания от УАРТ, хотя по нему ничего не передается. Иду разбираться. Вот что значит побыстрячку чужой код встроить. Ладно это не для этой темы.
Но все же это не объясняет странного поведения под кейлом. Как будет время попробую разобраться, что именно в коде ...
- TDuke
- Сб июн 14, 2014 13:08:03
- Форум: ARM
- Тема: STM32: Трудности при освоении
- Ответы: 33
- Просмотры: 11198
Еще одна мысль. У меня довольно много прерываний. 3 внешних, два от таймеров, от УАРТ. Проверю еще на предмет прерываний.
Но это не объясняет, почему под gcc работает, а под кейловским компилятором глючит. Тут наверно, какой-то нюанс пока неведомый мне.
Кстати под level0 еще одна переменная ...
- TDuke
- Сб июн 14, 2014 12:58:52
- Форум: ARM
- Тема: STM32: Трудности при освоении
- Ответы: 33
- Просмотры: 11198
Пробовал кажись. Иду поставлю именно 0 уровень.
Поставил левел 0. Та же история. Потом пройдусь по дизассемблерному коду. Интересно, что именно произвольно меняет переменную в цикле.
- TDuke
- Сб июн 14, 2014 12:25:59
- Форум: ARM
- Тема: STM32: Трудности при освоении
- Ответы: 33
- Просмотры: 11198
Ребята, я подумаю как вырезать глючный код. Потом выложу.
Проблемы начались когда перешел на кейл. Под gcc все нормально компилировалось и глюков не наблюдалось. Вполне вероятно, что у меня настройка компилятора неверная.
Снял скринкаст под 5-м кейлом и кокосом. Программа одна и та же. При ...
- TDuke
- Пт июн 13, 2014 16:03:44
- Форум: ARM
- Тема: STM32: Трудности при освоении
- Ответы: 33
- Просмотры: 11198
О! Еще один!) Весма характерное поведение для защитника тролля. Вероятно они даже в друзьях.
Господа тролли! Помощь от троллей не исходит. От вас двоих тут никакой помощи и не было.
И помогают здесь те, кто не троллит. Вот Мурзик например. А некоторые просто болтают.
просит помощи , и если нихрена ...
- TDuke
- Пт июн 13, 2014 02:12:11
- Форум: ARM
- Тема: STM32: Трудности при освоении
- Ответы: 33
- Просмотры: 11198
Размечтался!!! Инфы в инете хватает вполне... чтобы не сорить на форумах вопросами...
Ага, типа форумы, для частного закрытого общения считающих себя продвинутыми. А где спросить как не на форуме? Инфы хватает. А вот хрен ее найдешь сразу, и именно ту, что нужна. Мне легче спросить. Жадный или ...
- TDuke
- Пт июн 13, 2014 01:20:52
- Форум: ARM
- Тема: STM32: Трудности при освоении
- Ответы: 33
- Просмотры: 11198
Аааа!... понял! Обычный тролль) Я таких много видывал.
А как же... откровения здесь и на ИзыйдиЭлектроникс???
А я никогда не стеснялся спросить, если чего-то не знаю, или забыл.
А вот тролль когда обломался
А по поводу volatile... недочитал в спешке... да...
после напыщенного выступления ...
- TDuke
- Чт июн 12, 2014 20:24:58
- Форум: ARM
- Тема: STM32: Трудности при освоении
- Ответы: 33
- Просмотры: 11198
Нашел в Cети такое решение для обработчика HardFault:
Эта функция извлекает регистры прерванной по исключению программы из стека. Компилится нормально.
void prvGetRegistersFromStack( uint32_t *pulFaultStackAddress )
{
// These are volatile to try and prevent the compiler/linker optimising them ...
- TDuke
- Чт июн 12, 2014 17:51:29
- Форум: ARM
- Тема: STM32: Трудности при освоении
- Ответы: 33
- Просмотры: 11198
Скорее всего так и есть. Я слишком по быстрячку написал хендлер для УАРТ. Вполне мог забыть какой-то случай обработать.
Однако у УАРТ обработчик всего один. Все что случается с УАРТ сваливается в одно прерывание.
- TDuke
- Чт июн 12, 2014 15:19:57
- Форум: ARM
- Тема: STM32: Трудности при освоении
- Ответы: 33
- Просмотры: 11198
Интересный глюк словил. Переменная объявлена глобально. Считает количество некоторых вхождений в функцию обработки прерывания
"Интересный глюк словил, оказалось, что забыл!"(С)
Идентификатор volatile А.С. Пушкин за вас присваивать будет??? :)))
Ещё и про атомарные операции почитайте... а то вдруг ...
- TDuke
- Чт июн 12, 2014 13:58:20
- Форум: ARM
- Тема: STM32: Трудности при освоении
- Ответы: 33
- Просмотры: 11198
Интересный глюк словил. Переменная объявлена глобально. Считает количество некоторых вхождений в функцию обработки прерывания УАРТ. Изменяется четко только в обработчике. Принимает значения от 0 до 3 Больше нигде не модифицируется.
Так вот если эту переменную объявить как int8_t или uint8_t, то она ...
- TDuke
- Чт июн 12, 2014 13:11:33
- Форум: ARM
- Тема: Про Keil uVision 5
- Ответы: 207
- Просмотры: 166726
Плохо. ГНУшный дебаггер под кокосом видел и локальные и глобальные переменные. Смысл тогда от дебаггера, который не может простым образом показывать элементарное юзеру?
Он точно не может видеть локальные переменные, параметры процедур? Как-то это совсем хило.
Только в регистрах? Через стек ничего ...
- TDuke
- Чт июн 12, 2014 11:53:54
- Форум: ARM
- Тема: Про Keil uVision 5
- Ответы: 207
- Просмотры: 166726
Благодарю!
Вижу файл с макросом ассерт вынесен в отдельную папку SPL_Config. Так же вижу папку Out, а где в менеджере проекта настраивается вывод в эту папку?
Проблема с отладчиком. Захожу в отладку по брейкпоинту а локальные переменные отладчик не видит. Пишет что переменные не в зоне видимости ...
- TDuke
- Ср июн 11, 2014 23:26:01
- Форум: ARM
- Тема: Про Keil uVision 5
- Ответы: 207
- Просмотры: 166726
Когда определял те ключи, так ошибки лавиной сыпались. Разобрался по другому. Подключил еще файл с определением макроса - stm32f10x_conf.h Все заработало. Потом полчаса разбирался с прошивкой и отладкой. При отладке VLDiscovery нужно и STlink менять на другой. Просто много непривычных мелочей ...
- TDuke
- Ср июн 11, 2014 20:26:54
- Форум: ARM
- Тема: Про Keil uVision 5
- Ответы: 207
- Просмотры: 166726
Блин, ну никак не откомпилю свой проект. Уже и создал проект и пораспихивал файлы, прописал инклуды. Все скомпилилось кроме одной фигни.
assert_param() - что за ё моё? Нигде определения этой функции нету. Похоже вообще на макрос. А где его взять?
Думаю нужно заглушку сделать. Только не знаю как ...
- TDuke
- Ср июн 11, 2014 19:08:46
- Форум: ARM
- Тема: Про Keil uVision 5
- Ответы: 207
- Просмотры: 166726
Ага! Это не нужно прописывать пути поиска либ.
Это нужно при создании структуры проекта добавить нужные файлы в менеджере проекта... Мммм... непривычно. Ну что же иду попробую.
- TDuke
- Ср июн 11, 2014 18:10:33
- Форум: ARM
- Тема: Про Keil uVision 5
- Ответы: 207
- Просмотры: 166726
Буду признателен за шаблончик)
Я работаю с STM32VLDiscovery, STM32F4Discovery, STM32F429iDisco. Думаю на базе Вашего шаблона создам 3 шаблона под нужные платы.
В общем удаляю полностью все и ставлю пятый кейл с чистого листа. Там еще с руссификацией отображения комментариев в исходниках нужно ...
- TDuke
- Ср июн 11, 2014 17:41:09
- Форум: ARM
- Тема: Про Keil uVision 5
- Ответы: 207
- Просмотры: 166726
А я вот до сих пор толком не могу разобраться как в этих средах либы настраивать. В кокосе все как-то сразу настроенно было.
Ну я согласен настроить, но понять не могу принцип организации структуры и подключение библиотек.
У меня например stm32f10x.h не находит. Он лежит глубоко в CMSIS ...
- TDuke
- Ср июн 11, 2014 17:12:53
- Форум: ARM
- Тема: Про Keil uVision 5
- Ответы: 207
- Просмотры: 166726
Благодарю! Компилятор пропустил)
И 5-й Кейл заработал)
Ваша помощь очень своевременна.
И сразу вопрос - А в чем отличие 5-го кейла от 4-го? Есть какие-то новые вкусности?