Приветствую всех специалистов на этом сайте!
Столкнулся (и бьюсь уже неделю) с такой вот проблемой:
Сделал я устройство, именуемое i2c_tiny_usb (c сайта
http://www.harbaum.org/till/i2c_tiny_usb/index.shtml). Устройство работает хорошо и опросов к нему вроде как небыло, но понадобилось мне подключить к I2C клавиатуру (сделал на Mega
. Вот тут-то и начались проблемы.
Дело в том, что к i2c_tiny_usb на сайте есть программные примеры обращения через устройство (Master) к Slave-ам. А именно к термометру DS1621 и расширителю портов PCF8574. Единстенная функция, которая может что-либо принять от DS1621 называется i2c_read_with_cmd(DS1621_ADDR, cmd, 1) где cmd - команда для DS1621, a 1 - кол-во принимаемых от DS1621 байт.
Я решил воспользоваться этой функцией для запроса кей-кода клавиатуры: KeyKode =i2c_read_with_cmd(0x26, 0xF9, 1); Но программа наотрез отказывается получать байт с Mega8.
Исходя из того, что i2c_tiny_usb с DS1621 все-таки работает (DS1621 сначала как Slave-Receiver, потом как Slave-Transmitter) то похоже я где-то напутал в программе для Mega8.
Может кто подскажет?
P.S. Протестировать в Протеусе не представляется возможным из-за отсутствия компонента i2c_tiny_usb
Прикрепленный файл:
5396967.ZIP