[an error occurred while processing this directive]
|
Дело в том, что в CV нет готовых библиотек для работы с DS2405. И все функции для работы с ними придется пиСать ручками, изучая соответствующие даташиты и применяя низкоуровневые функции. Низкоуровневые функции описаны в документации CV:
unsigned char w1_init(void)
unsigned char w1_read(void)
unsigned char w1_write(unsigned char data)
Но если подойти к делу с творческой ленцой, то может прокатит такой вариант:
Все датчики подключить параллельно на шину через нормально-замкнутые охранные контакты + контакт для таблеток. Тогда все упрощается - надо будет просто опрашивать наличие устройств на шине 1wire. Если все устройства (или их количество) присутствуют - значит все нормально. Если кто-либо вставил таблетку (добавилось еще одно устройство на шине), то надо сравнить ее код с разрешенным...
В этом случае можно обойтись всего одной библиотечной функцией CV:
unsigned char w1_search(unsigned char cmd,void *p) !
Полный пример есть в документации к компилятору...
E-mail: info@telesys.ru