Например TDA7294

Форум РадиоКот • Просмотр темы - Мигать светодиодом. ARM или не-ARM?
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вс апр 28, 2024 04:33:00

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 3623 ]     ... , , , 145, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Пт май 18, 2018 20:33:36 
Друг Кота
Аватар пользователя

Карма: 30
Рейтинг сообщений: 155
Зарегистрирован: Пн июл 28, 2008 22:12:01
Сообщений: 3604
Рейтинг сообщения: -1
Мурик, у тебя весь код. Все читается на ура , в этом Reflector'у жЫрный плюс, за плюсы жЫрный минус.Все дело в тебе, ты привык мыслить тупыми абстракциями , мы же на уровне железа.
Вообщем -садись 2.
arkhnchul, ты то что стебаешься? Код элементарно читаем .


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Пт май 18, 2018 20:54:16 
Друг Кота
Аватар пользователя

Карма: 1
Рейтинг сообщений: 157
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3328
Рейтинг сообщения: 1
dosikus писал(а):
у тебя весь код
Тогда создайте из него проект, который можно скомпилировать и получить рабочую прошивку. :)))
Только не надо отнекиваться как любите это делать, иначе вам будет
dosikus писал(а):
жЫрный минус.
:)))

dosikus писал(а):
Все читается на ура
Но не компилируется. Причину думаю не нужно объяснять?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Пт май 18, 2018 21:38:30 
Друг Кота

Карма: 38
Рейтинг сообщений: 618
Зарегистрирован: Пн апр 06, 2015 11:01:53
Сообщений: 3092
Откуда: москва, уфа
Рейтинг сообщения: 0
Вопрос не в том насколько сложно достать gcc 7, а в том, сколько людей бросится его искать и интегрировать в свои IDE, чтобы запустить мой код :)

компилять и запускать - насамделе, дело десятое. Мне было бы интересно его просто глазами посмотреть - как именно вы в своем HAL-е (надеюсь, тут не все ассоциируют общее понятие hardware abstraction layer с корявым, но созвучным HAL от ST?) используете фичи как плюсов вообще, так и плюшек, завезенных в новый стандарт C++17 (иначе для зачем вам там gcc7?).
dosikus писал(а):
ты то что стебаешься?
где именно?


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Сб май 19, 2018 07:48:17 
Друг Кота
Аватар пользователя

Карма: 30
Рейтинг сообщений: 155
Зарегистрирован: Пн июл 28, 2008 22:12:01
Сообщений: 3604
Рейтинг сообщения: 0
Но не компилируется. Причину думаю не нужно объяснять?


Перенеси код на "регистры" и скомпилируй...


Вернуться наверх
 
Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Сб май 19, 2018 09:01:24 
Поставщик валерьянки для Кота

Карма: 20
Рейтинг сообщений: 253
Зарегистрирован: Вс июн 19, 2016 09:32:03
Сообщений: 2090
Рейтинг сообщения: 0
Все читается на ура , в этом Reflector'у жЫрный плюс, за плюсы жЫрный минус.

Хорошая читаемость - это объективный показатель, а нелюбовь к плюсам еще нужно чем-то обосновать :) Мне тут попадались люди которые на работе пишут на плюсах, при этом не знают что такое шаблоны, чего же ожидать от сишников, которые имеют весьма смутное представление даже о С++98, при том, что С++17 - это совершенно другой язык, а уже есть gcc 8 с элементами С++20... Понять мой код просто, но чтобы оценить его истинный потенциал нужно знать современные плюсы, иначе действительно может показаться, что на регистрах получится проще и эффективнее. Мне не кажется, я даже близко не могу такого представить :) Как можно переписать на С код в котором в двух строках передается два порта, два номера пина, два DMA и два таймера, а каждая из этих сущностей еще хранит дополнительную информацию? Таймер знает номер APB шины, это нужно для включения тактирования, выполнения сброса или расчета частоты, естественно он знает какие именно биты нужно включить чтобы выполнить сброс и т.д., он знает свой IRQn, не только знает какие биты присутствуют у некоторых регистров, но и выполняет соответствующие проверки. Если передать TIM14 в мой LedBlink, то получим ошибку стадии компиляции, т.к. у этого таймера нет бита отвечающего за включение TimDmaReq::Update. Это бесплатная проверка, хотя маска битов лежит в структуре, структуру создает и возвращает функция по номеру таймера, другая функция проверяет у поля этой структуры нужный бит и возвращает bool и уже enableDmaRequest() проверяет это значение и если оно false, то функция просто выбрасывается. Раз функции нет, то получаем ошибку компиляции прямо в месте ее вызова... Можно так сделать на С?

