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

 
 
> DS18B20 вычисление CRC как это сделать?!, Почитал и даташит и апноты, там что то сказано, но не понял я.
eXeC001er
сообщение Jan 24 2006, 07:02
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 305
Регистрация: 23-02-05
Из: Краснодар
Пользователь №: 2 848



Можно подробнее, а если еще и примерчик что вабще гуд.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Atashi
сообщение Jan 24 2006, 10:29
Сообщение #2


Участник
*

Группа: Новичок
Сообщений: 66
Регистрация: 30-04-05
Пользователь №: 4 630



ежели памяти полно, а надо быстро, то вот так:

crc8_tabl[]=
{
0, 94, 188, 226, 97, 63, 221, 131, 194, 156, 126, 32, 163, 253, 31, 65,
157, 195, 33, 127, 252, 162, 64, 30, 95, 1, 227, 189, 62, 96, 130, 220,
35, 125, 159, 193, 66, 28, 254, 160, 225, 191, 93, 3, 128, 222, 60, 98,
190, 224, 2, 92, 223, 129, 99, 61, 124, 34, 192, 158, 29, 67, 161, 255,
70, 24, 250, 164, 39, 121, 155, 197, 132, 218, 56, 102, 229, 187, 89, 7,
219, 133, 103, 57, 186, 228, 6, 88, 25, 71, 165, 251, 120, 38, 196, 154,
101, 59, 217, 135, 4, 90, 184, 230, 167, 249, 27, 69, 198, 152, 122, 36,
248, 166, 68, 26, 153, 199, 37, 123, 58, 100, 134, 216, 91, 5, 231, 185,
140, 210, 48, 110, 237, 179, 81, 15, 78, 16, 242, 172, 47, 113, 147, 205,
17, 79, 173, 243, 112, 46, 204, 146, 211, 141, 111, 49, 178, 236, 14, 80,
175, 241, 19, 77, 206, 144, 114, 44, 109, 51, 209, 143, 12, 82, 176, 238,
50, 108, 142, 208, 83, 13, 239, 177, 240, 174, 76, 18, 145, 207, 45, 115,
202, 148, 118, 40, 171, 245, 23, 73, 8, 86, 180, 234, 105, 55, 213, 139,
87, 9, 235, 181, 54, 104, 138, 212, 149, 203, 41, 119, 244, 170, 72, 22,
233, 183, 85, 11, 136, 214, 52, 106, 43, 117, 151, 201, 74, 20, 246, 168,
116, 42, 200, 150, 21, 75, 169, 247, 182, 232, 10, 84, 215, 137, 107, 53
};

// if bytes=7 ->returns CRC
// if bytes=8 -> returns 0
//

char crc8_compute(char * str, char bytes)
{
char crc8=0;

while (bytes)
{
crc8=crc8_tabl[crc8 ^ *str++];
--bytes;
}
return crc8;
}
wink.gif
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- eXeC001er   DS18B20 вычисление CRC как это сделать?!   Jan 24 2006, 07:02
- - at90   для кодевижена. Использовалась для ds1990 #pragma ...   Jan 24 2006, 07:09
- - m16   у меня есть рабочий пример на асме авр. вышлю на м...   Jan 24 2006, 07:33
- - eXeC001er   Еще я не особенно врыбуюсь для каких байт считать ...   Jan 24 2006, 07:40
- - GxOST   Цитата(eXeC001er @ Jan 24 2006, 10:02) Мо...   Jan 24 2006, 07:42
- - eXeC001er   эт не то, я не разберусь в этих языках.   Jan 24 2006, 07:58
|- - GxOST   Цитата(eXeC001er @ Jan 24 2006, 10:58) Ци...   Jan 24 2006, 09:08
- - MicronSys   unsigned char one_wire_byte[9]={0x00,0x00,0x00,0x0...   Jan 24 2006, 08:11
- - MicronSys   Цитата(GxOST @ Jan 24 2006, 13:08) Цитата...   Jan 24 2006, 09:18
|- - GxOST   Цитата(MicronSys @ Jan 24 2006, 12:18) Ци...   Jan 24 2006, 11:26
- - haker_fox   В прикрепленной теме есть табличная реализация CRC...   Jan 24 2006, 09:19
- - MicronSys   Вот полный текст для работы с DS1990A #define ON...   Jan 24 2006, 09:27
- - ROC   А на чем пишем-то? ASM, C? Если С, то который? Для...   Jan 24 2006, 09:29
|- - IgorKossak   Цитата(ROC @ Jan 24 2006, 11:29) Что-то у...   Jan 24 2006, 10:11
- - eXeC001er   to MicronSys а почему здесь 7 а не 8?! for (j ...   Jan 24 2006, 10:41
|- - BVU   Цитата(eXeC001er @ Jan 24 2006, 13:41) to...   Jan 24 2006, 15:49
- - m16   рабочий пример на асме. до восьми датчиков ds1820....   Jan 24 2006, 10:45
- - eXeC001er   вот в айбатонах 8 байт и 8 это CRC! а в термом...   Jan 24 2006, 11:52
- - MicronSys   [quote name='eXeC001er' date='Jan 24 2...   Jan 24 2006, 14:57
|- - GxOST   Цитата(MicronSys @ Jan 24 2006, 17:57) to...   Jan 24 2006, 15:12
- - MicronSys   Бывает   Jan 24 2006, 15:20
- - Kovrov   на, мил человек, пользуйся и не мучейся :-) Код;**...   Jan 24 2006, 15:55
- - afe   Я уже давал эту ссылку и на этот вопрос там есть с...   Jan 25 2006, 22:57
- - Pyku_He_oTTyda   Kovrov Не обьясните, как начинающему на пальцах, к...   Feb 1 2006, 05:57
|- - m16   Цитата(Pyku_He_oTTyda @ Feb 1 2006, 08:57...   Feb 1 2006, 06:52
|- - Kovrov   Цитата(Pyku_He_oTTyda @ Feb 1 2006, 08:57...   Feb 2 2006, 17:22
- - Atashi   ... давненько не был здесь; похоже, сомнения насче...   Feb 1 2006, 08:27
- - Pyku_He_oTTyda   m16 Торнутая в морду лица ссылка помогла, мозги за...   Feb 1 2006, 10:21
|- - m16   Цитата(Pyku_He_oTTyda @ Feb 1 2006, 13:21...   Feb 1 2006, 11:47
- - Pyku_He_oTTyda   С СRС разобрался вчера на базе примера от Kovrov. ...   Feb 2 2006, 06:14
- - Atashi   Да, 01 участвует. Вообще, алгоритм-то универсальн...   Feb 2 2006, 13:16
- - d__   Вот еще один вариант реализации на языке С. Характ...   Feb 2 2006, 17:42
- - Pyku_He_oTTyda   Kovrov Разве неправильно я расписал для 1990? П...   Feb 3 2006, 05:54
|- - Kovrov   Цитата(Pyku_He_oTTyda @ Feb 3 2006, 08:54...   Feb 3 2006, 10:38
- - Pyku_He_oTTyda   01 1E 06 CA 0C 00 00 70 Это конкретный ключ, пров...   Feb 3 2006, 11:38
|- - Kovrov   Цитата(Pyku_He_oTTyda @ Feb 3 2006, 14:38...   Feb 3 2006, 17:59
|- - ilya514   Цитата(Pyku_He_oTTyda @ Feb 3 2006, 14:38...   Feb 7 2006, 13:21
- - Kovrov   посмотрел на твой исходник ты в твоем случае 8ой б...   Feb 3 2006, 18:26
- - Pyku_He_oTTyda   Проблемы нет, просто хотелось уточнить все до конц...   Feb 6 2006, 05:49
- - Pyku_He_oTTyda   И вопрос в догонку: Если на шине присутствует подч...   Feb 8 2006, 05:53
|- - add   Цитата(Pyku_He_oTTyda @ Feb 8 2006, 08:53...   Feb 8 2006, 07:12
|- - Kovrov   Цитата(Pyku_He_oTTyda @ Feb 8 2006, 08:53...   Feb 8 2006, 07:34
- - Pyku_He_oTTyda   Цитатана счет 60 мкс - я не понял - речь идет о pr...   Feb 8 2006, 09:27
- - Kovrov   Presence pulsе делай по максимуму возможному а то...   Feb 8 2006, 10:00
- - Pyku_He_oTTyda   Ага, понятно, спасибо! А проснется процессор п...   Feb 8 2006, 10:46
- - Kovrov   если на инт0 посадишь то вообще может от любого шо...   Feb 8 2006, 10:52
- - PLATRO   парни а ниукаво нету просто проги для подсчета CRC...   Jun 13 2006, 17:58
|- - defunct   Цитата(PLATRO @ Jun 13 2006, 20:58) парни...   Jun 14 2006, 01:21
- - PLATRO   да в том то и фишка что я знаю тока vb )) и компил...   Jun 14 2006, 10:31
- - TomaT   Вот, может поможет чем... http://www.easics.com/we...   Jun 14 2006, 10:42
- - PLATRO   ну как я понял это штука тоже код на чомто генерит...   Jun 16 2006, 11:57
- - Nanobyte   Если это ключик от Dallas, то последние две цифры ...   Jun 16 2006, 13:03
- - PLATRO   вот там написано чтото вроде вот этого: 20 ...   Jun 16 2006, 14:39
- - Nanobyte   В Вашем случае: 01-Family code (DS1990) 20-CRC 00....   Jun 16 2006, 17:09
- - PLATRO   Опа! Спасибо бааааальшое! Осталось только...   Jun 16 2006, 19:08
- - Nanobyte   Посмотрите ещё и здесь: Имитатор Touch-Memory http...   Jun 16 2006, 19:43
- - PLATRO   да это слишком сложный. мне нада на один ключ   Jun 16 2006, 23:43


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

 


RSS Текстовая версия Сейчас: 11th August 2025 - 15:35
Рейтинг@Mail.ru


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