FLProg
Вход на сайт
Логин:
Пароль:
Категории раздела
Документация [18]
Блоки пользователей [162]
Цветовые темы [0]
Цветовые темы для программы FLProg предоставленные пользователями
Архив версий программы [188]
Поиск
...
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Вторник, 17.07.2018, 01:00
Приветствую Вас Гость | RSS
Главная | Регистрация | Вход

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


Внимание всем пользователям программы FLProg! В течении ближайших двух дней будет осуществляться переход на новую платформу
Чтобы продолжить общение на форуме вы можете перейти сюда
Сообщения оставленные на старом форуме будут утеряны безвозвратно
Приятного Вам Нового года и до встречи в новом 2018 году
С уважением Администрация flprog.ru
Каталог файлов
Главная » Файлы » Блоки пользователей

Внешняя EEPROM I2C 24Cxx
[ · Скачать удаленно (70kb) ] 03.08.2017, 17:52
Тестовые образцы. Архив rar.
Запись и чтение по два байта и три интегера = восемь байт.
Итого 512 блоков (0-511) для 24С32.
Тестируем, отписываемся.
Возможно сделать блоки "общим весом" 2,4,8,16 и 32 байта.
Единичные байты пока не рассматриваются - медленно.
Тема в разделе форума "Железо".

UPD. Диапазон адресов 24C32 - 0х50 - - 0х57.
Отсутствие перемычек на указанной плате- 1,
получаем на новой 0х57(стоит по умолчанию)