Тогда создайте из него проект, который можно скомпилировать и получить рабочую прошивку. :)))

Когда я тебя на днях пытался склонить в сторону RTT, ты мне заявил, что RTT - это тот же semihosting только с буферизацией. Предоставь тебе полный проект, ты его позапускаешь и ожидаемо выдашь, что С++ - это тот же С, только с плюсами :) Так что спасибо за предложение, но я продолжу обкатывать либы на товарищах и когда решу, что они удовлетворяют моим высоким стандартам, то может быть по крайней мере часть из них пойдет в открытый доступ :)


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Сб май 19, 2018 14:42:53 
Собутыльник Кота
Аватар пользователя

Карма: -22
Рейтинг сообщений: -43
Зарегистрирован: Вс окт 02, 2016 07:34:45
Сообщений: 2890
Рейтинг сообщения: 0
[uquote="dosikus",url="/forum/viewtopic.php?p=3380117#p3380117"]Все читается на ура , в этом ReflectorМне тут попадались люди которые на работе пишут на плюсах, при этом не знают что такое шаблоны...

Reflector, а Вы то где работаете? Что означает Ваше "мне тут попадались люди"? Где попадались? На ЭТОМ форуме? :)))


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Вс май 20, 2018 08:41:21 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 0
Ретрокомпьютер-бейдж для участников конференции Hackaday в Белграде: сбывшиеся мечты прошлого
Каждый участник конференции Hackaday в Белграде получит по необычному бейджу — это будут действующие ретрокомпьютеры.

Первые ассоциации, вызываемые словами «старый компьютер» — это щёлкающая клавиатура, а также монохромный экран, зелёный или оранжевый. Что ж, 55 тактовых кнопок неплохо щёлкают, а ЖКИ хоть и полноцветный, но изображение на нём можно при желании сделать монохромным. Его разрешение — 320х240, что создаёт впечатление ЭЛТ с низким разрешением. В компьютере реализована эмуляция терминала VT100 в режиме 40 знаков на 20 строк.

На обороте платы расположена динамическая головка. Звуковая подсистема машины — трёхголосная, качество звука высокое. Спереди расположены RGB-светодиод и гребёнка для прошивки, обмена данными по шине I2C, а также просто вывода нескольких GPIO. А «рулит» всем происходящим микроконтроллер PIC32MX370F512H, которому помогает в этом двухмегабайтная микросхема флеш-памяти. Много лет назад это был бы очень хороший компьютер: тактовая частота — 48 МГц, 512 килобайт доступного пользователю дискового пространства, 128 килобайт ОЗУ.
подробнее:
https://geektimes.com/post/301009/?utm_campaign=301009
https://hackaday.io/project/80627-badge ... n-belgrade


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Вт май 22, 2018 07:18:30 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 0
статейка на geektimes
Spectrum-48 против пачки сигарет, каша из топора или что может STM32F103C8T6
Цитата:
Все началось с очередной попытки бросить курить. Разбудив свою внутреннюю «жабу» в поисках поддержки, говорю ей: «Смотри, пачка моих сигарет стоит сегодня как карманный ретро-компьютер с экраном, то есть примерно $10, а когда-то давным давно, на клон синклера-48К мы всю месячную зарплату и больше месяца на сборку и отладку потратили». Она: «Вы мужики- козлы и вруны, докажи!». Пришлось поработать.
Итак, исходно-расходные материалы:
* «Blue pill»: STM32F103C8T6 — 20K ram 64K flash $2.06
* «Ардуино Display»: ILI9341 2.8" 320x240 с сенсорным экраном и слотом карточки $7.72
* Пищалка $0.18
* Немного кнопок (7 штук) $0.2
* Немного проводов $0.1
* Флеш карта на 64 мега (с древнего фотоаппарата), в расчет не включена
* Программатор ST-LINK, не расходуется и в расчет не включен, однако тоже пару долларов стоит
* Пачка сигарет — расходуется слишком быстро и каждый день -$8.37

подробнее и исходники:
https://geektimes.com/post/300817/?utm_campaign=300817


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Вт май 22, 2018 10:58:21 
Поставщик валерьянки для Кота

