Demodulate BMC-Signal using CCU4_Slice_Config app

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Not applicable
Hello,
I would like to demodulate a Biphase Mark encoded signal with an XMC1100.
The signal has a constant frequency of 2kHz. The binary value 1 is displayed as a transision within a period. The binary value 0 is displayed as full period.
my approach would be to define two events with CCU4_Slice_Config app -> capture. the first Event_0 started a timer when a rising edge occurred and Event_1 ends the timer.
The only problem is that the timer should be started again at the falling edge at the same time.

How can you realize something like that? can someone help me
0 Likes
2 Replies
Not applicable
Really nobody?
0 Likes
jferreira
Employee
Employee
10 sign-ins 5 sign-ins First like received
Hi,

Two alternatives:

1. You could assign the input signal to two input events, one that starts/clears the timer on both edges and the other one that captures also on both edges.
In the ISR triggered by the second one you get the pulse length and advance the state machine according to the pulse length.
I did not test if the timer value would be cleared before captured.

2. You could assign the input signal to the event doing the capturing. This one also triggers a service request. In the ISR you clear and restart the timer by software and you update the state machine perfoming the decoding using the measured pulse length.

Regards,
Jesus
0 Likes