Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 13.04.2009, 03:36  
picavr
Почётный гражданин KAZUS.RU
 
Аватар для picavr
 
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,816
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
picavr на пути к лучшему
По умолчанию

Сообщение от khomiak
Сообщение от dimonbest
В кодевижине эти библиотеки есть. В справке есть пример работы с памятью, правда с другой, но принцип тот же.
это хорошо...
а что за память?
может если есть уже библиотеки, то лучше ту память взять?
Ребята.. вы бы перед тем как спрашивать. даташиты бы что ли почитали.. что бы владеть предметом хотя бы в минимальном обьёме... что бы УМЕЛИ спросить НУЖНОЕ...

24C00 24C01 24C02 24C04 24C08 24C16. отличаются только одбъемом памяи и объемомбуфера для записи.

24С32, 24С64, 24С128, 24С256, 24С1024 отличаются ещё и 10 битным адресом...
Реклама:
picavr вне форума  
Непрочитано 13.04.2009, 09:58  
dimonbest
Гражданин KAZUS.RU
 
Аватар для dimonbest
 
Регистрация: 30.04.2006
Сообщений: 984
Сказал спасибо: 5
Сказали Спасибо 18 раз(а) в 14 сообщении(ях)
dimonbest на пути к лучшему
По умолчанию

Сообщение от khomiak
Опять обращаюсь к общественности.
спаял вот такую штуку... джампер отключает питание микроконтроллера, когда считываю память с компа.
работает от внутреннего генератора 8 МГц.
(CKSEL0=0, CKSEL1=0, CKSEL2=1, CKSEL3=0, SUT0=0, SUT1=1)
и написал прогу, только вот она не работает почему-то ...
кинте рабочие коды плиз, если у кого есть.

#asm
.equ __i2c_port=0x12
.equ __sda_bit=4
.equ __scl_bit=3
#endasm

#include‹MEGA8.h›
#include‹delay.h›
#include ‹i2c.h›

#define EEPROM_BUS_ADDRESS 0xa0

/* write a byte to the EEPROM */
void eeprom_write(unsigned int address, unsigned char data) {

i2c_start();
i2c_write(EEPROM_BUS_ADDRESS);
i2c_write(address);
i2c_write(data);
i2c_stop();
delay_ms(10);
}

void main(void) {

/* write the byte 55h at address 1111h */
eeprom_write(0x1111,0x55);

}
Какую микросхему памяти используешь?

Прикрепленный файл: 9688756.pdf
dimonbest вне форума  
Непрочитано 13.04.2009, 12:39  
khomiak
Временная регистрация
 
Регистрация: 27.10.2007
Сообщений: 59
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
khomiak на пути к лучшему
По умолчанию

Сообщение от picavr

Ребята.. вы бы перед тем как спрашивать. даташиты бы что ли почитали.. что бы владеть предметом хотя бы в минимальном обьёме... что бы УМЕЛИ спросить НУЖНОЕ...

24C00 24C01 24C02 24C04 24C08 24C16. отличаются только одбъемом памяи и объемомбуфера для записи.

24С32, 24С64, 24С128, 24С256, 24С1024 отличаются ещё и 10 битным адресом...
http://www.gaw.ru/html.cgi/txt/doc/m...24c128_256.htm

Память размером 256 кбит внутренне разделена на 512 страниц по 64 байта в каждой. Для доступа к памяти по произвольному адресу требуется 15-разрядное слово адреса.
но никак не 10. если не можете показать рабочий код, то лучше вообще не писать.

Сообщение от dimonbest
Какую микросхему памяти используешь?
спаибо, dimonbest, что опять откликнулся.
память 24с256.
в прикрепленном пдф есть схема подключения. с компа считать и записать могу. какой код для записи с мк?
khomiak вне форума  
Непрочитано 13.04.2009, 13:11  
dimonbest
Гражданин KAZUS.RU
 
Аватар для dimonbest
 
Регистрация: 30.04.2006
Сообщений: 984
Сказал спасибо: 5
Сказали Спасибо 18 раз(а) в 14 сообщении(ях)
dimonbest на пути к лучшему
По умолчанию

Попробуй вот так, должно получится...
Код:
#define EEPROM_BUS_ADDRESS 0xa0

/* write a byte to the EEPROM */
void eeprom_write(unsigned int address, unsigned char data) {

i2c_start();
i2c_write(EEPROM_BUS_ADDRESS);
i2c_write(address››8);
i2c_write(address & 0x00FF);
i2c_write(data);
i2c_stop();
delay_ms(10);
}

void main(void) {
eeprom_write(0,0x55);
}
dimonbest вне форума  
Непрочитано 13.04.2009, 22:29  
khomiak
Временная регистрация
 
