Programme pour le calcul et l'affichage de la fréquence cardiaque [Résolu]

lipooo 4 Messages postés vendredi 25 septembre 2009Date d'inscription 5 avril 2012 Dernière intervention - 3 avril 2012 à 15:09 - Dernière réponse : lipooo 4 Messages postés vendredi 25 septembre 2009Date d'inscription 5 avril 2012 Dernière intervention
- 5 avril 2012 à 16:02
bonjour tout le monde,
j'ai un programme en C
qui permet de calculer la fréquence cardiaque et l'affiche sur un lcd(2*16)


const char TIMER_START_VALUE = 8;
const char TIMER_RELOAD_VALUE = 125;
char sec, updateDisplay, reload;
long bat;
char bat_str [] = " ";
// LCD module connections
sbit LCD_RS at RD2_bit;
sbit LCD_EN at RD3_bit;
sbit LCD_D4 at RD4_bit;
sbit LCD_D5 at RD5_bit;
sbit LCD_D6 at RD6_bit;
sbit LCD_D7 at RD7_bit;
sbit LCD_RS_Direction at TRISD2_bit;
sbit LCD_EN_Direction at TRISD3_bit;
sbit LCD_D4_Direction at TRISD4_bit;
sbit LCD_D5_Direction at TRISD5_bit;
sbit LCD_D6_Direction at TRISD6_bit;
sbit LCD_D7_Direction at TRISD7_bit;
// End LCD module connections
}
void main() {
TrisB = 0xFF;
TrisC = 0;
PortC = 0;
TrisD = 0;
PortD = 0;
ADCON0 = 0;
ADCON1 = 0x0F;
Lcd_Init(); // Initialize LCD
Lcd_Cmd(_LCD_CLEAR); // Clear display
Lcd_Cmd(_LCD_CURSOR_OFF);// Cursor off
LCD_Out(1,1,"Heartbeats :"); // Write text in first row
updateDisplay 0; sec 0; reload = 0; bat = 0;
INTCON = 0xC0; // Set GIE, PEIE
INT0IE_bit = 1;
TMR0ON_bit = 0; // turn off the timer during setup
TMR0IE_bit = 1; // Enable TMRO interrupt
T08BIT_bit = 1; // Enable 8 bit control (as opposed to 16-bit)
T0CS_bit = 0; // use internal clock to trigger timer to count
PSA_bit = 0; // Use the prescaler to slow the timer down
T0PS0_bit = 1;
T0PS1_bit = 0;
T0PS2_bit = 1;
TMR0L = TIMER_START_VALUE;
reload = TIMER_RELOAD_VALUE;
TMR0ON_bit = 1; // start the timer
while (1) {
if (UpdateDisplay == 1) {
UpdateDisplay = 0;
WordToStr (bat, bat_str); bat = 0;
LCD_Out(2,1,bat_str);
}
}
}
void Interrupt (void) {
if (INTCON.TMR0IF) {
TMR0L = TIMER_START_VALUE;
T0IF_bit = 0;
if(reload == 0) {
reload = TIMER_RELOAD_VALUE + 1;
sec = sec + 1;
if (sec == 15) {
updateDisplay 1; sec 0;
}
}
reload = reload - 1;
}
if (INTCON.INT0IF) {
bat bat + 1; INT0IF_bit 0;

}
}


la simulation est jointe si dessous.
un modéle simple pour un signal ECG,
la carte d'acquistion du signal contient un pic 16f877 et un emetteur tx433
qui assure la transmission des données vers un recepteur qui est connecté directement avec le pc par le RS232,
(carte de réception contien le rx433,un pic16f876,le max232 et le connecteur RS232),une interface graphique sera crée avec labview,
mon objectif est d'ajouter un programme au précédent permet la transmission du signal réel et son affichage,

les liens des simulations

la fréquence cardiaque
les cartes d'émission et réception avec leurs programmes
Afficher la suite 

Votre réponse

4 réponses

cptpingu 3788 Messages postés dimanche 12 décembre 2004Date d'inscription 21 mai 2018 Dernière intervention - 3 avril 2012 à 15:46
+3
Utile
Bonjour.

Quelle est la question précise ?
Sur quel point de ton code bloques-tu ?

(Je rappelle que l'on ne fournit pas de code, et qu'on ne fait pas la reflexion ou la recherche à la place de l'auteur. en revanche, on corrige des codes avec plaisir).

________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfolio http://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cptpingu
cs_louis14 788 Messages postés mardi 8 juillet 2003Date d'inscription 8 mars 2017 Dernière intervention - 5 avril 2012 à 08:39
+3
Utile
Bonjour,
Juste pour t'informer d'une personne qui travaille sur ce sujet :
http://www.codeproject.com/Articles/20995/ECG-Annotation-C-Library

Bon codage


louis
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_louis14
lipooo 4 Messages postés vendredi 25 septembre 2009Date d'inscription 5 avril 2012 Dernière intervention - 3 avril 2012 à 16:54
0
Utile
bon ma question est ; comment je peux transmettre le signal réel obtenue ?c'est a dire la transmission du signal vers le récepteur se fait point par point pour quelle soit durable,
Commenter la réponse de lipooo
lipooo 4 Messages postés vendredi 25 septembre 2009Date d'inscription 5 avril 2012 Dernière intervention - 5 avril 2012 à 16:02
0
Utile
merci infiniment louis
Commenter la réponse de lipooo

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.