Карма: 20
Рейтинг сообщений: 253
Зарегистрирован: Вс июн 19, 2016 09:32:03
Сообщений: 2090
Рейтинг сообщения: 0
Любит народ готовые китайские платки, вместо того чтобы взять хотя бы 103RC($1.85) у которого 64К RAM и 512К флеша, за $2.06 берется платка на 103С8 и больше половины спектрумовского ОЗУ перебирается в SPI экран и портит бордюр, кроме того вместо оптимизаций эмулятора по скорости приходится оптимизировать его по размеру, а потом автор пишет, что в планах настроить задержки для корректного звука... В оригинале у каждой команды свое время исполнения, эмуляторы в конце выполнения каждой команды ждут когда это время истечет, в этом проекте эта проверка убрана, в результате скорость заметно возросла, но теперь команда которая должна выполняться 4 такта может выполняться медленнее команды на два десятка тактов, естественно при таком подходе нормального звука быть просто не может.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Вт май 22, 2018 11:20:14 
Друг Кота
Аватар пользователя

Карма: 1
Рейтинг сообщений: 157
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3328
Рейтинг сообщения: 0
Reflector писал(а):
взять хотя бы 103RC($1.85) у которого 64К RAM и 512К флеша
У него 256 КБ флеша.
Тогда нужно считать что в 103С8 128 Кб, а не 64 как пишет автор статьи на geektimes.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Вт май 22, 2018 11:33:28 
Поставщик валерьянки для Кота

Карма: 20
Рейтинг сообщений: 253
Зарегистрирован: Вс июн 19, 2016 09:32:03
Сообщений: 2090
Рейтинг сообщения: 0
У него 256 КБ флеша.
Тогда нужно считать что в 103С8 128 Кб, а не 64 как пишет автор статьи на geektimes.

Это уже нюансы, в любом случае флеша у 103RC больше минимум в 4 раза и его можно особо не экономить, а автор именно этим и занимается.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Вт май 22, 2018 11:45:33 
Друг Кота
Аватар пользователя

Карма: 1
Рейтинг сообщений: 157
Зарегистрирован: Пн окт 11, 2010 19:00:08
Сообщений: 3328
Рейтинг сообщения: 0
Может и нюансы, но автор видимо не знает что в 103С8 128 КБ флеша поэтому и экономит, стараясь не превышать 64 КБ.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Ср май 23, 2018 17:25:50 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 0
ATmega4809 с Микрочип периферией (Peripheral Event System, High-Speed ADC, The Configurable Custom Logic) пошла куда предпологалось ранее.
ARDUINO UNO WiFi REV2
СпойлерИзображение

технические характеристики:

* MCU – Microchip ATmega4809 8-бит AVR MCU с 6 Кб RAM, флэш-памятью 48 Кб и независимая от ядра периферия (CIPs)
* Связь – 802.11 b / g / n WiFi @ 2.4 ГГц модуль U-blox W102 (который также поддерживает Bluetooth 4.2 LE, но это не указано в спецификации платы)
* Цифровые входы и выходы – 14, с 6 ШИМ
* Аналоговые входные контакты – 6
* Программирование – Разъем ICSP
* USB – 1x USB device порт
* Разное – кнопка сброса, встроенный IMU (Инерционный измерительный блок)
* Аппаратная безопасность – крипто-чип Microchip ECC608
* Входное напряжение – от 5 до 12 В DC через разъем типа баррель, разъем Vin или USB порт (только 5 В)
* Размеры – 68.6 x 53.4 мм

Плата UNO WiFi фактически является платой Arduino UNO Rev3 с новым микроконтроллером, WiFi модулем, встроенным IMU (Инерционным измерительным блоком) и аппаратной безопасностью.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Пт май 25, 2018 07:49:54 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 2
Хабр, интересная статья
Реверс-инжиниринг прошивки устройства на примере мигающего «носорога». Часть 1
Цитата:
26 апреля 2018 года компания ИНФОРИОН провела конференцию для студентов МГТУ им. Баумана SMARTRHINO-2018. Специально для конференции было подготовлено небольшое устройство на базе микроконтроллера STM32F042.
Этот носорожек стал главным героем мастер-класса по реверсу прошивки. К сожалению, за время, отведенное на мастер-класс, не представлялось возможным провести полное исследование прошивки, поэтому мы решили восполнить это подробным разбором в формате статьи. Надеемся, информация будет полезна не только участникам конференции, но также всем начинающим кодокопателям.

