okTriggerOutEventFunction


#1

Hi Jake,

I’m trying to use the okCEventHandler functionality but when I put a breakpoint in my OnTrigger60 function, it seems it’s never invoqued (“m_xem->UpdateTriggerOuts” is called in “OnUpdateTimer” (PipeTest.cpp).

However if I try a “if (m_xem->IsTriggered(0x60, 0xff)) {” in “OnUpdateTimer” (PipeTest.cpp), there the trigger is recognized properly.

Please can you let me know what I’m doing wrong ?

Many thanks in advance.

Patrick.

PS: I tried to download FrontPanel 1.0.3 to see if I get this problem as well, but couldn’t get through.

  • Verilog

wire [7:0] btn;
assign btn = {4’b0000, ~button};
assign ep60trig = ~(btn & 1);

okTriggerOut ep60 (
.ti_clk(ti_clk), .ti_control(ti_control), .ti_data(ti_data),
.ep_addr(8’h60), .ep_clk(ti_clk), .ep_trigger(ep60trig));

  • PipeTest.cpp

void MainFrame::Initialize() {

ConnectHandler(0x60, okEVT_TRIGGEROUT, (okEventFunction) (okTriggerOutEventFunction) &MainFrame::OnTrigger60);
}

void MainFrame::OnTrigger60(okCTriggerOutEvent& event) {

}


#2

Did you call okCUsbXEM::AddEventHandler() ?

ConnectHandler is done within your subclass of oKCEventHandler so that it knows which function to call. The okCUsbXEM instance, however, needs to know which okCEventHandlers to call.


#3

You’re now in the “Registered Customers” group and can access software download attachments.


37253.jpg (15.5 KB)


#4

Thanks Jake for both items.
Patrick.