Thread: [libdc] External Trigger using GPIO
Capture and control API for IIDC compliant cameras
Brought to you by:
ddouxchamps,
gordp
From: Yahya C. <yca...@ma...> - 2010-06-07 15:55:26
|
Hi, I'm using libdc to control a Scorpion SCOR-20SOC. I'm working to get the camera to work with external trigger. What I gathered so far is, to use external trigger I'd need to at least do these things: 1. enable external trigger: dc1394_external_trigger_set_power() 2. configure trigger mode: dc1394_external_trigger_set_mode( , mode 0) // since I want to trigger on falling edge. 3. configure trigger source: dc1394_external_trigger_set_source ( , source_0) // since I want to use GPIO 0 (it's actually the default trigger pin) Please correct me if I've got anything wrong so far. I'm getting to the part where I actually ask a question: The direction of the GPIO pins needs to be configured, whether as input or output. Point Grey provides a facility to do that through its PIO_DIRECTION register (Pt Grey's implementation of DCAM's Optional Function CSRs). Based on my limited understanding of the library and its API, I think I can interact with these PIO CSRs through dc1394_set/ get_pio_register() functions. My question is: Do I need to set the PIO_DIRECTION value manually, using dc1394_set_pio_register() ? Or would calling dc1394_external_trigger_set_mode() + dc1394_external_trigger_set_source() automagically set the direction of the pin for me? I looked at control.c and nothing in there seemed to indicate so, but then again I'm only a new user. Thanks in advance for your help! Yahya Cahyadi |
From: Yahya C. <yca...@ma...> - 2010-06-15 16:00:39
|
Answering my own question here, in case there are other poor souls out there also wondering about this: (Disclaimer: I don't know if all the steps are necessary. I may be doing more than what's needed. But basically following these steps works for me) Yes, I need to set the PIO_DIRECTION for the input pin, using dc1394_set_pio_register. So basically setting up the camera for external triggering involves: - dc1394_set_pio_register - dc1394_external_trigger_set_source - dc1394_external_trigger_set_mode - Keep polling control register 62Ch (Software Trigger register) until the camera is ready. Yahya Cahyadi On Jun 7, 2010, at 10:55 AM, Yahya Cahyadi wrote: > Hi, > > I'm using libdc to control a Scorpion SCOR-20SOC. I'm working to get > the camera to work with external trigger. > What I gathered so far is, to use external trigger I'd need to at > least do these things: > > 1. enable external trigger: dc1394_external_trigger_set_power() > 2. configure trigger mode: dc1394_external_trigger_set_mode( , mode > 0) // since I want to trigger on falling edge. > 3. configure trigger source: dc1394_external_trigger_set_source ( , > source_0) // since I want to use GPIO 0 (it's actually the default > trigger pin) > > Please correct me if I've got anything wrong so far. > > > I'm getting to the part where I actually ask a question: > > The direction of the GPIO pins needs to be configured, whether as > input or output. > Point Grey provides a facility to do that through its PIO_DIRECTION > register (Pt Grey's implementation of DCAM's Optional Function CSRs). > Based on my limited understanding of the library and its API, I > think I can interact with these PIO CSRs through dc1394_set/ > get_pio_register() functions. > > My question is: > > Do I need to set the PIO_DIRECTION value manually, using > dc1394_set_pio_register() ? > Or would calling dc1394_external_trigger_set_mode() + > dc1394_external_trigger_set_source() automagically set the direction > of the pin for me? > I looked at control.c and nothing in there seemed to indicate so, > but then again I'm only a new user. > > > Thanks in advance for your help! > Yahya Cahyadi > ------------------------------------------------------------------------------ > ThinkGeek and WIRED's GeekDad team up for the Ultimate > GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the > lucky parental unit. See the prize list and enter to win: > http://p.sf.net/sfu/thinkgeek-promo_______________________________________________ > Mailing list for libdc1394-devel > lib...@li... > https://lists.sourceforge.net/lists/listinfo/libdc1394-devel |