реклама на сайте
подробности

 
 
> I2C память., Не могу работать с 24с256.
at90
сообщение Dec 12 2005, 08:57
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 866
Регистрация: 31-03-05
Из: Краснодар
Пользователь №: 3 814



Прилепил к меге 24с256. Адресные ноги подтянуты к земле.
Но попытки чтения и записи в память не увенчались успехом.
Пишу в КодеВижен. Доэтого работал с ds1307. Работает нормально.

Использую встроенный в компилятор I2C.
#define EEPROM_BUS_ADDRESS 0xA0

bit i2c_error;

unsigned char at24c08_read(unsigned int address)
{
unsigned char data;
unsigned char temp_i;
temp_i = SREG.7;
#asm("cli")

i2c_error=0;
data = ((unsigned char)(address>>7))&0x0e;
if (!(i2c_start()&&
i2c_write(EEPROM_BUS_ADDRESS | data)&&
i2c_write((unsigned char)(address))&&
i2c_start()&&
i2c_write(EEPROM_BUS_ADDRESS | data | 1)))
{ i2c_error=1; }
else data=i2c_read(0);
i2c_stop();

SREG.7 = temp_i;
return data;
}



void at24c08_write(unsigned int address, unsigned char data)
{
unsigned char temp_i;
temp_i = SREG.7;
#asm("cli")
i2c_error=0;

if (!(i2c_start()&&
i2c_write(EEPROM_BUS_ADDRESS | (((unsigned char)(address>>7))&0x0e))&&
i2c_write((unsigned char)(address))&&
i2c_write(data))) { i2c_error=1; }
i2c_stop();

delay_ms(10);
SREG.7 = temp_i;
}


--------------------
<<Первая производная от чужой идеи - уже твоя идея.>>
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
bodja74
сообщение Dec 16 2005, 11:26
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 543
Регистрация: 22-10-05
Пользователь №: 9 984



To: haker_fox

Полностью согласен с Вами.

Самое оптимальное решение для меня - знать несколько языков.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- at90   I2C память.   Dec 12 2005, 08:57
- - m16   посмотри апноту   Dec 12 2005, 09:42
- - at90   У меня I2C программный. Ножки Twi заняты. Плата уж...   Dec 12 2005, 10:33
- - at90   Никто не поделится рабочим примерчиком работы с ee...   Dec 12 2005, 10:54
- - Rash   Цитата(at90 @ Dec 12 2005, 14:33) У меня ...   Dec 12 2005, 11:21
- - proba   organizatsija pamjaati u 2408 i 24256 raznoe, 256 ...   Dec 12 2005, 11:58
- - at90   Аппаратный TWI глюченный. Мне бысто и не нада. Хва...   Dec 12 2005, 12:27
|- - m16   Цитата(at90 @ Dec 12 2005, 15:27) Аппарат...   Dec 12 2005, 12:37
- - bodja74   Пардон ,что не в тему,не хотелось создавать отдель...   Dec 12 2005, 22:29
- - haker_fox   ЦитатаПрограммка простенькая,проверяет только флаг...   Dec 13 2005, 00:17
- - at90   Цитата(proba @ Dec 12 2005, 14:58) organi...   Dec 13 2005, 07:20
- - bodja74   ***А после уловия "СТОП" флаг TWINT случ...   Dec 13 2005, 18:23
- - haker_fox   ЦитатаЕдинственный вариант проверять TWSR на отсут...   Dec 14 2005, 00:45
|- - Igor26   Тяжело мне это все понять (мой комп на работе в ре...   Dec 14 2005, 07:05
- - at90   Заработало так. Как в даташите? Код#define EEPRO...   Dec 14 2005, 11:03
- - bodja74   Ужасно извиняюсь ,что беспокоил по своей проблеме....   Dec 14 2005, 17:44
- - haker_fox   ЦитатаУжасно извиняюсь ,что беспокоил по своей про...   Dec 15 2005, 00:54
- - bodja74   То: Haker_fox Ничего толкового не могу сказать по...   Dec 15 2005, 21:10
- - haker_fox   ЦитатаНичего толкового не могу сказать по Си ,так ...   Dec 16 2005, 00:23
- - Георгий   К сожалению для меня интеллект компилятора пока в...   Dec 19 2005, 06:09


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 09:06
Рейтинг@Mail.ru


Страница сгенерированна за 0.01384 секунд с 7
ELECTRONIX ©2004-2016