Управление портом в АВР

Приветствую. Подскажите, как вывести в порт B или PortD, число более 61. В авр студио ругается, мол вывод через регистр не более 61h, а нужно полность управлять портом и сразу, а не битиками дёргаться. В 51-м проще. Может что не так делаю? вот небольшой пример: ldi r16, 0b1000000 out portB,r16 - всё нормально но стоит занести большее значение, так сразу ругается: ldi r16, 0b11000000 out portB, r16 - ругается. Как правильно сделать? Вот и всё, пока.

Reply to
Evgeniy Terehov
Loading thread data ...

Здравствуйте Evgeniy Terehov пишет:

Приведённый пример работает в версии 4.12 сервис пак 4 билд 498, процессор аттини15. Более старые версии ветки 4 или не поддерживали тини15 или глючили. В более новых - могут и убрать, похожее у них было - не поддерживало, поддерживало с глюками - не поодерживало. Кроме того - пришлось в настройках ассемблера указать версию 1, в версии 2 выдаёт какую-то ошибку. Так что попробуй поменять тип ассемблера, версию аврстудии (на более новую - более старую)

Reply to
Shapovalov Alexey Ivanovich

Hello, Evgeniy! You wrote to All on Thu, 07 Feb 2008 17:59:34 +0500:

ET> Подскажите, как вывести в порт B или PortD, число более 61. В авр ET> студио ругается, мол вывод через регистр не более 61h, а нужно полность ET> управлять портом и сразу, а не битиками дёргаться. В 51-м проще. Да какая разница... ET> Может что не так делаю? вот небольшой пример: ET> ldi r16, 0b1000000 ET> out portB,r16 - всё нормально ET> но стоит занести большее значение, так сразу ругается: ET> ldi r16, 0b11000000 ET> out portB, r16 - ругается. Ругается-то на что? ET> Как правильно сделать? ET> Вот и всё, пока. Сразу скажу ... я не понял в чём у тебя проблема. Hо уж точно не в Атмеле.

-------------------------------------------

.include "can128def.inc"

ldi r16, 0b1000000 out PORTB,r16 ldi r16, 0b11000000 out PORTB, r16

---------------------------------- ... и никакой ругани. Hи предупреждений, ни ошибок.

:020000020000FC :0800000000E405B900EC05B9AC :00000001FF

000000 e400 ldi r16, 0b1000000 000001 b905 out PORTB,r16 000002 ec00 ldi r16, 0b11000000 000003 b905 out PORTB, r16

--------------------------- .include "tn11def.inc"

ldi r16, 0b1000000 out PORTB,r16 ldi r16, 0b11000000 out PORTB, r16

---------------------------

:020000020000FC :0800000000E408BB00EC08BBA2 :00000001FF

000000 e400 ldi r16, 0b1000000 000001 bb08 out PORTB,r16 000002 ec00 ldi r16, 0b11000000 000003 bb08 out PORTB, r16

With best regards, Andrej Arnold. E-mail: snipped-for-privacy@aol.com

Reply to
Andrej Arnold

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.