我非常熱衷於爲微控制器(如PIC,Atmel等)編寫設備驅動程序。 由於我是這個控制器編碼區的新手,我只想知道爲控制器編寫設備驅動程序是否與我們爲linux(或任何其他操作系統)編寫的相同?爲微控制器編寫設備驅動程序(任何)
也可以任何人建議一些在線設備驅動程序建設教程相同..?
感謝,
我非常熱衷於爲微控制器(如PIC,Atmel等)編寫設備驅動程序。 由於我是這個控制器編碼區的新手,我只想知道爲控制器編寫設備驅動程序是否與我們爲linux(或任何其他操作系統)編寫的相同?爲微控制器編寫設備驅動程序(任何)
也可以任何人建議一些在線設備驅動程序建設教程相同..?
感謝,
如果您正在考慮開發設備驅動程序以將您的設備與主機連接(可能使用USB),那麼現在大多數微控制器都實現了依賴本機驅動程序的默認類。
一個具體的例子:
如果使用PIC18F4555,您可以使用常規的HID(人機接口設備)windows驅動程序與微控制器進行通信(給你正確實現它)。不需要開發任何驅動程序。
寫作的MCU設備驅動程序是一個自寫它的操作系統非常相去甚遠。大多數MCU都沒有運行它們的操作系統。通常你最終會編寫一些低級的中斷服務程序(ISR)並填充緩衝區,以至於你的應用軟件最終會清空。您不必適應任何O/S定義的設備驅動程序範例。您基本上必須閱讀您想要連接的設備的數據表,並通過它可能使用的任何接口(例如SPI,I2C,UART等)讀寫它的內存。最終,設備驅動程序應該向應用程序軟件提供直觀的函數調用。
如果您使用的是像atmega這樣的AVR MCU,那麼您可以使用vusb(https://www.obdev.at/products/vusb/index.html)用於那些沒有任何HID的MCU,並通過將USB的D +和D-引腳連接到數字I/O端口來處理中斷的MCU。 atmegaU2軟件包有自己的USB通信端口和HID。
你也可以使用LUFA(http://www.fourwalledcubicle.com/LUFA.php) – 2017-09-19 18:32:39