Ну вот же!СЦБист писал(а): и где это чудо лежит ? не надо выдумывать
Как и следовало ожидать - "спыцылыст" ниасилил документацию.
Да не умеет он читатья вам минимум дважды показывал ссылку на место, где описано все... читали?
ARV писал(а):[qu]я вам минимум дважды показывал ссылку на место, где описано все... читали? :
Код: Выделить всё
void EEPROM_write(unsigned int uiAddress, uint64_t ucData)
{
int i;
for (i=0;i<8;i++)
{
while(EECR & (1<<EEWE)) ;
EEAR = uiAddress;
EEDR = (uint8_t)ucData;
EECR |= (1<<EEMWE);
EECR |= (1<<EEWE);
ucData >>= 8;
uiAddress++;
}
}
uint64_t EEPROM_read(unsigned int uiAddress)
{
int i;
uint64_t ucData = 0;
uint64_t temp = 0;
for (i=0;i<8;i++)
{
while(EECR & (1<<EEWE));
EEAR = uiAddress;
EECR |= (1<<EERE);
temp = EEDR;
temp <<= (8 * i);
ucData |= temp;
uiAddress++;
}
return ucData;
}вы сидите в полном дерьмеСЦБист писал(а):я вообщето сижу в студии 4, а не в вижуане как вы
Код: Выделить всё
EEDR = ucData & 255;Код: Выделить всё
EEDR = (uint8_t)ucData;нормальные люди пишут EEDR = ucData;СЦБист писал(а):EEDR = ucData & 255;
или
EEDR = (uint8_t)ucData;
господи, и это мне говорит человек, который похваляется, что на Си/С++ собаку съел!СЦБист писал(а):при преобразовании вниз необходимо явно приводить
вы что не в курсе, что старшие байты отбрасываются ?
С оптимизацией тоже. Такое говно оптимизацией не отполировать. Похоже, ты не знаешь не только Си, но и ассемблера. Написать такоеСЦБист писал(а): так что вот мои функции.
...
правда без оптимизации не хо.
можно только абсолютно не представляя во что оно развернется. Ты бы еще temp = temp*256*i написал.temp <<= (8 * i);