FLProg
Вход на сайт
Логин:
Пароль:
Поиск
...
Статистика
Понедельник, 21.08.2017, 11:17
Приветствую Вас Гость | RSS
Главная | Регистрация | Вход

Поиск по сайту


Форум
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: support, Сергей 
Форум » Основной » Спросить у знатоков » EEPROM (Как работать?)
EEPROM
kosmas Дата: Вторник, 01.08.2017, 08:26 | Сообщение # 1
Рядовой
Группа: Проверенные
Сообщений: 15
Награды: 0
Репутация: 0
Статус: Offline
Люди добрые, мы сами пока не местные, поможите, кто чем может...
Задача - сделать GSM-шлюз для ворот поселка. Т.е. человек звонит - ворота открываются. В общем-то, сейчас он так и работает уже третий год. Зависаний было штук 10 за все время. Работают SIM-модуль М590Е, плата реле, экранчик, модуль SD-карты и модуль RTC на 1307. Изначально задачу себе ставил такую:
Человек звонит, его номер проверяется на наличие в текстовом файле на SD карте, если есть, то пишем в лог на ту же SD и открываем ворота. Если нет номера, то пишем в лог и ворота не открываем.
Где-то с месяц все работало нормально, потом стала отваливаться SD-карта. Помогал ребут. В общем-то это и не удивительно - шлюз стоит на улице в железном шкафу. Месяц промучился звонками недовольного правления, плюнул, отключил SD, убрал проверку номера и запись лога. 
В общем, сейчас стоит задача все-таки проверять номера телефонов. Проблема в количестве номеров - 150 штук. Вроде как просится тот же EEPROM, но с какого бока к нему подойти, как изначально заполнить список я не знаю... sad
 
vovka1973 Дата: Вторник, 01.08.2017, 09:30 | Сообщение # 2
Майор
Группа: Проверенные
Сообщений: 179
Награды: 0
Репутация: 0
Статус: Offline
Цитата kosmas ()
EEPROM

Покупай внешний епром и пиши туда что хошь ,благо автор сделал поддержку внешнего епроом




Сообщение отредактировал vovka1973 - Вторник, 01.08.2017, 09:31
 
rw6cm Дата: Вторник, 01.08.2017, 10:26 | Сообщение # 3
Генерал-лейтенант
Группа: Проверенные
Сообщений: 884
Награды: 80
Репутация: 59
Статус: Offline
Цитата kosmas ()
сейчас стоит задача все-таки проверять номера телефонов.
Как часто они меняются, и кто редактирует список?
может номера в массив, кода надо  с ноута пере залил список, и не заморачиваться с памятью.


Win7-32, FLProg (portable)
 
kosmas Дата: Вторник, 01.08.2017, 11:01 | Сообщение # 4
Рядовой
Группа: Проверенные
Сообщений: 15
Награды: 0
Репутация: 0
Статус: Offline
Цитата vovka1973 ()
Покупай внешний епром и пиши туда что хошь
Это-то, понятно. Я спросил про изначальное заполнение 150 телефонов, да и редактировать надо иногда...

Добавлено (01.08.2017, 11:01)
---------------------------------------------

Цитата rw6cm ()
может номера в массив, кода надо  с ноута пере залил список, и не заморачиваться с памятью.
В массив как??? Желательно, чтобы справился и чайник...
 
Сергей Дата: Вторник, 01.08.2017, 11:36 | Сообщение # 5
Модератор
Группа: Модераторы
Сообщений: 481
Награды: 16
Репутация: 7
Статус: Offline
kosmas, поставьте мегу2056, там еепром побольше будет. А вообще что мешает хранить номера на сим карте? АТ командами читаете входящий номер, потом поштучно читаете все номера с сим и сравниваете.

Выгодные покупки на AliExpress в Cashback ePN! Возврат до 12 % от стоимости ЛЮБОГО товара!
 
kosmas Дата: Вторник, 01.08.2017, 13:50 | Сообщение # 6
Рядовой
Группа: Проверенные
Сообщений: 15
Награды: 0
Репутация: 0
Статус: Offline
Цитата Сергей ()
А вообще что мешает хранить номера на сим карте?
Блин.. Даже в голову не пришло... Спасибо, буду думать! smile

Добавлено (01.08.2017, 13:50)
---------------------------------------------
Продолжаем разговор... smile

