Народ доброго дня суток, прошу помощи кто поможет разобраться с EEprom библиотекой. мне нужно после нажатия определенного пункта меню записоватькод Ibuton ключа в eeprom, а потом выводить эти ключи на lcd 1602, определенный ключ в определенном месте..
да я не могу допиреть как записать этих восемь байт туда, и потом определенный ключь оттуда вызвать, если ван не сложно напишите как это можно сделать с подробными коментами.
Судя по вашей регистрации, вы уже должны вполне нормально программить. Берете ваш массив с ключом, и for-ом записываете с 0 по 7 ячейки, следующий с 8-й и т.д. Читать также.
Ну а пишите уж сами.
кто поможет разобраться с EEprom библиотекой. мне нужно после нажатия определенного пункта меню записоватькод Ibuton ключа в eeprom, а потом выводить эти ключи на lcd 1602, определенный ключ в определенном месте..
хотелка подразумевает :
- меню
- управление 1602-ым
- запись чтение eeprom
- и др.
начните с изучения чего-нить для начала , в готовый код вашей хотелки будете вникать месяца три...
....если его кто-нить напишет ( Ищу исполнителя )
времени пока особо нету этим заниматься вот поэтому пока не очень, ну первый чип я допустим я запишу, а второй как.ю по какому адрессу он запишится в память, плиз если можно подробней напишите код, и коменты по каждому пункту, спасибо за помощь
времени пока особо нету этим заниматься вот поэтому пока не очень, ну первый чип я допустим я запишу, а второй как.ю по какому адрессу он запишится в память, плиз если можно подробней напишите код, и коменты по каждому пункту, спасибо за помощь
вы действительно думаете , что здесь две категории форумчан ?
- времени не очень , кодю не очень - напишите поподробнее код
- времени шквал , кодю нормально - скукота ! не кому чёнить написать типа кода
Вас 55 сообщение ни на какие мысли не наводит? Или отсчитать на пальцах 8 значений включая 0 так сложно? (0, 1, 2, 3, 4, 5, 6, 7) - первый ключ (8, 9, 10, 11, 12, 13, 14, 15) - второй ключ и т.д.
Читал я это но там написанно про один байт, а мне надо 8, потом еще 8, вот это я не могу понять извиняюсь за свои вопросы, и спасибо за понимание и помощь
Читал я это но там написанно про один байт, а мне надо 8, потом еще 8, вот это я не могу понять извиняюсь за свои вопросы, и спасибо за понимание и помощь
в метро поезд состоит из 8-ми байтВагонов - вот и сажайте ваши КЛЮЧИ в поезд повагонно-побайтно :)-
Читал я это но там написанно про один байт, а мне надо 8, потом еще 8, вот это я не могу понять извиняюсь за свои вопросы, и спасибо за понимание и помощь
в метро поезд состоит из 8-ми байтВагонов - вот и сажайте ваши КЛЮЧИ в поезд повагонно-побайтно :)-
можно словами рассказать.... а там уж два шага до кода....
...КЛЮЧ - это byte массив[8] - нет ?
Снова на пальцах, берем байт из массива из 0 ячейки, записываем в 0 ячейку епром, берем из 1 ячейки массива, записываем в 1 ячейку епром и так восемь раз. Первый ключ сохранен. Удобно делать при помощи цикла For
Для последующих ключей смещаем адресное поле EEPROM на длину ключа.
я понимаю что вам мои вопросы кажутся тупыми, но не могу понять
64 ключа по 8 байт - ещё рано...
нет , не кажутся... я сам почти такой...
напиши код :
ввод ключа из сериала в ОЗУ ( в массив )
по команде из сериала запись этого ключа в eeprom по команде из сериала чтение этого ключа в ОЗУ ( в массив )
вывод ключа из ОЗУ ( из массива ) в сериал-монитор
я бы так начал изучать этот вопрос , а потом усложнять и объединять со всем остальным....
для указания МК какой байт в данный момент взять из массива
...даже маленькие фрагменты кода не оформляй текстово , а посредством вставки кода
как говорить про строки если они не нумерованы ?
ещё над чем подумать.... for(inti=0; i < 8; i++)
i изменяется от 0 до 7 - хватит и трёх двоичных разрядов для кодировки , но ближайший пользуемый тип данных byte , 8 разрядов
здесь int и все старшие типы - трата памяти :(
поэтому лучше for( bytei=0; i < 8; i++ )
это тоже не прокатит EEPROM.write( i , key[ i ] )
ведь заявлено byte Key[ 8 ]
правильно EEPROM.write( i , Key[ i ] )
for (byte I = 8; I < 16; I++) - это уже ближе к посту #77 :)
и так и будешь прописывать все 64 возможных ключа ?
а если оставить for ( byte i = 0; i < 8; i++ ) но добавить EEPROM.write( i * numberKey , Key[ i ] ) ...где numberKey - это номер ключа , byte numberKey = 0...63
Народ доброго дня суток, прошу помощи кто поможет разобраться с EEprom библиотекой. мне нужно после нажатия определенного пункта меню записоватькод Ibuton ключа в eeprom, а потом выводить эти ключи на lcd 1602, определенный ключ в определенном месте..
заранее всем спасибо за помощь)))
И что вам мешает это сделать? write, read.
да я не могу допиреть как записать этих восемь байт туда, и потом определенный ключь оттуда вызвать, если ван не сложно напишите как это можно сделать с подробными коментами.
япросто пока не очень дружу с программированием.
Судя по вашей регистрации, вы уже должны вполне нормально программить. Берете ваш массив с ключом, и for-ом записываете с 0 по 7 ячейки, следующий с 8-й и т.д. Читать также.
Ну а пишите уж сами.
кто поможет разобраться с EEprom библиотекой. мне нужно после нажатия определенного пункта меню записоватькод Ibuton ключа в eeprom, а потом выводить эти ключи на lcd 1602, определенный ключ в определенном месте..
хотелка подразумевает :
- меню
- управление 1602-ым
- запись чтение eeprom
- и др.
начните с изучения чего-нить для начала , в готовый код вашей хотелки будете вникать месяца три...
....если его кто-нить напишет ( Ищу исполнителя )
времени пока особо нету этим заниматься вот поэтому пока не очень, ну первый чип я допустим я запишу, а второй как.ю по какому адрессу он запишится в память, плиз если можно подробней напишите код, и коменты по каждому пункту, спасибо за помощь
Меню я уже составил хотя еще не до конца, я просто попросил помощи с записью ibuton ключей в eeprom, ну и считывание их от туда с выводом на экран
времени пока особо нету этим заниматься вот поэтому пока не очень, ну первый чип я допустим я запишу, а второй как.ю по какому адрессу он запишится в память, плиз если можно подробней напишите код, и коменты по каждому пункту, спасибо за помощь
вы действительно думаете , что здесь две категории форумчан ?
- времени не очень , кодю не очень - напишите поподробнее код
- времени шквал , кодю нормально - скукота ! не кому чёнить написать типа кода
времени пока особо нету этим заниматься вот поэтому пока не очень.
Обычно, когда мало времени, имеется достаточно денег: Раздел "Ищу исполнителя"
я не прошу писать мне код всей моей программы, я просто ппросил что б мне разъяснили на пальцах как это делается что б я понял, вот и все что я хочу
niki43 Думаю вопрос поставить так, какая информация была прочитана перед тем как написать сюда свой вопрос?
Вас 55 сообщение ни на какие мысли не наводит? Или отсчитать на пальцах 8 значений включая 0 так сложно? (0, 1, 2, 3, 4, 5, 6, 7) - первый ключ (8, 9, 10, 11, 12, 13, 14, 15) - второй ключ и т.д.
спасибо за помощь, буду пробовать
восновном пользуюсь учебниками по программированию ардуино, прошу прощения если я напрег кого то своей просьбой
EEPROM.write
EEPROM.read
Странно, через раздел "Программирование" на эту библиотеку не попасть. Но ведь "Поиск" никто не отменял.
Так мало того в IDE есть примеры работы с библиотекой.
Читал я это но там написанно про один байт, а мне надо 8, потом еще 8, вот это я не могу понять извиняюсь за свои вопросы, и спасибо за понимание и помощь
Читал я это но там написанно про один байт, а мне надо 8, потом еще 8, вот это я не могу понять извиняюсь за свои вопросы, и спасибо за понимание и помощь
в метро поезд состоит из 8-ми байтВагонов - вот и сажайте ваши КЛЮЧИ в поезд повагонно-побайтно :)-
теоретически я понимаю как это сделать, а вот кодом хоть убейне догоняю
Так пробуй что нибудь выкладывай сюда, че не понятно подскажут помогут. Помогающим важно знать, что ты сам понял.
Читал я это но там написанно про один байт, а мне надо 8, потом еще 8, вот это я не могу понять извиняюсь за свои вопросы, и спасибо за понимание и помощь
в метро поезд состоит из 8-ми байтВагонов - вот и сажайте ваши КЛЮЧИ в поезд повагонно-побайтно :)-
можно словами рассказать.... а там уж два шага до кода....
...КЛЮЧ - это byte массив[8] - нет ?
допустим я считую ibuton ключь и помещаю его сюда:
byte addr[8];
вот как отсюда его записать в епром, и оттуда его считать
#55
вот мой скетч но я наверное не правильно его вставил
byte Key[ 64 , 8 ];
64 ключа по 8 байт
это для - далее....
вот мой скетч но я наверное не правильно его вставил
аха !
http://arduino.ru/forum/obshchii/vstavka-programmnogo-koda-v-temukomment...
"свернуть код" - тоже хорошо
прошу прощения за такое, не хотел
прошу прощения за такое, не хотел
здесь не бьют ! небось !
неЗнал != неХотел
просто измени #75 :)-
не понял вас че с этим дальше делать
byte Key[ 64 , 8 ];
64 ключа по 8 байт
я понимаю что вам мои вопросы кажутся тупыми, но не могу понять
Снова на пальцах, берем байт из массива из 0 ячейки, записываем в 0 ячейку епром, берем из 1 ячейки массива, записываем в 1 ячейку епром и так восемь раз. Первый ключ сохранен. Удобно делать при помощи цикла For
Для последующих ключей смещаем адресное поле EEPROM на длину ключа.
byte Key[ 64 , 8 ];
64 ключа по 8 байт
я понимаю что вам мои вопросы кажутся тупыми, но не могу понять
64 ключа по 8 байт - ещё рано...
нет , не кажутся... я сам почти такой...
напиши код :
ввод ключа из сериала в ОЗУ ( в массив )
по команде из сериала запись этого ключа в eeprom
по команде из сериала чтение этого ключа в ОЗУ ( в массив )
вывод ключа из ОЗУ ( из массива ) в сериал-монитор
я бы так начал изучать этот вопрос , а потом усложнять и объединять со всем остальным....
SU-27-16, про 64 ключа, ты не горячишься, ТС похоже в одноразмерном массиве уже увяз.
дустим есть масив с 8 байтами:
byte Key[ 8 ];
byte i;
f
or
(
int
i=0; i < 8; i++){
EEPROM.write(i, key)
}
я так вас понял,
У тебя индекс отклеился.
дустим есть масив с 8 байтами:
byte Key[ 8 ];
byte i;
f
or
(
int
i=0; i < 8; i++){
EEPROM.write(i, key)
}
я так вас понял,
Вот Вы чего-то написали и тут же с вопросм "так? не так?".
А просто взять и попробовать религия не позволяет?
Что отклеилось
Индекс в массиве и знак вопроса.
Для чего он там, и как правильно должно выглядеть, смотрел примеры тав вроде больше ничего нет
byte i; - не нужно
а теперь найди разницу :
EEPROM.write( i , key ) и
EEPROM.write( i , key[ i ] )
Для чего он там, и как правильно должно выглядеть
для указания МК какой байт в данный момент взять из массива
...даже маленькие фрагменты кода не оформляй текстово , а посредством вставки кода
как говорить про строки если они не нумерованы ?
ещё над чем подумать....
f
or
(
int
i=0; i < 8; i++)
i изменяется от 0 до 7 - хватит и трёх двоичных разрядов для кодировки , но ближайший пользуемый тип данных byte , 8 разрядов
здесь int и все старшие типы - трата памяти :(
поэтому лучше
f
or
(
byte
i=0; i < 8; i++ )
это тоже не прокатит
EEPROM.write( i , key[ i ] )
ведь заявлено byte Key[ 8 ]
правильно
EEPROM.write( i , Key[ i ] )
О теперь понятней стало, что от куда берется,
А чтоб следующий ключ записать эт надо написать так:
for (byte I = 8; I < 16; I++)
Про вставку кода я учту, приеду домой отредактирую все свои записи, с мобильника подругому писать не могу.
Спасибо теперь, стало понятней
for (byte I = 8; I < 16; I++) - это уже ближе к посту #77 :)
и так и будешь прописывать все 64 возможных ключа ?
а если оставить
for ( byte i = 0; i < 8; i++ )
но добавить
EEPROM.write( i * numberKey , Key[ i ] )
...где numberKey - это номер ключа , byte numberKey = 0...63
читай - смещение индекса
Нужно добавить переменную ключей:
byte numberKey = 0;
А считать обратно я могу по номеру ключей иль только нужно будит побайтно считывать
А считать обратно я могу по номеру ключей иль только нужно будит побайтно считывать
а это как тибе удобнее-геморройне :)
напиши-покажи весь код записи ключа #43 = FF01020304050655 в EEPROM ( из массива )
напиши-покажи весь код чтения ключа #43 из EEPROM ( в массив )
чё построчно-то обсуждать ?
Ок, буду дома ппробую на писать, и спасибо за помощь
Ок, буду дома ппробую на писать, и спасибо за помощь