From: Kirill 'B. K' K. <kk...@po...> - 2004-06-18 03:12:46
|
>> HAL should make I/O through lots of peripherals possible. >> The parallel port should, IMHO, be considered only one >> of many possible I/O paths, I am a fan of Cypress' AN2131 USB chip (as far as a concept of fandom of an integrated circuit goes :)). This is an 8051 clone with hardware USB peripheral implementation. Whenever I need a computer to do digital I/O, I throw one of these in. I ordered a lot of PCBs for them - with EEPROM and a voltage regulator it forms a complete unit - and cook a few at once when my stash ends. Realtime I/O is not possible with these, since there may be as large as 2ms gap between 2 successive USB transmissions (if one comes in the beginning of the 1ms "window" and another is scheduled closer to its end). However, the controller is not dumb enough not to drive[1] a few steppers with some the help from the CPU. While that can certainly be implemented within the HAL framework, the thing, with some tweaking of thread priorities and some luck, may quite easily be used without a real-time core. Sound processing, for one example, has already became practical with audio buffer sizes of 1.5ms - and a user-mode thread feeds an audio card with these buffers uninterrupted. There are a few commercially available boards with the chip ($80+) http://www.jged.com/web_pages/usbsimm.html http://www.devasys.com/usbi2cio.htm and some non-development arrangements, such as a USB-to-PS keyboard dongle adapter, in the range of $20, that I do not have links to. -kkm [1] I intended to write "intelligent enough to drive...", but that would rather be an assault on reality. |