资源简介
论文加上程序都挺有,稍微修改一下就业应用了。
代码片段和文件信息
#include
#define uchar unsigned char
#define uint unsigned int
#define tube P2
sbit pulse=P3^4;
sbit led_r=P3^7;
uchar code led[]={0xC00xF90xA40xB00x990x920x820xF80x800x90}; // 0~9 共阳
uchar data sec; // 索引值0——>led[0]
uchar count;
static uchar temp;
static uchar last;
uchar time=60; //60s 一分钟测脉搏
uchar cntiflag;
void Delay(uint i)//小于中断时间间隔50ms
{
uchar abc;
for(a=0;a for(b=0;b<10;b++)
for(c=0;c<248;c++);
}
void LedScan(uint t) //数码管显示
{
tube=0x80; //1管
P0=led[last/10] ;
Delay(t);
tube=0;
tube=0x40; //2管
P0=led[last%10] ;
Delay(t);
tube=0;
tube=0x10; //4管
P0=led[temp/10] ;
Delay(t);
tube=0;
tube=0x08; //5管
P0=led[temp%10] ;
Delay(t);
tube=0;
tube=0x02; //7管
P0=led[sec/10] ;
Delay(t);
tube=0;
tube=0x01; //8管
P0=led[sec%10] ;
Delay(t);
tube=0;
}
void Freq() //显示脉搏
{
last=temp;
temp=P1;
TL0=0;
}
void Int0()interrupt 1
{
sec=0;
count=0;
cnt=0;
led_r=1;
TL0=0;
TR0=1; //启动定时器T0
TR1=1; //启动定时器T
flag=1;
}
void Time1Int()interrupt 3 using 2
{
if(flag)
{
count++;
LedScan(1);
if(count==20)
{
sec++;
if(sec==time)
{
Freq();
flag=0;
led_r=0;
TR0=0;
}
count=0;
}
}
else LedScan(1);
}
void main()
{
EA=1; //打开总中断允许
EX0=1; //允许使用外中断
IT0=1; //选择负跳变来触发外中断
TMOD=0x17; //T1定时器 T0计数器 //TMOD D7 D6 D5 D4 D3 D2 D1 D0
TH0=0; //定时器T0的高8位赋初值 // GATE C/T M1 M0 GATE C/T M1 M0
TL0=0; //定时器T0的高8位赋初值 // 0 0 0 1 0 1 1 0
IP=0x01;
ET1=1; //定时器T1中断允许
TH1=0x3c; //定时器T1的高8位赋初值 装载50ms
TL1=0xb0; //定时器T1的高8位赋初值
while(1) //无限循环等待查询
{
while(TF0==0) //如果未计满就等待
{
if(pulse==0) //电平为0;
P1=TL0; //计数器TL0加1后送P1口显示
}
TF0=0; //计数器溢出后,将TF0清0
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2014-12-09 22:54 课程设计\
目录 0 2014-11-18 13:47 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\
文件 118468 2012-12-31 18:52 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\Last Loaded TimeCounter .DBK
文件 6419 2012-12-31 22:19 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\TimeCounter
文件 129947 2012-12-31 22:14 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\TimeCounter .DSN
文件 5597 2012-12-31 22:19 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\TimeCounter .LST
文件 7182 2012-12-31 22:19 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\TimeCounter .OBJ
文件 846 2014-11-18 13:46 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\TimeCounter .PWI
文件 2226 2012-12-31 22:19 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\TimeCounter .c
文件 8861 2012-12-31 22:19 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\TimeCounter.M51
文件 1341 2012-12-31 22:19 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\TimeCounter.hex
文件 40 2012-12-31 22:19 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\TimeCounter.lnp
文件 6706 2012-12-31 22:33 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\TimeCounter.plg
文件 104004 2012-12-31 22:33 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\TimeCounter.uvgui.Administrator
文件 100694 2012-12-31 21:30 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\TimeCounter.uvgui_Administrator.bak
文件 5603 2012-12-31 22:33 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\TimeCounter.uvopt
文件 13246 2012-04-16 18:29 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\TimeCounter.uvproj
文件 5599 2012-12-31 21:30 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\TimeCounter_uvopt.bak
文件 13027 2012-04-16 13:53 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\TimeCounter_uvproj.bak
文件 1753434 2012-12-31 22:30 课程设计\基于AT89C51单片机的智能脉搏测试仪设计\说明.bmp
文件 489046 2014-12-09 22:54 课程设计\基于AT89C51单片机的智能脉搏测试仪设计.doc
- 上一篇:VHDL习题及答案
- 下一篇:王道2019数据结构视频链接.txt
相关资源
- 基于单片机at89c51的电子琴proteus仿真
- AT89C51控制超声波
- AT89c51元件库
- AT89C51数字时钟
- AT89C51单片机温度控制系统
- AT89C51单片机在直流电机闭环调速系统
- 基于AT89C51单片机电子体温计设计.ra
- AT89C51的矩阵键盘、跑马灯和呼吸灯设
- at89c51单片机最小系统介绍
- 由AT89C51/55构成的温湿度自动监测系统
- AT89C51/55构成温湿度自动监测系统
- 基于AT89C51单片机的温度测控系统设计
- 基于AT89C51和LCD1602的电子时钟
- 基于51单片机的温湿度检测与报警系统
- AT89C51+DAC0832+LM324做的信号发生器包含
- AT89C51原件库
- 基于AT89C51的数字电子钟设计(附代码
- 脉搏测试仪——程序
- 基于单片机AT89C51的热水器控制仿真
- 基于AT89C51的单片机秒表课程设计
- 温度控制直流电机转速.zip
- 4x4矩阵开关控制数码管显示0-F
- AT89C51原理图
- 基于汇编程序的AT89C51单片机交通灯控
- 单片机控制系统设计
- Proteus_AT89C51最小系统+点亮一个LED
- 基于AT89C51的电子日历时钟完整版
- 基于AT89C51单片机和DS18B20的数字温度计
- AT89C51单片机写的74HC595驱动程
- 基于AT89C51的音乐盒(十分简单)
评论
共有 条评论