• 大小: 591KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-19
  • 语言: 其他
  • 标签: 报告  程序  仿真  

资源简介

单片机课程设计--数字温度计【报告+程序+仿真】

资源截图

代码片段和文件信息

/***************************************************/
#include “reg51.h“
#include “intrins.h“ //_nop_();延时函数用
#include “math.h“
#define  disdata P0                //段码输出口
#define  discan  P2                //扫描口
#define  uchar unsigned char
#define  uint  unsigned int

sbit     duqu=P3^6;                 //温度输入口
sbit     dian=P0^7;                 //LED小数点控制
sbit     beep=P1^6; //蜂鸣器

sbit  key0=P3^0;
sbit  key1=P3^1;
sbit     key02=P3^2;
sbit  key03=P3^3;

sbit     led0=P1^0; //红灯
sbit     led1=P1^1; //绿灯
sbit   led2=P1^2; //黄灯

uint     h; 
uint     temp;
uchar    r;
char   high=40low=15;
uchar  sign;
uchar    st=1;
uchar    ti;
uchar    pp;
uchar    ee;
uchar  nn;

//**************温度小数部分用查表法***********//
uchar code ditab[16]=
{0x000x010x010x020x030x030x040x040x050x060x060x070x080x080x090x09};
//
uchar code dis_7[15]={0x3f0x060x5b0x4f0x660x6d0x7d0x070x7f0x670x000x400x760x380x39};
//共阴LED段码表        “0“  “1“  “2“  “3“  “4“  “5“  “6“  “7“  “8“  “9“ “不亮“ “-“ “H“  “L“  “C“         
uchar code scan_con[4]={0x700xb00xd00xe0};    //列扫描控制字
uchar data temp_data[2]={0x000x00};             //读出温度暂放
uchar data display[5]={0x000x000x000x000x00};     //显示单元数据,共4个数据和一个运算暂用


/*****************11us延时函数*************************/
void delay(uint t)
{
  for (;t>0;t--);
}


/****************显示扫描函数***************************/
void scan()
{
   char k;
for(k=0;k<4;k++)                 //4位LED扫描控制
{
discan=scan_con[k];          //位选
disdata=dis_7[display[k]];   //数据显示
if (k==1){dian=1;}           //小数点显示
delay(200);
}
}



/****************DS18B20复位函数************************/
ow_reset(void)
{
char presence=1;
while(presence)
{
   while(presence)
    {
     duqu=1;_nop_();_nop_(); //从高拉倒低
duqu=0;                                       
delay(50);              //550 us
duqu=1;                                        
delay(6);               //66 us
presence=duqu;          //presence=0 复位成功继续下一步
    } 
    delay(45);                  //延时500 us
    presence=~duqu;         
}
duqu=1;                         //拉高电平
}


/****************DS18B20写命令函数************************/
//向1-WIRE 总线上写1个字节
void write_byte(uchar val)

  uchar i;
  for(i=8;i>0;i--)
  {
   duqu=1;_nop_();_nop_();                  //从高拉倒低
   duqu=0;_nop_();_nop_();_nop_();_nop_();  //5 us
   duqu=val&0x01;                           //最低位移出
   delay(6);                                //66 us
   val=val/2;                               //右移1位
   }
   duqu=1;
   delay(1);
}


