C application for parallel communication with direct memory access -
i'm having problem parallel connection i've got establish using dma (direct acces memory).
i've got write characters parallel port given address, through c application. know pio access, there _inp/_outp functions, don't know how manage direct memory access parallel communication.
does know how should or has links (i couldn't find after long research on web
this not can answered generically.
dma access determined either dma controller (in old pc's), or using "bus mastering" (pci onwards). either of these solutions requires access relevant hardware manuals device working (and dma controller, if applicable).
in general, principle works this:
- reserve piece of memory (dma buffer) device store data in.
- configure device store data in said region (remember in cases, dma happens on physical addresses, opposed virtual addresses windows or linux uses).
- when device has stored requested data, interrupt fired, software responsible device takes interrupt , signals higher level software data ready, , (perhaps) reprograms device start storing data again (either after copying dma buffer someplace else, or assigning new dma buffer).
Comments
Post a Comment