UNIVERSITA' DEGLI STUDI DI PAVIA - Robotica
UNIVERSITA' DEGLI STUDI DI PAVIA - Robotica
UNIVERSITA' DEGLI STUDI DI PAVIA - Robotica
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
5.6.8 pxc<br />
Il modulo pxc.h esporta le procedure necessarie all’interfacciamento con il<br />
frame-grabber Imagenation PXC200.<br />
Per l’utilizzo di tale frame-grabber è stato predisposto un apposito driver. Il<br />
suo utilizzo è molto semplice, e prevede i seguenti passi:<br />
• richiamare la funzione PXC_Initiate() per effettuare il setup della scheda.<br />
Questa funzione esegue le seguenti operazioni:<br />
- inizializzazione del bus PCI al quale è connessa la scheda della<br />
Imagenation;<br />
- abilitazione la scrittura in memoria tramite DMA;<br />
- controllo della presenza del video input;<br />
- creazione del CAB che contiene l'immagine catturata dal grabber;<br />
- scrittura nei registri della scheda per indicare al frame-grabber le<br />
caratteristiche desiderate per l'immagine, come il fattore di scala, le<br />
temporizzazioni e le dimensioni, sia orizzontali che verticali, inoltre<br />
inserisce l'indirizzo dell'handler nel canale DMA;<br />
- infine, c'è l'inizializzazione della coda nella quale sono memorizzati<br />
i puntatori ai task che necessitano della lettura dal CAB.<br />
La PXC_Initiate() accetta come parametro il numero di processi che si<br />
prevede debbano utilizzare concorrentemente il CAB. Questo valore va<br />
incrementato di 1 per il corretto funzionamento del driver. La funzione<br />
restituisce il periodo di attivazione minimo dei task che vengono inseriti<br />
nella coda.<br />
• Per attivare l'handler occorre richiamare la funzione PXC_Start().<br />
• Per poter accedere al CAB contenente le immagini è necessario creare<br />
un task (si veda l'appendice A per le modalità di creazione) aperiodico,<br />
con criticità HARD e con tempo minimo di interarrivo pari a un<br />
multiplo intero del periodo di attivazione restituito da PXC_Initiate().<br />
140