EEPROM
EEPROM
Люди добрые, мы сами пока не местные, поможите, кто чем может...
Задача - сделать GSM-шлюз для ворот поселка. Т.е. человек звонит - ворота открываются. В общем-то, сейчас он так и работает уже третий год. Зависаний было штук 10 за все время. Работают SIM-модуль М590Е, плата реле, экранчик, модуль SD-карты и модуль RTC на 1307. Изначально задачу себе ставил такую:
Человек звонит, его номер проверяется на наличие в текстовом файле на SD карте, если есть, то пишем в лог на ту же SD и открываем ворота. Если нет номера, то пишем в лог и ворота не открываем.
Где-то с месяц все работало нормально, потом стала отваливаться SD-карта. Помогал ребут. В общем-то это и не удивительно - шлюз стоит на улице в железном шкафу. Месяц промучился звонками недовольного правления, плюнул, отключил SD, убрал проверку номера и запись лога.
В общем, сейчас стоит задача все-таки проверять номера телефонов. Проблема в количестве номеров - 150 штук. Вроде как просится тот же EEPROM, но с какого бока к нему подойти, как изначально заполнить список я не знаю...
Задача - сделать GSM-шлюз для ворот поселка. Т.е. человек звонит - ворота открываются. В общем-то, сейчас он так и работает уже третий год. Зависаний было штук 10 за все время. Работают SIM-модуль М590Е, плата реле, экранчик, модуль SD-карты и модуль RTC на 1307. Изначально задачу себе ставил такую:
Человек звонит, его номер проверяется на наличие в текстовом файле на SD карте, если есть, то пишем в лог на ту же SD и открываем ворота. Если нет номера, то пишем в лог и ворота не открываем.
Где-то с месяц все работало нормально, потом стала отваливаться SD-карта. Помогал ребут. В общем-то это и не удивительно - шлюз стоит на улице в железном шкафу. Месяц промучился звонками недовольного правления, плюнул, отключил SD, убрал проверку номера и запись лога.
В общем, сейчас стоит задача все-таки проверять номера телефонов. Проблема в количестве номеров - 150 штук. Вроде как просится тот же EEPROM, но с какого бока к нему подойти, как изначально заполнить список я не знаю...
- rw6cm
- Полковник
- Сообщения: 2372
- Зарегистрирован: 06 сен 2015, 20:25
- Имя: Владимир
- Поблагодарили: 41 раз
EEPROM
Как часто они меняются, и кто редактирует список?kosmas писал(а):сейчас стоит задача все-таки проверять номера телефонов.
может номера в массив, кода надо с ноута пере залил список, и не заморачиваться с памятью.
Win10-64, FLProg (portable)
EEPROM
Это-то, понятно. Я спросил про изначальное заполнение 150 телефонов, да и редактировать надо иногда...vovka1973 писал(а):Покупай внешний епром и пиши туда что хошь
Добавлено (01.08.2017, 11:01)
---------------------------------------------
В массив как??? Желательно, чтобы справился и чайник...rw6cm писал(а):может номера в массив, кода надо с ноута пере залил список, и не заморачиваться с памятью.
- Сергей
- Лейтенант
- Сообщения: 578
- Зарегистрирован: 31 авг 2015, 15:06
- Имя: Сергей
- Контактная информация:
EEPROM
kosmas, поставьте мегу2056, там еепром побольше будет. А вообще что мешает хранить номера на сим карте? АТ командами читаете входящий номер, потом поштучно читаете все номера с сим и сравниваете.
EEPROM
Блин.. Даже в голову не пришло... Спасибо, буду думать!Сергей писал(а):А вообще что мешает хранить номера на сим карте?
Добавлено (01.08.2017, 13:50)
---------------------------------------------
Продолжаем разговор...
Посмотрел команды работы с телефонной книгой. AT+CPBF=<findtext> - ищет только по имени. По номеру не ищет. Можно попробовать искать перебирая индексы AT+CPBR=<index>, но боюсь, это займет много времени - 2-3 секунды. Не критично, но неприятно.. Буду собирать в железе и смотреть...
Возвращаясь к EEPROM - просто интересно стало, а как туда пихать справочник?
-
- Капитан
- Сообщения: 857
- Зарегистрирован: 17 ноя 2015, 20:36
- Имя: Сергей
- Благодарил (а): 39 раз
- Поблагодарили: 7 раз
EEPROM
Извините что немного не в тему, не хочу плодить новую тему, так как мой вопрос касается тоже eeprom. Уважаемые знатоки как можно организовать запись значений в память каждый раз в новую переменную. Необходимо считывать температуру раз в час и записывать значение времени и температуры до заполнения eeprom. После заполнения в идеале былобы не плохо чтоб старые значения затирались новыми. Таким образом получился бы своеобразный архив. Именем переменной может быть дата и время. Можно конечно использовать карту памяти и писать в файл но интересней всё-таки попробовать прикрутить eeprom.
EEPROM
fsergei70, можно так сделать, но если после заполнения смещать весь архив, это займет много времени и быстрее убьет епром. проще сделать так что самое старое значение будет перезаписано новым. просто по кругу. но тогда станет не известно какое значение было последним. хотя можно индекс переменной тоже запоминать.
- rw6cm
- Полковник
- Сообщения: 2372
- Зарегистрирован: 06 сен 2015, 20:25
- Имя: Владимир
- Поблагодарили: 41 раз
EEPROM
Да в принципе не чего сложного. Добавляем в проекте плату для чайника, в которой один блок "получение элемента массива".kosmas писал(а):В массив как??? Желательно, чтобы справился и чайник...
Чайник на ноуте стартует проект в флпрог, заходит в плату для чайника, двойной клик на блоке, увеличивает размер на кол. добавляемых телефонов,
жмет заполнить, внизу в пустые ячейки заносит номера телефонов, готово. Подключает к Унке и заливает.

Win10-64, FLProg (portable)
- Sancho
- Полковник
- Сообщения: 4066
- Зарегистрирован: 25 дек 2015, 17:32
- Откуда: Ярославль.
- Имя: Александр
- Поблагодарили: 5 раз
- Контактная информация:
EEPROM
Мой взгляд на решение.kosmas писал(а):Вроде как просится тот же EEPROM, но с какого бока к нему подойти, как изначально заполнить список я не знаю
Цепляете ВНЕШНЮЮ память, например 24С256, создаёте маленькую программу для принятия из уарта,а также установки вручную( с кнопок) номера блока/страницы ( можно и программу научить вычислять из принятого номер), в которую может влезть до 64 ASCII символа/байта - размер определяете сами 8,16,32,64, копипастом заполняете поштучно из своего списка, можно даже с фамилиями, именами, отчествами на латинице. Дисплей будет очень к месту.
По команде считываете по очереди диапазон заполненых блоков( станиц) сравниваете нужное, производите необходимые действия. Читать в блоке можно только необходимые для сравнения данные.
При 64-байтных блоках влезет 512 записей, используя другие 24Схх можно увеличить/уменьшить максимальный размер.
Варю кашу тут.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя