Home/Support/Support Forum/Rabbit BL2600 hardware interrupt
Welcome to Digi Forum, where you can ask questions and receive answers from other members of the community.

Rabbit BL2600 hardware interrupt

0 votes
Hello forum

I am new to the Rabbit SBC world. I have a very simple application, but high speed. I have a series of pulses coming into a single DI and I need time between the pulses. The time between pulses will vary randomly between 200 and 5000us. The pulses will come in groups of 4 to 10 pulses. The pulse width is around 50us.

I was planning to use the DI to generate a hardware interrupt and then simply read the system clock in the ISR. When all the pulses are read there is some other processing to be done which could be handled in a task outside of the ISR.

As I am new to the Rabbit I was hoping someone can advise me if this is doable. I'm planning to use a BL2600 series SBC. From the SBC specifications it seems pretty straight forward.

Thanks in advance for any help!
asked Jul 28, 2016 in Rabbit Software by kevinpw New to the Community (2 points)

Please log in or register to answer this question.

3 Answers

0 votes
The RTC won't have enough resolution for what you want to do -- it's a 48-bit counter with a resolution of 1/1024 second.

I'd recommend looking at the documentation for the BL4S100 or BL4S200 series SBCs. They're newer products, using an updated compiler, and include an advanced I/O processing chip called "RIO". I don't know all of the capabilities of that chip, but the documentation should allow you to determine if it meets your requirements.

I know that it has pulse counting capabilities for sure, and I think it can measure pulse width as well. You might want to download and install Dynamic C 10.72A, then look at the files in Samples/BL4S1xx/DIO to learn about pulse capture capabilities.

If this is some serial protocol, like IrDA or HDLC, the Rabbit's UARTs might be able to decode it for you.
answered Aug 2, 2016 by TomCollins Veteran of the Digi Community (2,382 points)
0 votes
Thanks for the info.

I researched the RIO on the BL4S series and you are correct. the RIO has pulse capture and timing capabilities. The function is timed off the multiples of the system clock, so micro-second resolution is possible.

I have purchased a BL4S120 & demo board to try this out.

The application is actually a very old (late 80's era) pre-barcoding data entry technology. My client has a system with a custom h/w board running on a PC-AT ISA card. The system is obsolete and long since not supported, but they need to maintain the functionality.

Thanks again for your help.
answered Aug 4, 2016 by kevinpw New to the Community (2 points)
0 votes
If anyone has any experience with the RIO pulse width capture capabilities, I would be grateful of any advice.
answered Aug 4, 2016 by kevinpw New to the Community (2 points)