1. 关于用一个51单片机对脉冲计数的程序
这是刚编的程序!你相应的把计数按钮换成红外接收对管来作为计数按钮,低电频计一次数!就是说平、P3.0要从高变为地就记一次数!我没有用过红外对管所以只能说这么多了!我用的是8951,引脚一样的!PROTEUS已经仿真过了!
start:mov 50h,#00h
mov 51h,#00h
mov 52h,#00h
mov r1,#00h
acall main
jnb p3.1,aa
sjmp start
aa:jNb p3.0,bb
jnb p3.2,ll
acall main
sjmp aa
bb:acall nbcd
acall main
inc r1
cjne r1,#100,ww
sjmp mm
WW:jb p3.0,aa
acall main
sjmp ww
ll: jnb p3.1,aa
call main
sjmp ll
mm:mov a,#0feh
mov p1,a
sjmp start
nbcd:mov a,52h
add a,#1
da a
mov 52h,a
anl a,#0fh
mov 51h,a
mov a,52h
swap a
anl a,#0fh
mov 50h,a
ret
main:mov r0,#50h
mov r3,#01h
cc :mov a,r3
mov p2,a
mov a,@r0
mov dptr,#tab
movc a,@a+dptr
mov p0,a
mov a,r3
acall delay
jb acc.1,dd
rl a
mov r3,a
inc r0
ljmp cc
dd:ret
tab: db 0c0h,0f9h,0a4h,0b0h,99h
db 92h,82h,0f8h,80h,90h
ret
delay:mov r7,#0fh
d1:mov r6,#0fh
dl6:djnz r6,dl6
djnz r7,d1
ret
end
2. 求51单片机1秒钟脉冲计数C语言程序
单片机的系统时间为晶振频率的12分之一,如果晶振是12兆赫兹,那么单片机最小系统时间就是1us,所以可以用_nop_();指令达到精确延时,这条语句执行1次系统时间,具体的网络下就行了。
至于你说的1s,时间比较长,不适合用定时器,那么可以用嵌套循环语句,for、while、do while,要注意循环时使用不同的变量类型,所消耗的时间也不同。网络下proteus,这个是能将keil生成的c工程文件进行软件仿真的一个软件,和multisim一样很简单,里面有示波器,用示波器看仿真时间,自己用循环和_nop_()指令凑1秒出来就行了
3. 脉搏计数器的程序(用C语言编写程序)
#include <reg51.h>
unsigned char i,j,t,m,DelayTime,DispBuf[3];
unsigned int n,mb;
unsigned char code
BitTab[3]={0xf7,0xef,0xdf};//位驱动码
unsigned char code
DispTab[10]={0x81,0xcf,0x92,0x86,0xcc,0xa4,0xa0,0x8f,0x80,0x84};//字形码
sbit P3_0=P3^0;
void delay(DelayTime);
main() //主程序
{
TMOD=0x01; //定时器T0工作于方式1
TH0=0xec;
TL0=0x78; //T0定时时间为5ms
IE=0X83; //开中断
IT0=1; //外部中断0为边沿触发方式
TR0=1; //开定时器T0
for(;;) //脉搏指示灯控制
{
if(P3_0==0)
{
delay(200);
P3_0=1;
}
}
}
external0() interrupt 0//外部中断服务程序
{
P3_0=0; //点亮指示灯
if(n==0)
mb=0;
else
mb=12000/n; //计算每分钟脉搏数
DispBuf[2]=mb%10;//取个位数
mb=mb/10;
DispBuf[1]=mb%10;//取十位数
DispBuf[0]=mb/10;//取百位数
n=0;
}
Timer0() interrupt 1//定时中断服务程序
{
TH0=0xec;
TL0=0x78;
t=BitTab[j];//取位值
P3=P3|0x38;//P3.3-P3.5送1
P3=P3&t; //P3.3-P3.5输出取出的位值
t=DispBuf[j];//取出待显示的数
t=DispTab[t];//取字形码
P1=t; //字型码由P3输出显示
j++; //j作为数码管的计数器,取值0-2,显示程序通过它确认显示哪个数码管
if(j==3)
j=0;
n++;
if(n==2000)//10秒钟测不到心率,n复位
n=0;
}
void delay(DelayTime)//延时子程序
{
for(;DelayTime>0;DelayTime--)
{
for(i=0;i<250;i++)
;
}
}
4. 哪位大神有Pulse Sensor脉搏传感器51单片机的程序,有的请发我一份,1101551373@qq.com,不胜感激!!
1、节气门位置传感器
作用:节气门位置传感器是监测节气门开启角度的大小,确定怠速,全负荷及加减速工况,以实施与节气门开度状态
相对应的各种喷油量控制。失效影响:怠速忽高忽低,或造成飞车现象。
2、进气门压力传感器
作用:进气压力传感器是提供发动机负荷信息,即通
遇对进气管的压力测量,间接测量进入发动机的进气量,再通过内部电路使进气量转化成电信号提供给电脑。失效影响:造成发动机不易起动,或怠速不稳。
3、进气温度传感器
作用:提供空气温度信息用于修正喷油量和点火正时。 失效影响:怠速偏低,易熄火。
4、曲轴转角传感器
作用:是提供转速和曲轴相位信息,为喷油正时和点火正时提供参照点。失效影响:发动机不能起动或起动后发动机突然熄火。
5、冷却液温度传感器
作用:是监测发动机冷却液温度,将之转换为电压信号传送到电脑,ECU根据此信号来控制喷油量,点火正时和怠速控制。 失效影响:怠速偏低。
6、氧传感器
作用:是提供混合器浓度信息,用于修正喷油量,实现对空燃比的闭环控制,保证发动机实际的空燃比接近理论空燃比的主要元件。 失效影响:怠速不稳,耗量过大。
7、爆震传感器
作用:是提供爆震信息,用于修正点火正时,实引爆震闭环控制。 失效影响:当爆震将要发生前无法提供爆震信点,电脑接收不到信号“峰值”不能减少点火提前角,而发生爆震。
8、三元催化器
作用:三元催化器装在排气管中的消声器前,可同时降低尾气中三种污染物(一氧化碳CO、未燃碳氧化合物HC和氧化物Nox的含量,发动机的空燃比接近理论空燃比时,三元催化器转化效率最高,当有害气体的300℃~800℃的高温通过三元催化器中心经附在陶瓷单体上的贵重催化发生氧化和还原反应,转化为无害气体。 失效影响:排出的废气不能达标。
5. 求单片机,c语言大神,用51单片机计一分钟的脉冲数(用于测量一分钟脉搏)的单片机c语言程序
仿真实例,数字频率计(是一秒计频率) ,改成一分钟 就可以了。
6. 单片机的主程序,关于脉搏测量计数的,有人可以帮我解释下这段程序么。
主函数首先初始化定时器,然后调用计数程序,然后显示屏输出,你应该是做毕业设计的吧
7. 求用压电传感器和51单片机做脉搏测量计数的电路51点偏激
测脉搏的话,是中医的设备,哈哈,中医早该全面电子诊断了
应该是尺寸关3个点,是不?选用合适的传感器,注意三点的位置和空间大小,经过放大,输入到单片。
看医生把脉都没等一分钟这么久吧,估计是测瞬时脉搏,建议脉搏数除以时间
显示的话,三位数显示脉搏应该没问题。
--------------------------------------
设计了一种基于压电传感器以AT89S51单片机为核心构成的简易便携式电子脉搏计。其设计思路是用压电传感器把待检测对象的脉搏跳动转变成电信号,但是由于信号比较微弱,需要经过放大整形后才可以得到规则的脉冲波形。放大电路采用三运放高共模抑制比放大电路,将传感器的微弱信号放大。放大后的信号采用一阶低通滤波电路进行整形除去杂散信号,然后经过单片机定时计数后通过译码电路就可以从数码管直接读出被测对象的脉搏数了。定时由基准时间产生电路完成,它是通过555集成电路构成一个单稳触发器来实现的。AT89S51单片机构成的控制电路在软件的作用下控制脉搏信号放大、整形和倍频后进入计数器的时间。该便携式电子脉搏计优点是制作简单,使用元器件少,工作稳定可靠,显示直观,误差不大于1%,成本低廉且能节电。
-------------------------------
以上引用《便携式电子脉搏计的设计》,你可以网上查查
8. 关于51单片机脉搏的编程语言
不是写的很清楚么? timecount 是50ms计数(如果timecount = 1 总时间间隔就是1*50 =50ms timecount = 2 总时间间隔就是 2*50 = 100ms 依次类推),每隔50ms timecount 加1。 TH0 TL0是定时器的得计数寄存器的高8位和低8位,你要结合具体mcu的硬件来看了。
9. 基于51单片机的脉搏测量仪有人做过吗
[3]单片机pulse sensor 测脉搏心率测体温系统
实现功能:
1、通过pulse sensor 测试脉搏(其他团队用红外反射管方案设计的比较多)
本人掐表测试结果为74,传感器稳定情况下测试结果为73、72、74 等。
2、金属DS18B20 温度传感器测体温精确到0.1 度
3、(扩展功能)如需电脑上位机将心跳图显示以及BMP 显示方案的
☆已作出的实物优酷视频演示地址:
单机版:http://v.youku.com/v_show/id_XMTUyMzIxMjMyOA==.html
无线版:http://v.youku.com/v_show/id_XMjUzNDIwNTg0MA==.html
PCB 板+安卓蓝牙接收:http://v.youku.com/v_show/id_XMjY4NTc5NDc0NA==.html
10. 51单片机c语言脉冲计数并显示程序
TMOD=0x05;
TH0=0;TL0=0;
TR0=1;
while(1)
{
a=TH0*256+TL0;
display(a);
}