2009-02-23 1 views
1

У меня есть вопрос или лучший подход к подключению интерфейса во время выполнения или времени компиляции/ссылки. Для моих встроенных проектов драйверы устройств и I/O имеют интерфейсы, которые должны быть связаны (то есть склеены) с их соответствующими зависимостями интерфейса. Например, для драйвера аналоговых устройств требует интерфейса к драйверу дискретного вывода, с тем чтобы установить MUX и включить строки и интерфейс для этого выглядит как:Привязка требования к интерфейсу модуля во время выполнения или времени компиляции/ссылки, что лучше?

unsigned char (*SetDiscOutput)(unsigned short signalID, unsigned char state); 

В настоящее время я использую таблицу конфигурации, связывает требования к интерфейсу модуля с соответствующей зависимостью интерфейса, а затем во время выполнения конфигурация среды выполняет итерацию через этот список и назначает зависимости. Другим методом, к которому я пришел до сих пор, является использование файла конфигурации оборудования, который привяжет интерфейсы модуля к связанным с ними интерфейсам зависимостей, которые будут назначены во время компиляции/ссылки.

Какой будет лучший подход (pro/cons) друг к другу и, что более важно, более элегантный способ привязки этих зависимостей интерфейса.

Марк

ответ

1

Мне нравится MUX их с семафорами. Но это действительно зависит от того, будете ли вы использовать ОС, и если есть какой-то момент для ее доступности для изменений. Я сохранил его в программном обеспечении, чтобы разные версии встроенного оборудования могли запускать один и тот же код, только с разными настройками.

 Смежные вопросы

  • Нет связанных вопросов^_^