Посмотрел команды работы с телефонной книгой. AT+CPBF=<findtext> - ищет только по имени. По номеру не ищет. Можно попробовать искать перебирая индексы AT+CPBR=<index>, но боюсь, это займет много времени - 2-3 секунды. Не критично, но неприятно.. smile Буду собирать в железе и смотреть...

Возвращаясь к EEPROM - просто интересно стало, а как туда пихать справочник?

 
fsergei70 Дата: Вторник, 01.08.2017, 14:18 | Сообщение # 7
Рядовой
Группа: Проверенные
Сообщений: 27
Награды: 0
Репутация: 0
Статус: Offline
Извините что немного не в тему, не хочу плодить новую тему,  так как мой вопрос касается тоже eeprom. Уважаемые знатоки как можно организовать запись значений в память каждый раз в новую переменную. Необходимо считывать температуру раз в час и записывать значение времени и температуры до заполнения eeprom. После заполнения в идеале былобы не плохо чтоб старые значения затирались новыми. Таким образом получился бы своеобразный архив. Именем переменной может быть дата и время. Можно конечно использовать карту памяти и писать в файл но интересней всё-таки попробовать  прикрутить eeprom.
 
Сергей Дата: Вторник, 01.08.2017, 14:29 | Сообщение # 8
Модератор
Группа: Модераторы
Сообщений: 481
Награды: 16
Репутация: 7
Статус: Offline
fsergei70, создайте новую тему и точнее опишите ТЗ, попробую сделать блок, пока в памяти остались наработки от прошлого проекта.

Выгодные покупки на AliExpress в Cashback ePN! Возврат до 12 % от стоимости ЛЮБОГО товара!
 
pan Дата: Вторник, 01.08.2017, 14:59 | Сообщение # 9
Генерал-лейтенант
Группа: Проверенные
Сообщений: 726
Награды: 30
Репутация: 29
Статус: Offline
fsergei70, можно так сделать, но если после заполнения смещать весь архив, это займет много времени и быстрее убьет епром. проще сделать так что самое старое значение будет перезаписано новым. просто по кругу. но тогда станет не известно какое значение было последним. хотя можно индекс переменной тоже запоминать.
 
rw6cm Дата: Четверг, 03.08.2017, 09:19 | Сообщение # 10
Генерал-лейтенант
Группа: Проверенные
Сообщений: 884
Награды: 80
Репутация: 59
Статус: Offline
Цитата kosmas ()
В массив как??? Желательно, чтобы справился и чайник...
Да в принципе не чего сложного.  Добавляем в проекте плату для чайника, в которой один блок "получение элемента массива".
Чайник на ноуте стартует проект в флпрог, заходит в плату для чайника, двойной клик на блоке, увеличивает размер на кол. добавляемых телефонов,
жмет заполнить, внизу в пустые ячейки заносит номера телефонов, готово. Подключает к Унке и заливает. :))


Win7-32, FLProg (portable)
 
Sancho Дата: Суббота, 05.08.2017, 11:55 | Сообщение # 11
Полковник
Группа: Проверенные
Сообщений: 391
Награды: 12
Репутация: 12
Статус: Offline
Цитата kosmas ()
Вроде как просится тот же EEPROM, но с какого бока к нему подойти, как изначально заполнить список я не знаю
Мой взгляд на решение.
Цепляете ВНЕШНЮЮ память, например 24С256, создаёте маленькую программу для принятия из уарта,а также установки вручную( с кнопок) номера блока/страницы ( можно и программу научить вычислять из принятого номер), в которую может влезть до 64 ASCII символа/байта - размер определяете сами 8,16,32,64, копипастом заполняете поштучно из своего списка, можно даже с фамилиями, именами, отчествами на латинице. Дисплей будет очень к месту.
По команде считываете по очереди диапазон заполненых блоков( станиц) сравниваете нужное, производите необходимые действия. Читать в блоке можно только необходимые для сравнения данные.
При 64-байтных блоках влезет 512 записей, используя другие 24Схх можно увеличить/уменьшить максимальный размер.
Варю кашу тут.


Если не получится на контроллере - сделаю на тразисторах и 155/176...
 
Форум » Основной » Спросить у знатоков » EEPROM (Как работать?)
Страница 1 из 11
Поиск:

FLProg © 2017
Яндекс.Метрика