ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
21 ноября
138464
-=John=- (11.11.2008 18:43, просмотров: 26810)
Можно ли в IAR для AVR передать в качестве параметра адрес порта ввода-вывода? Сразу предупреждаю – задача не выдуманная, но описание сильно упрощено. Просьба не предлагать менять схему или сделать принципиально иначе. Хочется именно так. Просьба также не привязываться к терминологии. Итак. Есть интерфейсная микросхема, подключаемая к ножкам порта(ов) ввода-вывода. И есть функция, реализующая обмен с этой микросхемой, для чего дергающая программно ножками порта(ов). Для того, чтобы было просто менять ножки, к которым подключена микросхема, нужно обозвать их мнемониками через #define, и при необходимости переобозвать. Проблема появляется, если таких микросхем больше одной, и каждая из них подключена к своему набору ножек МК. Как изменить функцию так, чтобы можно было одной функцией связываться (последовательно, не одновременно) с несколькими микросхемами? То есть функция должна принимать в качестве параметра адрес порта (собственно, проблема) и номер бита (это просто). Для 24-х ПИКов такое написалось очень просто – там вполне понятная адресация, и с портом можно прекрасно работать через указатели. А вот с AVR…