Первая часть статьи составлена по мотивам проведённого мастер-класса и рассчитана на начинающих — уделяется внимание базовым подходам к реверсу прошивок и особенностям работы с дизассемблером IDA. Вторая часть немного сложнее, в ней уделяется внимание особенностям работы устройств на базе операционных систем реального времени.

https://habr.com/company/inforion/blog/ ... ign=359116


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Пн май 28, 2018 07:46:19 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 0
Panasonic ARM Cortex M0+ With Functional Safety Solution
простенький MN1M00F02G, характеристики:
Спойлер*Applications Automotive Electronics
*ROM Size (KB) 128
--ROM Type FLASH
*RAM Size (KB) 16
*Pin Count 32
*Max Operating Frequency (MHz) 40
*16-bit Timer (ch) 8
*PWM (ch) 7
*3-Phase PWM Output Function (set) -
*Serial I/F [Clock Synchronous] (ch) 2
*Serial I/F [UART] (ch) 2
*Serial I/F [I2C] (ch) 1
*Serial I/F [LIN] (ch) 1
*Serial I/F [CAN] (ch) 1
*IEBus (ch) -
*Serial I/F [Remarks] Sync./UART x1,I2C x1,Sync./UART/LIN x1
*DMA (ch) 1
*ADC [12bit] (ch) 12
*Min Instruction Exec. Time / Voltage (ns) / (V) 25 / 2.7 to 5.5
*Max Operating Voltage (V) 5.5
*Min Operating Voltage (V) 2.7
*Number of I/O Ports (ch) 23
I*nterrupt Sources (ch) 20
*External Interrupt (ch) 8
*High Speed On Chip Oscillator Frequency (MHz) 20
*Low Speed On Chip Oscillator Frequency (kHz) 240
*Power On Reset Yes
*Low Voltage Detection Yes
*Watch Dog Timer (ch) 1
*Other Special Function Clock monitor, CRC Engine
*Package TQFP032-P-0707


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Ср май 30, 2018 08:30:11 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 2
продолжение статьи
Реверс-инжиниринг прошивки устройства на примере мигающего «носорога». Часть 2
Цитата:
В первой части статьи прошивка устройства была загружена в дизассемблер IDA и выполнен первичный анализ команд протокола устройства. Отдельные команды были проверены на работающем устройстве.

Во второй части будет выполнен анализ оставшихся тасков прошивки.

https://habr.com/company/inforion/blog/ ... ign=412561


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Ср май 30, 2018 14:54:08 
Нашел транзистор. Понюхал.

Карма: 3
Рейтинг сообщений: 18
Зарегистрирован: Пн фев 05, 2018 18:03:00
Сообщений: 196
Рейтинг сообщения: 0
дык там ассеблерный проект, состоящий из одного s файла и одной инструкции. Ассемблерные стартапы находятся в стандартной поставке CMSIS. Тот же SysProgs выпускает плагин VisualGDB, который создает ARMовые проекты с сишным стартапом.

Я таки помигал светодиодом (и не только) с 0 ассемблера :) и без CMSIS, плагинов, дебагеров и проч. Только я, мой код и камень. Мой код все что надо инитит сам. В сорцах, объектном коде и бинаре - только мой код, ни бита кроме него (и если что, CMSIS мне не нравится). По своему прикольно.

Это не самый простой и быстрый способ освоить камень. Зато я стал "на ты" и с тулчейном и с камнем. Без непонятной магии где либо. Я хочу чтобы оно для меня в случае МК работало так. Полностью предсказуемая и понятная штука. А ртосы, TCP/IP и микропитоны мне там ни к чему.

Для таких простых вещей ассм не нужен, есть же готовые __enable_irq() и т.п....

Во первых, Си сам по себе все же не может явно выдать такую конструкцию, так что это как максимум перевод стрелок с своего кода на чужой.

