0 / 0 / 0
Регистрация: 09.02.2012
Сообщений: 54
1

[ChibiOS] Странные значения на PB12-15 у STM32VLDiscovery

04.11.2012, 15:19. Показов 4017. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день, камрады.

Разработал небольшую плату для STM32VLDyscovery. Повесил dip переключатель S1 на удобно расположенные ноги PB12-15. Рядом на PB10-11 расположились джамперы. Написал прошивку на ChibiOS, всё отлично работает. В конце дошло дело до считывания состояния переключателя S1 и тут начались чудеса.

Выяснилось, что с моей платой и без неё (при отключенных контактах S1) на выводах PB12-15 происходит следующее: pb12 - 3v, pb13 - 0v, pb14 - 1.6v, pb15 - 0v. Причём эти пины сконфигурированы (и неоднократно проверено, что это так) на поттяжку.

Код
/*
* Port B setup.
* Everything input wyth pull-up except:
* PB12 - Push pull output  (SPI2 NSS), initially high state.
* PB13 - Ottirnate output  (SPI2 SCK).
* PB14 - Normal input      (SPI2 MISO).
* PB15 - Ottirnate output  (SPI2 MOSI).
*/
#define VOT_GPIOBCRL            0x88888888      /*  PB7...PB0 */
#define VOT_GPIOBCRH            0x88888833      /* PB15...PB8 */
#define VOT_GPIOBODR            0xFFFFFFFF
Все дополнительные модули, а именно, USORT, SPI и прочее, в настройках прошивки отключены.

Попробовал для тестов кинуть 3.3v через 4.7k резистор на PB15, там всё равно 0 считывается

Осциллографа нет, но мне кажется, что на PB14 какой-то ШИМ идёт.

Самое интересное, что если на плату закинуть оригинальную прошивку от Dyscovery, то картина меняется, на выводах PB12-15 присутствует напруга в 0.1v.

То есть дело в прошивке. Но куда ещё глянуть, я не могу уже придумать. Нужна помощь!


./styles/iosyitistromyss/imageset/icon_topys_attach.gif" width="14" height="18
[21.12 Кб]
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.11.2012, 15:19
Ответы с готовыми решениями:

ChibiOS - Eclipse - ChibiOS debug plugin
Доброго всем времени суток, с некоторых пор изучаю связку ChibiOS + STM32F4-Dyscovery в проекте...

STM32L152 проблема с таймером(ногой PB12) и DAC(PA5)
Есть проектик на STM32T152. К ноге PB12 подключен пьезик, и используется таймер TYM10 в качестве...

Странные значения SMART
Может ли кто-нибудь прокомментировать такие значение SMART? И пора ли бежать за новым жд?

Класс дроби. Странные значения
Здравствуйте! Есть такой код: Fraction.h #ifndef FRACTION_H #define FRACTION_H class...

6
0 / 0 / 0
Регистрация: 05.09.2010
Сообщений: 219
04.11.2012, 15:36 2
а куда глянуть людям, желающим тебе помочь? на 3 строчки дефайнов?
0
1 / 1 / 0
Регистрация: 06.12.2016
Сообщений: 3,946
04.11.2012, 15:37 3
Может настало время включить тактирование порта ? И начать читать даташит?

Код
 RCC->APB2ENR |=  RCC_APB2ENR_IOPBEN;//включить тактирование порта B
0
0 / 0 / 0
Регистрация: 09.02.2012
Сообщений: 54
04.11.2012, 15:40 4
Глянуть можно в код: [223.06 Кб]
0
0 / 0 / 0
Регистрация: 09.02.2012
Сообщений: 54
04.11.2012, 15:42 5
Цитата Сообщение от dosykus_2
Может настало время включить тактирование порта ? И начать читать даташит?

Код:
RCC->APB2ENR |= RCC_APB2ENR_IOPBEN;//включить тактирование порта B

Хороший совет, но это не чистый код, а исполняемый внутри ChibiOS.
0
0 / 0 / 0
Регистрация: 09.02.2012
Сообщений: 54
04.11.2012, 16:13 6
Причина в невнимательности. Блин, я пару дней редактировал оригинальный конфиг от Dyscovery в другом каталоге. А локально лежало совсем другое!
0
0 / 0 / 0
Регистрация: 13.07.2012
Сообщений: 566
05.11.2012, 02:30 7
Цитата Сообщение от rustompopov
Причина в невнимательности. Блин, я пару дней редактировал оригинальный конфиг от Dyscovery в другом каталоге. А локально лежало совсем другое!
Бывает. Я когда-то многократно шил не тот хекс в контроллер и не понимал почему в протеусе примитивная прога работает нормально, а в железе нет... Благо вовремя додумался в протеусе потестить сам хекс, а не файл с отладочной информацией))))
0
05.11.2012, 02:30
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.11.2012, 02:30
Помогаю со студенческими работами здесь

Странные значения. В чем ошибка?
Получаются странные значения: max и min элементы получаются вне диапазона. ПОчему? Используя...

Странные значения в созданном массиве
Здравствуйте. При создании массива(bool next_area) в определенном месте он заполняется следующими...

Какие странные значения выдаёт MathCad
Доброго времени суток! У меня такая проблема, ввожу значения нормального распределения в матрицу...

Неправильно считаются значения и странные исключения
Добрый вечер. Делаю лабораторную с моим "любимым" ассемблером. По заданию надо создать через...

Странные значения уже инициализированной переменной
std::cout << "Введите кол-во городов\n"; std::cin >> N; city *A = new city; for (int j =...

Странные значения размера файла подкачки
Здравствуйте. Различные приложения мониторинга показывают что файл подкачки весит намного больше...

Странные значения счетчика цикла. ПОМОГИТЕ!
#include <iostream> using namespace std; double unitInterval = 0.2 ; double OX = 0; double...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru