|
Модераторы: PILOT, ManiaK, Mazzi |
|
supercelt |
|
||||
Опытный Профиль Группа: Участник Сообщений: 658 Регистрация: 25.8.2005 Репутация: нет Всего: 1 |
Добрый!
Вопрос наверное для вас простой, а у меня затык. Начал учить stm32. Пробую мигать.
Этот код выполняется норм. Но вот я прочитал, что если выставлять ODR напрямую, то он занимает слишком много тактов и лучше работать через регистр BSRR
Вот так не работает. В чём тут дело? |
||||
|
|||||
baldman88 |
|
||||
Бывалый Профиль Группа: Участник Сообщений: 210 Регистрация: 18.1.2009 Репутация: 1 Всего: 7 |
В BSRR за сброс отвечают старшие 16 бит (именно их нужно выставлять в единицу). То есть нужно что-то вроде:
Либо с помощью BRR:
|
||||
|
|||||
supercelt |
|
|||
Опытный Профиль Группа: Участник Сообщений: 658 Регистрация: 25.8.2005 Репутация: нет Всего: 1 |
не работает(( регистр bsrr не устанавливается и odr соответственно
|
|||
|
||||
baldman88 |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 210 Регистрация: 18.1.2009 Репутация: 1 Всего: 7 |
На платке, что под рукой, светодиод как раз подключен к PA1.
Все работает -- светодиод мигает. |
|||
|
||||
supercelt |
|
|||
Опытный Профиль Группа: Участник Сообщений: 658 Регистрация: 25.8.2005 Репутация: нет Всего: 1 |
Уважаемый baldman88 , спасибо за ответ)
У меня нет платки. У меня только визуальный отладчик в кейле. Я копернул ваш код и он ну как бы тоже не работает. Хотя я вот не знаю должен ли визуальный отладчик показывать забивание регистра BSRR. Я прилепляю картинку, там справа обвёл. Если я прописываю GPIOA->ODR = 0x2; то при отладке видно как бит ставится (справа), но я не хочу записывать в ODR, хочу работать через BSRR. если прописываю GPIOA->BSRR = 0x2; то справа ничего не видно. И я не понимаю работает ли выход или нет Присоединённый файл ( Кол-во скачиваний: 4 ) Безымянный.png 104,28 Kb |
|||
|
||||
baldman88 |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 210 Регистрация: 18.1.2009 Репутация: 1 Всего: 7 |
Кейла нет, поэтому сказать ничего не могу. Возможно его эмулятор не реализует такой функционал. Лучше все же сразу брать маленькую плату и программатор, тем более, что у китайцев стоят они сущие копейки. Да и впечатления, когда оно работает в живую, причем так, как нужно, ни в кокое сравнение не идут с впечатлениями от эмуляторов.
|
|||
|
||||
Правила форума "Микроконтроллеры (MCU) и микропроцессоры (MPU)" | |
|
На данный раздел помимо Правил форума распространяются текже следующие правила:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, PILOT, ManiaK, UniBomb, Mazzi. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Микроконтроллеры (MCU) и микропроцессоры (MPU) | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |