Консультации | Как рассчиитать СRС для DS18B20? |
|
---|---|---|
Здравствуйте всем. При чтении SCRATCHPAD-а датчика DS18B20 он выдает 8-байт данных, последний байт это СRC(циклический избыточный код). В пдфке сказано "CRC = X^8 + X^5 + X^4 + 1" что такое "X"? Если это данные по температуре TH:TL(16bit) то СRC, допустим при 85Сгр. получается "космическое" число явно больше 1 байта. |
|
|
Посмотрите программу для термометра на моём сайте. Там есть подпрограмма для расчёта CRC DS18B20 на асме.
|
|
|
picmaniac: ОК, спасибо. |
|
|
Есть два варианта ! второй способ быстрее. |
|
|
Diko: 2) это использовать таблицу |
|
|
таблица размером 256 байт. (собственно это всё место и занимает). |
|
|
И как показала практика, если почитать документацию то там много чего пишут вот например что : Application Note 27: Understanding and Using Cyclic Redundancy Checks with Dallas Semiconductor Вот берёшь этот док и читаешь, там всё написано что да как. |
|
|
прикрипить что-то не удалось, но вот ссылачка на него. |
|
|
Diko: но вот ссылачка на него Ну вот все окончательно встало на свои места. |
|
|
вообщем-то возможно, этот метод хорош когда есть память и нет желания ломать голову как CRC считать, а когда памяти малова-то, там довольно подробно расписано (с примером на асме) как посчитать другим способом. PicManiac привёл его на С. |
|
|
Форум про радио — сайт, посвященный обсуждению электроники, компьютеров и смежных тем. pro-radio.online | Обратная связь |
© 2003—2025 |