Раньше такая очистка у меня работала, сейчас в симе аврстудии флаг устанавливается в "1" и цикл обходится...
USICR = (1<<USIWM0) | (1<<USICS1) | (1<<USICLK);
USISR|= 1<<USIOIF;//очистка флага
while ((USISR.USIOIF)==0)
Теперь на сцл висит "0" и опять ничего не меняется... Насколько понял тактирование регистра данных и счетчика происходит программно, но не совсем понятна физическая суть, должна ли для этого перебрасываться физически нога порта, если нет, то откуда появляются импульсы на ней? что-то совсем запутался... Перепаять ноги не удастся, плата разведена и сделана... Чую надо переходить на чисто программный спи, а что делать?
Сообщение отредактировал valera_o - Sep 16 2009, 12:11
|