UPD. 14.08 Добавлен в архив блок для записи в память текста, номеров - тел. книга описание .
UPD. 19.08 (14.02мск) Предыдущий блок обновлён - добавилась функция поиска по номеру. На 24С32 - 127 записей по 32 символа.
UPD. 04.09 Добавил блоки с записью Float. Конструируйте любые варианты, необходимые в каждом конкретном случае. Незабывайте о размерности в 2,4,8,16 и 32 байта.
Категория: Блоки пользователей | Добавил: Sancho
Просмотров: 2267 | Загрузок: 513 | Комментарии: 20 | Рейтинг: 5.0/2
Всего комментариев: 201 2 »
avatar
0
1
Тема интересная. Если добавить ролик для лузеров как подключить эту микросхему то тебе цены нет. Но внешняя память это круто так что автору СПАСИБО!!!!!!
avatar
0
2
Скажите пожалуйста что вы делаете с 3мя выводами микросхемы для установки адреса? Или их просто повесить в воздух?
avatar
2
3
ими нужно установить адрес микрухи на шине и2с, что бы контроллер обращался к ней по этому адресу. в параллель можно подключить до 128ми микросхем, но на каждой должен быть свой адрес
avatar
0
4
Хорошо. К примеру у меня на адресе 3 еденицы какое значение нужно в блоке ставить и например 3 нуля какое значение в блоке ставить?
avatar
0
8
Комбинация может быть любой, в программе в инструментах есть сканер шины I2C. Подключаете любое устройство с неизвестным адресом, в нашем случае микросхема памяти, запускаете сканер и проходите все шаги. Желательно, чтоб при сканировании устройство с неизвестным адресом было одно, чтоб не гадать кому какой адрес принадлежит
avatar
0
7
Логически на шину с 3мя битами по адресу мне кажется нереально подключить 128 микросхем а по ходу только 8мь
avatar
1
9
Да вы правы в данном случае 8, Всего различных устройств по I2C можно подключить 127 (адреса от 1 до 127), так как адресация 7 битная
avatar
0
5
у меня получилось подключить 24С32 (правда без этого модуля его еще не было) скетч получился коротенький но с библиотекой. Ардуина УНО считывает с 24С32 биты и зажигает 4 светодиода (такую ставили мне задачу). Куда какую ногу подключать можете подсмотреть в ролике, ролик чужой, (https://www.youtube.com/watch?v=ArM9e5pOPEs&t=1s)
24С02 и 24С32 подключаются одинаково , посмотрите даташит 24С02 (http://pdf1.alldatasheet.com/datasheet-pdf/view/23727/STMICROELECTRONICS/24C02.html)
и даташит 24С32 (http://pdf1.alldatasheet.com/datasheet-pdf/view/74869/MICROCHIP/24C32.html)
avatar
0
6
к МОДЕРАТОРУ просьба или вопрос.  
хотел свое сообщение подредактировать, не нашел где и как. Если нет такой опции то может стоит сделать, если есть то ткните пальце как это сделать.
avatar
0
10
Справа есть типа шестеренки, наводите и выползает иконка карандаша, жмякаете и редактируете...
avatar
0
12
шестерёнки есть а нажимая на редактировать не происходит ничего либо автор отключил либо глючит скрипт
avatar
0
11
Выпаял такую память только 08 на 8 килобайт и соткнулся с такой проблемой сканер шины выдаёт 4 адреса и как не переставлял 3 пина адреса то либо первых 4 адреса 50 51 52 53 либо 4 последних 54 55 56 57 скажите пожалуйста как одна микросхема подключеная по ай ту си выдаёт как буд то 4 микросхемы сидят на шине подтяжку шины делал на 10 ком
avatar
0
13
Спасибо Sancho за очень нужные и полезные блоки. Есть два вопроса по этим блокам:
1. Данные в память пишутся с первого адреса , а читаются с нулевого. Думаю, что желательно. чтобы и читались и писались с одного и того же адреса.
Схема проверки:
https://yadi.sk/d/ney6zrMJ3M3mhX

2. Если можно, то подробнее опиши блок
Uart_to_EEPROM_32_v1
avatar
0
14
Данные в блоки пишутся и читаются по адресу, подаваемому на вход. Не иначе.
Добавьте в блоке чтения передачу в сериал номера читаемого блока, со счётчика.
Обсуждаем ньюансы и дальнейшие действия...
avatar
0
15
Подскажите как инициализировать 24С02 в flprog.
24С32 пишет и читает- она есть в перечне микросхем, а вот как быть с 24С02 не знаю.
Библиотеку Eeprom24С01_02-master в Ардуину загрузил
avatar
0
16
Если пользоваться встроенной поддержкой, то надо сделать
вар А. выбрать слева настройки контролера, EEPROM, добавить внешнюю, указать имя( любое,по желению), указать адрес и размер.
вар Б. там-же для АТ24С32 после задействования, но изменить размер памяти и адрес при необходимости.
avatar
0
17
Здравствуйте, Sanсho переделал ваш блок немного под себя. Но возник вопрос как сделать чтоб в память EEPROM не записывались нули если например на входе byte_in_1 пусто. То есть мне нужно например в 3 блоке изменить 4567 байт, Но ваш блок автоматом пишет в  123 и 8 байт 00. Соответственно затирает нужные данные нулями.

update: С этой проблемой разобрался.
avatar
0
18
Здравствуйте Sanсho, уже писал что переделал ваш блок на запись по 2 байта. С епромкой 24С64 работает идеально. я так понимаю что и с 24С32 будет работать.
А вот с 24С16 этот блок пишет данные куда попало. Переделать у меня не получилось.
Вот пример и блок. Может у вас получиться.
avatar
0
19
Отличия большие...

Memory Organization  EEPROM:
The AT24C32D is internally organized as 128 pages of 32-bytes each. Randomword addressing requires a 12-bit data word address.

The AT24C16D is internally organized as 128 pages of 16 bytes each.

Это значит, что можно обращаться только постранично(сразу к 16 байтам), но читать и писать 1, 2 ...16 байт, начиная с самого первого. При этом адрес блока(страницы) состоит из одного байта.
Даташит страницы 8 и 9.

Если не проблема, и 128 страниц достаточно, удалите строки
в loopsection
Numblock  *= 2; // размер блока в байтах
в functionsection
Wire.write((int)( _firstbyte >> 8));


Не забудьте переименовать блок, а-то потом запутаетесь кто есть для чего!!!! smile

Немного ошибся!!! Потом подправлю - речь об изменении формата адресации....

P.S.
У микросхем памяти 24С01 - 16 используется один байт для младшиих битов адреса байта, а старшие биты(04-16) ПЕРЕНЕСЕНЫ в младшие биты адреса устройства, т.е. микросхема 24С16 может быть на шине только одна!
Актуально для 24С04--16. Придётся менять адресный байт при доступе...
Если актуально - сделаю.
1-10 11-11
avatar
FLProg © 2018
uCozЯндекс.Метрика