Во вторых мне было интересно, катит ли arm-linux-gnueabihf тулчейн. Я им билдовал ядра Linux и все такое, но заметил что и кодогенерация для cortex-M есть. Для M3 прокатило. Но либ/стартапов для cortex M там вроде нет. И хрен с ними, заодно как раз и разобрался как это на самом деле работает. Без волшебных коробочек делающих хз что, таких же либ и прочих вещиц которые мне не нравятся.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Пт июн 01, 2018 07:05:37 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 0
Хабр
Запускаем дисплей на STM32 через LTDC… на регистрах
Цитата:
Приветствую! Недавно для проекта потребовалось запустить дисплей, который имел интерфейс LVDS. Для реализации задачи был выбран контроллер STM32F746, т.к. я с ним уже достаточно много работал и у него есть модуль LTDC, который позволяет работать напрямую с дисплеем без контроллера. В данном случае контроллер реализован уже внутри микроконтроллера. Так же не последним доводом было то, что на данном камне есть отладка STM32F746-Disco, которая у меня была под рукой, а значит я мог начинать работу над проектом не дожидаясь пока ко мне приедет плата, компоненты и прочее.

Сегодня я расскажу как запустить модуль LTDC, работая с регистрами (CMSIS). HAL и прочие библиотеки не люблю и не использую по религиозным убеждениям, но в этом и интерес. Вы увидите, что поднимать сложную периферию на регистрах так же просто, как и обычный SPI. Интересно? Тогда поехали!
...
Итог

Как видите реализация даже сложной периферии на регистрах (CMSIS) является не сложной задачей, вам достаточно понять как оно работает внутри. Конечно нынче модно разрабатывать встроенное ПО без понимания происходящего, но это тупиковый путь, если вы планируете стать инженером, а не…

Если сравнить полученный код с решением на HAL или SPL, то можно заметить, что код написанный на регистрах более компактный. Добавив где нужно пару комментариев и обернув в функции мы получаем читаемость как минимум не хуже, чем у HAL/SPL, а если вспомнив, что reference manual документирует именно регистры, то работа с использованием CMSIS является более удобной.

https://habr.com/post/412753/


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Пн июн 04, 2018 07:03:41 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 0
еще статейки на Хабре
Отладочная плата STM32F4 в форм-факторе Raspberry Pi
Цитата:
Добрый день, уважаемые хабровчане! Хочу представить общественности мой проект — небольшая отладочная плата на базе STM32, но в форм-факторе Raspberry Pi. От других отладочных плат она отличается тем, что имеет совместимую с корпусами от Raspberry Pi геометрию и наличие ESP8266-модуля в качестве беспроводного модема. А также приятные дополнения в виде разъёма для micro-SD карты и стерео-усилителя. Для использования всего этого богатства я разработал высокоуровневую библиотеку и демонстрационную программу (на C++11). В статье я хочу подробно описать как аппаратную, так и программную части этого проекта.

Кому этот проект может быть полезен? Наверное, только тем, кто захочет спаять эту плату сам, так как никакие варианты даже мелкосерийного производства я не рассматриваю. Это чисто хобби. На мой взгляд, плата покрывает достаточно широкий спектр задач, которые могут возникнуть в рамках небольших домашних поделок, использующих WiFi и звук.

https://habr.com/post/413101/?utm_sourc ... ign=413101
STM32 + NetBeans =?
Цитата:
Как известно, совместимость с инструментарием GNU и поддержка GDB делают практически любую популярную среду разработки пригодной для отладки широкого спектра встраиваемых платформ, чаще всего бесплатно и легально. В теории.

Съезжать с Микрочипа очень не хотелось. Однако после покупки компанией Атмела, сначала прикрыли, возможно, одно из самых перспективных семейств в портфолио компании — PIC32MM, а затем и всю линейку MIPS. Стало очевидно, что в обозримом будущем переход на ARM неизбежен, а т. к. Микрочип за два года так и не интегрировал поддержку атмеловских контроллеров в свою экосистему, никаких преимуществ «Оставайтесь с нами» не давало. Скорее наоборот — скорректированная вверх ценовая политика и традиционные организационные трудности слияния компаний сделали Атмеловские АРМы менее привлекательными. Одновременно подвернулся проект, об который PIC32MZ просто споткнулся. Критическая масса была набрана.

Почему STM: широкий охват рынка, бюджетная отладка, бесплатная полнофункциональная среда SW4STM32 на базе опенсорса, ну и политический аспект — ST Microelectronics поддерживается правительством Франции как стратегический ресурс, поэтому внезапный уход с рынка или поглощение, вроде бы, не грозят.