/****************DS18B20读1字节函数************************/
//从总线上取1个字节
uchar read_byte(void)
{
uchar i;
uchar value=0;
for(i=8;i>0;i--)
{
duqu=1;_nop_();_nop_();
value>>=1;
duqu=0;_nop_();_nop_();_nop_();_nop_();       //4 us
duqu=1;_nop_();_nop_();_nop_();_nop_();       //4 us
if(duqu)value|=0x80;
delay(6

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      93184  2010-07-03 12:34  单片机课程设计--数字温度计【报告+程序+仿真】\protel\History\History\Sheet2.~(1).SchDoc

     文件     142848  2010-07-03 13:08  单片机课程设计--数字温度计【报告+程序+仿真】\protel\History\History\Sheet2.~(2).SchDoc

     文件     142848  2010-07-03 13:08  单片机课程设计--数字温度计【报告+程序+仿真】\protel\History\History\Sheet2.~(3).SchDoc

     文件      24279  2010-07-03 11:57  单片机课程设计--数字温度计【报告+程序+仿真】\protel\History\PCB_Project1.~(1).PrjPCB

     文件     142848  2010-07-03 13:08  单片机课程设计--数字温度计【报告+程序+仿真】\protel\History\Sheet2.SchDoc

     文件      24546  2010-07-03 13:08  单片机课程设计--数字温度计【报告+程序+仿真】\protel\PCB_Project1.PrjPCB

     文件       1028  2010-07-04 18:38  单片机课程设计--数字温度计【报告+程序+仿真】\protel\zhoudu-数字温度计.PWI

     文件     139083  2010-06-28 17:05  单片机课程设计--数字温度计【报告+程序+仿真】\Proteus\Last Loaded zhoudu-数字温度计.DBK

     文件     139083  2010-07-04 18:43  单片机课程设计--数字温度计【报告+程序+仿真】\Proteus\zhoudu-数字温度计.DSN

     文件       1054  2010-07-04 18:44  单片机课程设计--数字温度计【报告+程序+仿真】\Proteus\zhoudu-数字温度计.PWI

     文件     546304  2010-07-04 15:51  单片机课程设计--数字温度计【报告+程序+仿真】\温度计课程设计.doc

     文件       5115  2002-04-16 14:32  单片机课程设计--数字温度计【报告+程序+仿真】\程序\STARTUP.A51

     文件      11665  2010-07-04 18:43  单片机课程设计--数字温度计【报告+程序+仿真】\程序\STARTUP.LST

     文件        749  2010-07-04 18:43  单片机课程设计--数字温度计【报告+程序+仿真】\程序\STARTUP.OBJ

     文件    2718954  2010-07-04 15:48  单片机课程设计--数字温度计【报告+程序+仿真】\程序\未命名.bmp

     文件      17626  2010-07-04 18:43  单片机课程设计--数字温度计【报告+程序+仿真】\程序\温度计

     文件       9261  2010-07-04 18:42  单片机课程设计--数字温度计【报告+程序+仿真】\程序\温度计.c

     文件       4321  2010-07-04 18:43  单片机课程设计--数字温度计【报告+程序+仿真】\程序\温度计.hex

     文件         45  2010-07-04 18:43  单片机课程设计--数字温度计【报告+程序+仿真】\程序\温度计.lnp

     文件      20947  2010-07-04 18:43  单片机课程设计--数字温度计【报告+程序+仿真】\程序\温度计.LST

     文件      23001  2010-07-04 18:43  单片机课程设计--数字温度计【报告+程序+仿真】\程序\温度计.M51

     文件      19793  2010-07-04 18:43  单片机课程设计--数字温度计【报告+程序+仿真】\程序\温度计.OBJ

     文件       1074  2010-07-04 18:45  单片机课程设计--数字温度计【报告+程序+仿真】\程序\温度计.Opt

     文件        401  2010-07-04 18:43  单片机课程设计--数字温度计【报告+程序+仿真】\程序\温度计.plg

     文件       2029  2010-06-28 17:03  单片机课程设计--数字温度计【报告+程序+仿真】\程序\温度计.Uv2

     文件       1074  2010-06-29 14:49  单片机课程设计--数字温度计【报告+程序+仿真】\程序\温度计_Opt.Bak

     文件       2099  2010-06-28 16:58  单片机课程设计--数字温度计【报告+程序+仿真】\程序\温度计_Uv2.Bak

     文件    1362944  2010-07-04 15:33  单片机课程设计--数字温度计【报告+程序+仿真】\程序\片段.shs

     目录          0  2010-07-11 17:34  单片机课程设计--数字温度计【报告+程序+仿真】\protel\History\History

     目录          0  2010-07-11 17:34  单片机课程设计--数字温度计【报告+程序+仿真】\protel\History

............此处省略7个文件信息

评论

共有 条评论