Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.
Hi Dora i am sorry if i angered you but i am really new to coding. Btw the bulk of the code was written by my lecturer and i was suppose to implement the peak detection algorithm and calculate the heartbeat rate from there.And btw i was the one who wrote the logic. i have a few questions. first...
Hi Dora my full code is here.
I am using an optical sensor to detect BVP
I have implemented hardware filters to cancel out noise but interference in this case is false peak caused by a unstable amplitude of the signal which means most probably the person moved.
As for better header i mean that...
Hi Dora!
the purpose for(p<h+5) is basically because i do not want the sampling to jump to else and break out of the for loop when there is no signal therefore the +5 or -1. As for the Value why it is +5 or -1 is because i found it to be most effective to removing any other interference during...
Hi doraemon! Thank you so very much for replying to my post!!
I have written comments for my code shown below so that people can understand it now!!
As for the question on why (p>h-1), i did it so that there is a threshold to be reached before the calculations begin as opposed to putting (p>h)...
P= Old ADC0 value.
n= First peak time taken
a=Second peak time taken
v= Difference in time between the two peaks
b=Difference in time converted to seconds
f=Calculation for beats per minute
s=Counter for every 10ms overflow from timer0.
{
h= (ADC0>>4);
for(l=0; l<127; l++)
{...
i dont really understand the mechanics of how to use union guys and milan the title is correct what i am trying to achieve here is to get the number of overflows at different intervals from my timer interrupt.
void timer0_interrupt_init()
{
TMOD = 0x01;
// TR0 = 0;
//TL0 = 0xEF...
I need help on methods in which i can store 2 different values from my timer0 interrupt(number of overflows assigned to a single variable).
i have tried alot of different ways and i still cannot get it to work...
Please help me... Using Silicon Laboratory IDE interface.
Dear BigDog this code is intended to basically display the signal on a 128x64 LCD screen with a BPM indicator. I have so far got timer0 to run optimally but i still cant seem to get it to start and stop when i hit 2 peaks of the signal. What i want timer0 to do is just to calculate the time...
i have done most of the coding but the problem i am experiencing now is that after the first round of signal sensing, it does not refresh and restart the process. The problem could be from the for(;;) loop because i tried leaving it out and it worked. but i need the for loop for my calculation...
Hi sorry to bump this thread after so long but i need help with a final year project. So basically i am using C8051340F micro controller and i use silicon Laboratories ide to do a little programming. Was wondering how to calculate the Freq/Bpm and display it on 128x64 pixels lcd.. Thanks for...
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.