|
0 / 0 / 0
Регистрация: 07.10.2019
Сообщений: 1
|
|
2 микроконтроллера, 1 память07.10.2019, 13:18. Показов 1731. Ответов 13
День добрый! Есть задача: имеются два устройства - хилинький, но почти не требующий питания микроконтроллер и большой и мощный, но относительно прожорливый одноплатник (пусть raspberry, но не суть). Необходимо, чтобы микроконтроллер долго-долго набирал данные с датчика (не суть какого), сохранял это в какую-то память, и раз в какой-то период времени включал одноплатник, чтобы тот считывал эти данные, быстренько обрабатывал и отключался.
Вопрос: как реализовать решение с общей памятью? Есть брать какую-нибудь spi-flash, то как адекватно реализовать два мастера на одном spi? Или есть более разумные способы?
0
|
|
| 07.10.2019, 13:18 | |
|
Ответы с готовыми решениями:
13
Внешняя память PIC: как нарастить внутреннюю память данных? Программирование микроконтроллера Корпус микроконтроллера |
|
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,928
|
|
| 07.10.2019, 15:00 | |
|
Если данных много, лучше не flash, а ram, а то еще протрется до дыр не вовремя.
Есть ли запас у "слабого" контроллера по скорости и свободным ногам? Если есть, проще соединить с памятью только его, а данными пусть обменивается, скажем, по UART. То есть разбудил "мощного", дождался запроса данных и передает их. Реализовывать ожидание запроса придется, поскольку заранее не известно время запуска. Это самый, на мой взгляд, разумный подход. Но можно и поизвращаться: взять две микросхемы ОЗУ и пусть "слабый" работает с одной, а "мощный" с другой. Когда закончат - поменяются. Реализовать "перекидывание" четырех линий можно на внешней логике. Извращение 2: пусть "слабый" контроллер подстраивается под "мощного", то есть пока с памятью общается тот - не мешать ему, когда "мощный" закончил, снял CS и перевел выводы в Z-состояние, можно подхватывать управление и писать туда то, что нужно. Конечно, внешнюю схему тут тоже придется налепить чтобы не было конфликтов.
1
|
|
|
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
|
||
| 07.10.2019, 16:41 | ||
|
поддержу схему COKPOWEHEU, трансфер данных с "мелкого" в "крупный" вполне оправдан. Мелкий может быть свободно любым serial/parrallel' слейвом для "главного", отдавая ему архивные данные.
0
|
||
|
Модератор
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
|
||
| 07.10.2019, 19:24 | ||
|
0
|
||
|
4047 / 2658 / 583
Регистрация: 11.09.2009
Сообщений: 9,496
|
||
| 07.10.2019, 21:57 | ||
|
Слабый перед включением мощного переводит линии управления памятью в третье состояние (освобождает шину), включает мощный, ждёт от него сигнала окончания, выключает его и снова забирает шину управления памятью. Никаких извратов... ![]() И, видимо, ещё потребуется канал обмена данными с мощным. Ну там начальный адрес, размер записи передавать, ещё параметры какие-нибудь, получать ответные коды для обработки ошибок, результаты расчёта забирать...
0
|
||
|
4047 / 2658 / 583
Регистрация: 11.09.2009
Сообщений: 9,496
|
||
| 08.10.2019, 01:36 | ||
|
0
|
||
|
пофигист широкого профиля
4770 / 3205 / 862
Регистрация: 15.07.2013
Сообщений: 18,613
|
||
| 08.10.2019, 02:08 | ||
|
0
|
||
|
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
|
||
| 08.10.2019, 08:59 | ||
|
К тому же нет резона это делать. Потому что в практически любом МК общего назначения есть как минимум парочка быстрых интерфейсов, которыми можно свободно разделить функции. Допустим, посадить FLASH на SPI с мелким МК, и общаться по UART с верхним уровнем. В данной задаче решений очень много, тут скорее всего можно полагаться из выбранной платформы - что может она, и за сколько ее можно купить ).
0
|
||
|
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,928
|
|||||
| 08.10.2019, 11:14 | |||||
|
0
|
|||||
|
|
||
| 08.10.2019, 12:29 | ||
|
0
|
||
| 08.10.2019, 12:43 | |
|
Не по теме: Есть чипы с мощными процессорами и микроконтроллерами на борту как раз для таких целей.
0
|
|
|
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,928
|
||
| 08.10.2019, 13:30 | ||
|
Конечно, конкретные контроллеры известны только ТСу, так что придется ждать пока он проснется.
0
|
||
|
|
|
| 08.10.2019, 13:41 | |
|
Не знаю что требуется ТС. Я предлагал взять МК по мощнее, например STM32F407. В спящем режиме он потребляет несколько микроампер. К нему можно подключить внешнюю оперативную память до 128 МБ (если имеющихся 192 КБ мало) в которой хранить данные. При сборе данных МК просыпается (от внешнего сигнала или встроенного RTC), помещает данные в память и дальше спит. Когда необходимо собранные данные обрабатываются.
0
|
|
| 08.10.2019, 13:41 | |
|
Помогаю со студенческими работами здесь
14
Программирование микроконтроллера Выбор микроконтроллера Программирование микроконтроллера Программирование микроконтроллера Клавиатура микроконтроллера Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
В качестве источника данных. . .
|
|
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер
Написал заготовку:
dotnet new console --aot -o UrlHandler
var items = args. Split(":");
var tag = items;
var id = items;
var executable = args;. . .
|
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3.
Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
|
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений.
9TO2GP2bpX4
a42b81fb172ffc12ca589c7898261ccb/
https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/
Слева синяя линия -. . .
|
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. .
Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
|