|
1 / 1 / 0
Регистрация: 20.02.2019
Сообщений: 50
|
|||||||||||
Зажечь светодиод используя bit banding18.03.2022, 16:44. Показов 4944. Ответов 58
Метки нет (Все метки)
Всем привет, хочу обратиться за помощью. Изучаю Assembler на МК STM32F100RBT6 и пытаюсь зажечь светодиод используя bit banding. Вроде адреса рассчитал правильно, возможно в регистры что-то не так записал. Хочу зажечь светодиод подключенный к порту PA0. Подключение такое: порт PA1->резистор 100 оМ->светодиод->GND.
0
|
|||||||||||
| 18.03.2022, 16:44 | |
|
Ответы с готовыми решениями:
58
STM32L15x + DMA + Bit Banding Atmel Studio, Proteus, atm16. Зажечь светодиод, используя Virtual Terminal Программирование управления портами К1986ВЕ92 с использованием Bit Banding в Keil |
| 23.03.2022, 13:14 | ||
|
так глядишь еще через пару дней переписки и дойдем до вопроса который ТС задавал ! :-) то есть правильно ли он использует битбандинг как функциональность mcu... :-) прогресс !!
0
|
||
|
4149 / 2727 / 433
Регистрация: 09.09.2017
Сообщений: 12,084
|
|
| 23.03.2022, 17:11 | |
|
0
|
|
| 23.03.2022, 19:43 | ||
|
а если серьездно - даже вот на вскидку и не помню чтобы кто то на СИ использовал битбандинг... может где нить в написании ОС есть.. но вообще не видел нигде... возможно мало видел...
0
|
||
|
4149 / 2727 / 433
Регистрация: 09.09.2017
Сообщений: 12,084
|
|||
| 23.03.2022, 19:52 | |||
|
А то нафантазировали себе непонятно что, а ответов от меня ждете. Выходит, не такая уж это полезная штука...
0
|
|||
| 23.03.2022, 20:00 | |||||||
|
битбандинг это один из типов адресации бит в микроконтроллере.. все. на этом точка использовать это или нет, это скорее выбор конкретного разработчика, его предпочтений, видения способа решения задач.. чем вас напрягает такое управление линиями дисплея в драйвере ?
причем этот код еще не хило оптимизируется.. но это пример... усложнять дальше не стал...
0
|
|||||||
| 23.03.2022, 20:10 | |
|
COKPOWEHEU,
кстати а я не с вами по среде ассемблера спорил года 2 назад ? :-) помню мы такой знатный срач устроили... по поводу функций иде и подсветки.... хоть я считал что подсветка это нифига не главное, но все таки в итоге это реализовал, причем в нормальном виде (с проверкой параметров, но правда получилось не все - допустимость регистров не проверяется еще и значения константных значений)
0
|
|
| 23.03.2022, 20:39 | ||||||
|
про BFI - смотрите описание инструкции
то есть должна быть указана позиция поля, а не адрес как у вас
0
|
||||||
|
|
|||
| 23.03.2022, 20:40 | |||
Добавлено через 1 минуту Ах да, это вы со мной спорили
0
|
|||
| 23.03.2022, 20:53 | ||
![]() неее, я спорил на тему что так как подсветка реализована в действующих редакторах - она бесполезна для программиста, и сделана для блондинок ) потом, из за вас пришлось сделать то как я ее вижу получилось очень похоже на то что я говорил.. хотя конечно еще надо кое что дописывать, но это уже во второй версии редактора....Добавлено через 5 минут вот что в итоге получилось https://habr.com/ru/post/542420/
1
|
||
| 23.03.2022, 20:57 | ||
|
а вот проверка вводимых инструкций очень и очень удобна - видишь чушь еще до компиляции...
0
|
||
|
1 / 1 / 0
Регистрация: 20.02.2019
Сообщений: 50
|
||||||
| 23.03.2022, 21:19 [ТС] | ||||||
|
Попробовал сделать все по примеру, вроде от ошибок избавился, а светодиод не горит.
0
|
||||||
| 23.03.2022, 21:43 | ||||||||||||||||||
и у вас соответственно (если R2=0) то
вы не умеете ее пользоваться ? по идее выбрать отладку где нить в меню и по шагам смотреть какое значение и куда записывается... я к сожалению по кейлу не советчик :-( но то что там отладка есть - это 100 пудов... да не сочтет админ за рекламу - вы бы скачали мой редактор, и в нем попробовали.. там правда если у вас stm32f1 VL Disco нужно будет маленькое изменение драйвера сделать для ST-Link (там версия V1), но потом сможете пользоваться отладчиком... и смотреть какие значения прямо в регистрах микроконтроллера получились и в регистрах периферии... вид на отладчик в ArmAsmEdit или посмотрите в интернете как выглядит отладка в кейл... без отладки на ассемблере будет тяжко, особенно в первое время.. да и потом с усложнением алгоритмов - все равно тяжко :-)
1
|
||||||||||||||||||
|
1 / 1 / 0
Регистрация: 20.02.2019
Сообщений: 50
|
||||||
| 23.03.2022, 21:49 [ТС] | ||||||
|
Тогда я запутался. Вот ваш пример. Есть GPIO_MODE_OUT50 и GPIO_CRH_MODE9_N. GPIO_MODE_OUT50 нам делает выход 50 МГц, а GPIO_CRH_MODE9_N что нам показывает.
0
|
||||||
| 23.03.2022, 22:31 | |||||||||||||||||||||||||||||||||||||||
GPIO_MODE_OUT10 - это режим ноги - то есть значение которое нужно поместить... дальше смотрите скрин BFI BFI <значение для изменения>, <что положить>, <с какой битовой позиции>, <сколько бит> то есть
если у вас второй вывод (ну то есть с номером 1 :-) если считать с нуля) то по идее должно быть
и кстати, для второго вывода чтение запись нужно делать в GPIO_CRL а не GPIO_CRH
![]() Добавлено через 21 минуту гм.. опять не зажглось ? :-( давайте вашу программу сюда тогда полностью со всеми правками.. завтра достану VL Discovery и посмотрю что не так... хотя вроде уже все обсудили... Добавлено через 2 минуты кстати, еще замечание, вот эта строчка меня немного напрягает... вектор старта должен быть увеличен на единицу вроде как, там младший бит указывает на Thumb режим исполнения
0
|
|||||||||||||||||||||||||||||||||||||||
|
1 / 1 / 0
Регистрация: 20.02.2019
Сообщений: 50
|
|
| 23.03.2022, 22:37 [ТС] | |
|
Так вот код, который выше.
0
|
|
| 23.03.2022, 23:00 | |||||||||||||||||
|
Добавлено через 18 минут блин, еще одну ошибку я просмотрел... привык к своим определениям вы определяете константы базы адресов периферии
вообще вам бы найти какие нить файлы определений хотя бы относительно проверенные.. а то сами понимаете -ошибка в адресе записи - это считай не записать вовсе :-( и нужен все таки отладчик, да, я понимаю что уже который раз это пишу, но вы бы сразу увидели и Start без +1 и адрес битбанда не верный (0х82..... вместо 0x42.....)
0
|
|||||||||||||||||
| 23.03.2022, 23:00 | |
|
Не по теме: Почему любитель асма не написал редактор на асме? Это было бы круто и супер оптимально так же как для ARM!
0
|
|
| 23.03.2022, 23:05 | |
|
Boris2288
посмотрите мои файлы определений, там по идее символ комментария @ на точку с запятой поменять... ну и может еще что по мелочи... проверено не все конечно (сами делали по даташиту для f1)... но по крайней мере будет от чего отталкиваться инклудами их будете добавлять в проект и не парится.. правда надо посмотреть синтаксис кейла но думаю это не сложно...
0
|
|
| 23.03.2022, 23:05 | |
|
Зажечь светодиод по кнопке на ATMega8515 По нажатию кнопки зажечь светодиод (STM32L152) AS-sam3X. Зажечь светодиод через веб-интерфейс Как зажечь светодиод? Зажечь светодиод по таймеру Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть не большие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|