Технический форум по робототехнике.
SkyZi » 25 авг 2012, 22:32
Romikgy писал(а):для слейва любой битрейт ставь , ему побоку , ибо тактируется от мастера !
PS а что так и не осилил слейв?
Да нет, подружились мы с ним=)
Только в толк не возьму почему адреса мастер на 2 умножает... полезу вечерком код проверю.
И не пойму почему НАК приходит если ставлю битрейт 400кГц (при 16мГц такитирования МК), а у слейв 8мГц (при этом).
т.е. если 8мГц и 8мГц, то все в порядке. на 363/400кГц
А если ставлю 16 и 8 и битрейт 363 или 400 то одни Наки от Слейвов.
Romikgy » 26 авг 2012, 00:49
"TWI (Slave) Address
Register – TWAR
Bit 0 – TWGCE: TWI General Call Recognition Enable Bit
If set, this bit enables the recognition of a General Call given over the Two-wire Serial Bus."
единственное ограничение , что нашлось , это частота контроллера должна быть в 16 раз больше чем скорость битрейта... похоже косяки в настройке ... видать больше чем 400 получается ....
SkyZi » 26 авг 2012, 02:15
Спасибо, утро вечера мудренее, проверю все завтра.
SkyZi » 27 авг 2012, 22:35
А вот шиш с маслом, не пашет. НАК и все тут... не хочет принимать слейв, может не успевает?
Romikgy » 28 авг 2012, 01:26
проверь , сделай не 400 , а 350 скорость
SkyZi » 28 авг 2012, 02:32
не катит, на лицо явно что ему слейву не нравиться что Мастер в 2 раза больше имеет частоту...
на адрес откликаются, а на передачу режима записи/чтения отвечают NAK
dccharacter » 28 авг 2012, 03:10
Блин, я же писал как отлаживать слейв. У тебя пять валидных состояний слейв-контроллера и одно невалидное. Сделай два светика, вклюси прерывания по получению и данных и старт/стоп условий. Пропиши проверки всех состояний, в случае если срабатывает прерывание, но не чекается ни одно состояние (т.е. Все валидные состояния проскакивают) зажигай красный светодиод. Дальше по очереди используй зеленый светодиод для проверки каждого состояния по оереди: мастер райт, адрес. В начале условия загорелся зеленый - правильно вошли в обработчик. Переноси светик в конец обработчика, выводи в уарт значения регистров. Мачтер райт, дата. Начало обработчика,не загорается светик. Не входим вобработчик. Смотри что с линией клок - кто-то ее не отпустил. И т.д. Удачи вощим.
SkyZi » 28 авг 2012, 12:14
Помоему друг друга не понимать, он работат и работал. Камк только я меняю с 8>16Мгц Мастеру, слейв начинает выезживаться (на нем 8Мгц) Скорости менял даже на 100кГц так же...
dccharacter » 28 авг 2012, 13:47
Ну так и посмотри где именно он выеживается
))