简单好玩的心率测量仪.docxVIP

  • 8
  • 0
  • 约4.17千字
  • 约 8页
  • 2016-09-15 发布于重庆
  • 举报
简单好玩的心率测量仪

简单好玩的心率测量仪 发布: HYPERLINK /index.php?m=memberc=indexa=memplaceusername=%E7%94%B5%E5%AD%90diy 电子diy??????来源:爱折腾??????发布时间:2013-09-09 16:32:53 标签:? HYPERLINK /index.php?m=contentc=taga=liststag=%E5%BF%83%E7%8E%87%E8%AE%A1 心率计 成本:20元 人气:2500 器件:PIC16F628A MCP602 难度:1 得分:539分   这个小东西简单而好玩,可以做为单片机入门的一个课业设计。   将你的食指轻轻地放在传感器上,就能看到LED指示灯随着你的心跳而闪动,15秒钟以后,还能在数码管上显示你当前的心率。 核心部分在传感器上,这里用的是一套红外对管。 人体指尖的动脉比较发达,当动脉血管随心脏周期性收缩与舒张时,血管中的血液容积也会发生变化。 这时红外接收探头便能采集到的相应的光脉冲信号,经过去噪和放大后送到单片机,进行运算处理,便得到了心率数据。 采集部分的原理图 运算与显示部分的原理图 单片机代码 /* ? Project: Measuring heart rate through fingertip ? Copyright @ Rajendra Bhatt ? January 18, 2011 ? PIC16F628A at 4.0 MHz external clock, MCLR enabled */ sbit IR_Tx at RA3_bit; sbit DD0_Set at RA2_bit; sbit DD1_Set at RA1_bit; sbit DD2_Set at RA0_bit; sbit start at RB7_bit; unsigned short j, DD0, DD1, DD2, DD3; unsigned short pulserate, pulsecount; unsigned int i; //-------------- Function to Return mask for common anode 7-seg. display unsigned short mask(unsigned short num) { ?switch (num) { ?case 0 : return 0xC0; ?case 1 : return 0xF9; ?case 2 : return 0xA4; ?case 3 : return 0xB0; ?case 4 : return 0x99; ?case 5 : return 0x92; ?case 6 : return 0x82; ?case 7 : return 0xF8; ?case 8 : return 0x80; ?case 9 : return 0x90; ?} //case end } void delay_debounce(){ ?Delay_ms(300); } void delay_refresh(){ ?Delay_ms(5); } void countpulse(){ ?IR_Tx = 1; ?delay_debounce(); ?delay_debounce(); ?TMR0=0; ?Delay_ms(15000);? // Delay 1 Sec ?IR_Tx = 0; ?pulsecount = TMR0; ?pulserate = pulsecount*4; } void display(){ ? DD0 = pulserate%10; ? DD0 = mask(DD0); ? DD1 = (pulserate/10)%10; ? DD1 = mask(DD1); ? DD2 = pulserate/100; ? DD2 = mask(DD2); ? for (i = 0; i=180*j; i++) { ??? DD0_Set = 0; ??? DD1_Set = 1; ??? DD2_Set = 1; ??? PORTB = DD0; ??? delay_refresh(); ??? DD0_Set = 1; ??? DD1_Set = 0; ??? DD2_Set = 1; ??? PORTB = DD1; ??? delay_refresh(); ??? DD0_Set = 1; ??? DD1_Set = 1; ??? DD2_Set = 0; ??? PORTB = DD2; ??? delay_refresh(); ??? } ? DD2_Set = 1; } void main() {

文档评论(0)

1亿VIP精品文档

相关文档