Створення діагностичної програми засобами пакету WinDriver - Розробка програми керування PCI пристроєм в операційній системі Windows

Перед написанням драйверу доцільно переконатись чи працює фізичний пристрій як це очікувалось. Майстер можно використати для такої перевірки пристрою. Майстер створює текстовий файл, в якому фіксуються всі дії, що надає можливість детально проаналізувати функціонування пристрою.

Визначення та перевірка ресурсів.

Для "Plug-and-Play" пристроїв Майстер автоматично визначає наступні ресурси :

= діапазон вводу/виводу

= діапазон памяті

= переривання

pci ресурси

Рис 4. PCI ресурси.

Для пристроїв, що не підтримують стандарт "Plug-and-Play", ресурси задаються вручну.

Вручну можна також задати регістри, як це відображено на рис.5

регістри

Рис 5. Регістри.

Якщо обрано опцію автоматичного читання (Auto Read) , такі регістри будуть зчитуватись автоматично при виконанні будь-яких операцій читання/запису, а результати зчитування будуть зафіксовані в файлі протоколу.

Рис 6. Демонструє процедуру запису/читання даних в порти вводу/виводу та пам'ять.

читання/запис в пам'ять та порт

Рис 6. Читання/запис в пам'ять та порт.

Для перевірки переривань необхідно обрати в лівому вікні переривання та натиснути кнопку прослуховування переривань ("Listen to interrupts").

переривання

Рис 7. Переривання.

Для переривань по рівню, традиційних PCI переривань, потрібно визначити регістр статусу, та зв'язати з ним команду читання/запису для підтвердження (скидання) переривання. Це треба зробити перед початком прослуховування переривань, інакше може відбутися зависання ОС.

На Рис 8. демонструється процедура визначення команди підтвердження переривання для регістру "INTCSR".

команда передачі для переривання по рівню

Рис 8. Команда передачі для переривання по рівню.

Генерування коду драйверу.

Генерування коду драйверу виконується або обранням іконки "Generate Code" панелі інструментів, або відповідного пункту меню.

Діалогове вікно опцій пропонує обрати мову та середовище розроблення, як це показано на Рис 9.

опції генерування коду драйверу

Рис 9. Опції генерування коду драйверу.

Натисніть кнопку "Next" для вибору додаткових опій :

Керування подіями режиму Plug-and-Play, та управління живленням, а також Kernel PlugIn для генерування коду з використанням функцій ядра. Перед використанням Kernel PlugIn на комп'ютері повинен бути встановлений пакет розроблення драйверів DDK (Driver Development Kit).

додаткові опції генерування коду драйверу

Рис 10. Додаткові опції генерування коду драйверу.

Збережіть в разі необхідності проект, та натисніть ОК для запуску обраного середовища розроблення.

Отриманй код використовується як початковий для створення драйверу. Вподальшому його можна модифікувати у відповідності до специфічних функцій пристрою.

Похожие статьи




Створення діагностичної програми засобами пакету WinDriver - Розробка програми керування PCI пристроєм в операційній системі Windows

Предыдущая | Следующая