|
179 / 180 / 55
Регистрация: 01.06.2011
Сообщений: 507
|
|
Создание СУБД для микроконтроллеров02.08.2014, 15:49. Показов 4641. Ответов 7
Доброго времени суток.
Мне необходимо хранить/обрабатывать данные на микроконтроллере. Для хранения я решил использовать СУБД или самописный аналог с минимально необходимым набором функций. Собственно функции, которые необходимы:
В общем можно было бы сделать всё по простому: 1 байт - количество таблицТакая организация вполне бы подошла мне, если бы не одно "но" - при добавлении/удалении столбца/таблицы придётся двигать весь файл. Есть какие-нибудь идеи как можно организовать по другому, чтобы не приходилось двигать много байтов после каждой операции добавления/удаления и чтобы не было много пустых байтов?
0
|
|
| 02.08.2014, 15:49 | |
|
Ответы с готовыми решениями:
7
С для микроконтроллеров C для микроконтроллеров C++ для микроконтроллеров |
|
431 / 385 / 200
Регистрация: 12.08.2011
Сообщений: 1,610
|
|
| 03.08.2014, 13:07 | |
|
Обязательно все хранить в одном файле? Если каждая таблица будет в отдельном файле, задача тривиальна.
Столбцы можно не удалять, а помечать пустыми. Еще можно свести все типы данных к одному integer. Строку можно хранить в виде ее хэш-суммы.
0
|
|
|
179 / 180 / 55
Регистрация: 01.06.2011
Сообщений: 507
|
|||
| 03.08.2014, 23:33 [ТС] | |||
|
0
|
|||
|
|
|
| 04.08.2014, 07:58 | |
|
1- в собственной памяти МК много не похранишь и о СУБД даже не заикайтесь. Максимум набор записей. Формат, как правило, наиболее удобный - дата-время-событие. Это может быть структура по 16 бит, 32 бита.
2- для хранения используется внешняя память, FLASH SPI чаще всего. 3- для больших объемов также можно использовать просто SD-карты с FAT. Есть готовые либы под МК (AVR, ARM и даже Ардуины). Тут воротите, что хотите с файлом на низком уровне, но следует учитывать, что ресурсы МК небезграничны. http://microsin.ru/content/view/681/44/ http://microsin.net/programmin... ystem.html http://avr-start.ru/?p=1849 Добавлено через 3 минуты Типичный пример организации архива в ПЛК Segnetics SMH-2010 на основе МК ATMega128:
0
|
|
|
194 / 154 / 23
Регистрация: 16.08.2013
Сообщений: 738
|
|
| 07.08.2014, 09:28 | |
|
Добавьте индекс в структуру вашего столбца/таблицы и изменяйте только их для удаления/добавления/замены, тем самым не будете перемещать весь файл, а только изменять индексы, но длинна таблицы должна быть фиксированной. Еще можно использовать связанные списки, а отсутствующие таблицы/столбцы вычислять по указателю.
0
|
|
|
179 / 180 / 55
Регистрация: 01.06.2011
Сообщений: 507
|
|
| 07.08.2014, 17:31 [ТС] | |
|
Собственно что я придумал.
0
|
|
|
10 / 10 / 0
Регистрация: 25.06.2009
Сообщений: 92
|
|
| 03.01.2015, 11:43 | |
|
перезалейте в виде картинки! не всем нравится тот говн... визио
0
|
|
| 03.01.2015, 11:43 | |
|
Помогаю со студенческими работами здесь
8
Отладка ПО для микроконтроллеров Программатор для микроконтроллеров PIC Абстрактное ядро ОС для микроконтроллеров. Программированием на Си для микроконтроллеров Форматный вывод на Си для микроконтроллеров Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
|
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
|
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
|
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора
Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если. . .
|
|
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
|
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|