https://habr.com/post/413101/?utm_sourc ... ign=413101


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Мигать светодиодом. ARM или не-ARM?
СообщениеДобавлено: Ср июн 06, 2018 07:43:27 
Друг Кота
Аватар пользователя

Карма: 32
Рейтинг сообщений: 482
Зарегистрирован: Сб сен 10, 2011 17:46:25
Сообщений: 3832
Рейтинг сообщения: 0
"расширение портов" на практике
начало тут:
https://radiokot.ru/forum/viewtopic.php ... 3#p3375703
теперь реально "расширяем" для 20-тиножечного самого дешевого малыша STM32F030F4P6 (помним реально начинка у него внутри - как у F031). SPI у STM32F030F4P6 оказался весьма неплох (4-bit to 16-bit data size selection, Two 32-bit embedded Rx and Tx FIFOs with DMA capability и пр.).
Пока без DMA:
Спойлер
Код:
#include "stm32f0xx.h"
#include "lcd.h"

#define CS_LOW GPIOA->BSRR = GPIO_BSRR_BR_4   // Сбросили бит.
#define CS_HIGH GPIOA->BSRR = GPIO_BSRR_BS_4   // Установили бит.

uint8_t dataRele = 0;
uint8_t dataLCD = 0;
const char MENUTXT[2][20] =
{
    {"\x50\x61\x63\xC1\xB8\x70\x65\xBD\xB8\x65\x20\xBE\x6F\x70\xBF\x6F\xB3"}, // Расширение портов
    {"\xBE\x70\xB8\xB3\x65\xBF\x20\x50\x61\xE3\xB8\x6F\xBA\x6F\xBF\x20"}      // привет Радиокот
};

void Configure_GPIO_SPI1(void);
void Configure_SPI1(void);
extern void SpiWriteData(uint16_t data16);

void SpiWriteData(uint16_t data16)
{
    //отправляем данные
    SPI1->DR = data16;
    //ждём пока опустошится Tx буфер
    while ((SPI1->SR & SPI_SR_BSY)==SPI_SR_BSY)
        ;
    while ((SPI1->SR & SPI_SR_TXE)==0)
        ;
    CS_HIGH;
    delay_us(2);
    CS_LOW;
}

int main(void)
{
    Configure_GPIO_SPI1();
    Configure_SPI1();
    LCD_SetUp();
    LCD_Init(2, 20);
    LCD_Clear();
    LCD_DisplayString(MENUTXT[0]);
    LCD_GoToLine(1);
    LCD_DisplayString(MENUTXT[1]);
    while (1)
    {
    }
}

__INLINE void Configure_GPIO_SPI1(void)
{
    /* Enable the peripheral clock of GPIOA */
    RCC->AHBENR |= RCC_AHBENR_GPIOAEN;

    /* (1) Select AF mode (10) on PA7, PA5 */
    /* (2) AF0 for SPI1 signals */
    GPIOA->MODER = (GPIOA->MODER & ~(GPIO_MODER_MODER5 | GPIO_MODER_MODER7)) | (GPIO_MODER_MODER5_1 | GPIO_MODER_MODER7_1); /* (1) */
    GPIOA->AFR[0] = (GPIOA->AFR[0] & ~(GPIO_AFRL_AFRL5 | GPIO_AFRL_AFRL7));                                                 /* (2) */

    GPIOA->MODER |= (GPIO_MODER_MODER4_0); // make bits PA4 an output
}

__INLINE void Configure_SPI1(void)
{
    /* Enable the peripheral clock SPI1 */
    RCC->APB2ENR |= RCC_APB2ENR_SPI1EN;

    /* Configure SPI1 in master */
    /* (1) Master selection, BR: Fpclk/256 (due SPI_CLK is set to the minimum)
           CPOL and CPHA at zero (rising first edge) */
    /* (2) Master enabled, 16-bit */
    /* (3) Enable SPI1 */
    SPI1->CR1 = SPI_CR1_MSTR | SPI_CR1_BR | SPI_CR1_SSM;                            /* (1) */
    SPI1->CR2 = SPI_CR2_SSOE | SPI_CR2_DS_3 | SPI_CR2_DS_2 | SPI_CR2_DS_1 | SPI_CR2_DS_0; /* (2) */
    SPI1->CR1 |= SPI_CR1_SPE;                                                             /* (3) */
}


Изображение Изображение


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 3623 ]     ... , , , 145, , , ...  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: >TEHb<, Сергеj и гости: 47


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y