Регистрация: 27.10.2007
Сообщений: 59
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
khomiak на пути к лучшему
По умолчанию

Сообщение от dimonbest
Попробуй вот так, должно получится...
спасибо большое. действительно получилось.
ниже привожу пример считывания байта с одной ячейки(0x0001) и записи в другую ячейку(0x70e7).
мож кому мой опыт пригодится.

Код:
#asm
     .equ __i2c_port=0x12
     .equ __sda_bit=4
     .equ __scl_bit=3
#endasm

#include‹MEGA8.h›   
#include‹delay.h›     
#include ‹i2c.h›


#define EEPROM_BUS_ADDRESS 0xa0


void eeprom_write(unsigned int address, unsigned char data) {

i2c_start();
i2c_write(EEPROM_BUS_ADDRESS);
i2c_write(address››8);
i2c_write(address & 0x00FF); 
i2c_write(data);
i2c_stop();
delay_ms(10);
} 


unsigned char eeprom_read(unsigned int address) {
unsigned char data;
i2c_start();
i2c_write(EEPROM_BUS_ADDRESS);
i2c_write(address››8);
i2c_write(address & 0x00FF); 
i2c_start();
i2c_write(EEPROM_BUS_ADDRESS | 1);
data=i2c_read(0);
i2c_stop();
return data;
}

void main(void) {
unsigned char i;
  i2c_init();
 
i=eeprom_read(0x0001);


eeprom_write(0x70e7,i);
}
khomiak вне форума  
Непрочитано 14.04.2009, 03:58  
picavr
Почётный гражданин KAZUS.RU
 
Аватар для picavr
 
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,816
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
picavr на пути к лучшему
По умолчанию

Сообщение от khomiak
Память размером 256 кбит внутренне разделена на 512 страниц по 64 байта в каждой.
Вообще то не организация по странично, а буфер RAM 64 байта, для записи с любого адреса по 64 байт.
Сообщение от khomiak
Для доступа к памяти по произвольному адресу требуется 15-разрядное слово адреса. но никак не 10.
ошибся,
24с00-16 7 бит адрес
24с32-64 10бит адрес
24с128-256 16 бит адрес
24с512 17 бит адрес
Сообщение от khomiak
если не можете показать рабочий код, то лучше вообще не писать.
А мой код на АСМ PIC вам поможет? ))) и там всё просто до безобразия. Пишем по даташиту и всё пашет.
picavr вне форума  
Непрочитано 14.04.2009, 20:41  
khomiak
Временная регистрация
 
Регистрация: 27.10.2007
Сообщений: 59
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
khomiak на пути к лучшему
По умолчанию

Сообщение от picavr
Сообщение от khomiak
Память размером 256 кбит внутренне разделена на 512 страниц по 64 байта в каждой.
Вообще то не организация по странично, а буфер RAM 64 байта, для записи с любого адреса по 64 байт.
цитата из даташита:
AT24C128/256, 128K/256K SERIAL EEPROM: The 128K/256K is internally organized as 256/512 pages of 64-bytes each.
(пер.256/512 страниц по 64 байта каждый)



Сообщение от picavr
Сообщение от khomiak
Для доступа к памяти по произвольному адресу требуется 15-разрядное слово адреса. но никак не 10.
ошибся,
24с00-16 7 бит адрес
24с32-64 10бит адрес
24с128-256 16 бит адрес
24с512 17 бит адрес
цитата из даташита:
AT24C128/256. Random word addressing requires a 14/15-bit data word address.
(пер.любое слово адресуеться 14/15-битным словом адреса)
AT24C512. Random word addressing requires a 16-bit data word address.
(пер.любое слово адресуеться 16-битным словом адреса)
значит размерность адреса такова:
AT24C128 - 14
AT24C256 - 15
AT24C512 - 16


Сообщение от picavr
Сообщение от khomiak
если не можете показать рабочий код, то лучше вообще не писать.
А мой код на АСМ PIC вам поможет? ))) и там всё просто до безобразия. Пишем по даташиту и всё пашет.
а может кому-то и будет интересно..
khomiak вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Протокол I2C с микросхемами 24с256 Faworit Микроконтроллеры, АЦП, память и т.д 6 20.07.2009 23:04
Память в МК worldmasters Микроконтроллеры, АЦП, память и т.д 4 20.10.2008 17:25
память (внешняя память) satnettv Микроконтроллеры, АЦП, память и т.д 0 04.09.2007 15:20
Дополнительная память IlyaD Микроконтроллеры, АЦП, память и т.д 1 18.12.2006 13:56
Память sachem Микроконтроллеры, АЦП, память и т.д 1 23.09.2003 11:15


Часовой пояс GMT +4, время: 23:28.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot