[an error occurred while processing this directive]
Ответ: вот накатал такой вариант, кто может оптимальнее? (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено SOIC 02 апреля 2003 г. 17:58
В ответ на: Помогите реализовать на IAR C оптимальный код для восстановления данных в коде Хэмминга...(+) отправлено SOIC 02 апреля 2003 г. 17:23


const unsigned char HamAdd[] = {
0x00, 0x05, 0x07, 0x02, 0x03, 0x06, 0x04, 0x01,
0x06, 0x03, 0x01, 0x04, 0x05, 0x00, 0x02, 0x07
};
const unsigned char HamXor[] = {
0x00, 0x00, 0x00, 0x08, 0x00, 0x01, 0x04, 0x02
};

unsigned char ReadFlash(unsigned char Adr)
{
unsigned char data1, data2;

data1 = LowLevelReadFlash(Adr*2);
data2 = LowLevelReadFlash(Adr*2+1);

data1 ^= HamXor[ (data1>>4) ^ HamAdd[data1&0x0F] ];
data2 ^= HamXor[ (data2>>4) ^ HamAdd[data2&0x0F] ];

return (data1&0x0F)|(data2<<4);
}



Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru