Monitor pulsu serca assembly

0

Drodzy forumowicze,

Jestem studentem pierwszego roku elektorniki. Naszym zadaniem w tym semestrze jest stworzenie monitora serca.

Problem jest taki ze doszlismy do pewnego momentu z projektem z ktorego ani cholera nie mozemy posunac dalej.

PIC ktory uzywamy to 16F870. Dostaje on sygnal na wejsciu RC0 . Sygnal jest rowny pulsowi. Kazdy syngal to puls.

Czy ktokolwiek zna assembly na tyle zeby pomoc nam skonczyc projekt ?

Z gory dzieki

0

Czemu nie napiszecie tego w C, jeśli asembler sprawia wam problemy?

0

wymogi projektu niestety ... wykladowca na tyle do kitu ze poswiecil nam jedyne 30 minut na probe wytlumaczenia.

problem jest taki ze nie mamy pojecia jak pogodzic to ze PIC liczy czas i pingi na RC0 . NIe wiemy jak to w kodzie ujac . Rowniez nie jazymy kiedy program przerabia zawarotsc interupt , w ktorym momencie.

0

kiedy program przerabia zawarotsc interupt

interrupt - przerwanie - np. timera powoduje przerwanie aktualnie wykonywanego programu, wykonanie procedury obsługi przerwania i powrót do normalnego wykonywania programu (a normalne wykonywanie programu odbywa się w twoim przypadku w okolicach pętel loop_clear, sensorloop1 i sensorloop2).

Przerwanie inicjowane jest z zewnątrz, np. w przypadku timera po upływie określonego czasu.

0

w takim razie jakie zmiany trzeba wprowadzic w program zeby dzialal tak :

kiedy nie ma sygnalu z zewnatrz ( brak palca na sensorze ) nie robi nic . Kiedy puls jest wykryty wlacza sie timer ktory liczy 5 sekund. PO 5 sekundach przechodzi do kolejnej czynnosci. Gdzies w programie jest zapisana ilosc pulsow, ta ilosc pulsow jest przeliczna na tetno czyli ilosc pulsow w przeciagu 5 sekund * 12 . Czy w takim razie interrupt to odmierzanie tych 5ciu sekund ? czy jak najlepiej wykorzystac kod i w takim razie gdziew kodzie sa bledy lub niepotrzebne skladnie. Z gory bylbym wdzieczny za jakokolwiek pomoc.

0

Koncepcje są dwie. Albo
a. zliczasz sygnały w jednostce czasu, wtedy timer pracuje w trybie compare/overflow i generuje przerwania np. co sekundę, 5 sek. czy ile tam jeszcze (czyli przerwanie od timera oraz zliczanie przerwań od sygnału) albo
b. timer pracuje w trybie capture i odmierza czas pomiędzy sygnałami na odp. wejściu (o ile ten timer w tym PICu to może. Obstawiam, że może). Wtedy masz przerwanie od capture oraz ew. overflow. Jak lepiej - jak Ci wygodniej.

Pamiętaj tylko, że musisz mieć odp. ukształtowany sygnał wejściowy, prosty komparator tu nie zadziała, sygnał pulsu ma dodatkowe załamki.

BTW - obsługa LED 7-seg jest o wiele prostsza od LCD, nie lepiej było taki wyświetlacz wykorzystać?

0

Uklad elektroniczny mamy opracowany co do joty , jakby to wykladalo w kodzie w takim razie ? Moze z flowchart bardziej to zrozumiem ...

1 użytkowników online, w tym zalogowanych: 0, gości: 1