资源描述:
《单片机课程设计--八路温度数据采集系统》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、课程设计说明书课程设计说明书课程名称:单片机应用课程设计课程代码:题目:八路温度数据采集系统设计(LED显示)学生姓名:学号:年级/专业/班:学院(直属系):机械工程与自动化学院指导教师:-16-课程设计说明书#include"reg52.h"#include"intrins.h"//_nop_();延时函数用#defineDisdataP0//段码输出口#definediscanP2//扫描口#defineucharunsignedchar#defineuintunsignedintsbitDQ=
2、P1^0;sbitDQ1=P1^1;//温度输入口sbitDQ2=P1^2;sbitDQ3=P1^3;sbitDQ4=P1^4;sbitDQ5=P1^5;sbitDQ6=P1^6;sbitDQ7=P1^7;sbitDIN=P0^7;//LED小数点控制sbitanniu=P2^7;uinth,n,k;uinttemp;ucharnum,flag;//**************温度小数部分用查表法***********//ucharcodeditab[16]={0x00,0x01,0x01,0x02
3、,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09};//ucharcodedis_7[12]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf};ucharcodescan_con[5]={0xFE,0xFD,0xFB,0xF7,0xef};//列扫描控制字uchardatatemp_data[2]={0x00,0x00};//读出温度暂放uchardata
4、display[5]={0x00,0x00,0x00,0x00,0x00};//显示单元数据,共4个数据和一个运算暂用/*****************11us延时函数*************************/voiddelay(uintt){for(;t>0;t--);}/****************显示扫描函数***************************/voidscan(){chark;for(k=0;k<5;k++)//4位LED扫描控制{display[4]=n;
5、Disdata=0xFF-dis_7[display[k]];//数据显示delay(200);-16-课程设计说明书Disdata=0x00;delay(20);if(k==0){DIN=1;}//小数点显示discan=scan_con[k];//位选delay(100);}}/****************DS18B20复位函数************************/voidow_reset(void){charpresence=1;while(presence){while(pr
6、esence){switch(n){case1:{DQ=1;_nop_();_nop_();//从高拉倒低DQ=0;delay(50);//550usDQ=1;delay(6);//66uspresence=DQ;//presence=0复位成功,继续下一步delay(45);//延时500uspresence=~DQ;}case2:{DQ1=1;_nop_();_nop_();//从高拉倒低DQ1=0;delay(50);//550usDQ1=1;delay(6);//66uspresence=D
7、Q1;//presence=0复位成功,继续下一步delay(45);//延时500uspresence=~DQ1;}case3:{DQ2=1;_nop_();_nop_();//从高拉倒低-16-课程设计说明书DQ2=0;delay(50);//550usDQ2=1;delay(6);//66uspresence=DQ2;//presence=0复位成功,继续下一步delay(45);//延时500uspresence=~DQ2;}case4:{DQ3=1;_nop_();_nop_();//从高
8、拉倒低DQ3=0;delay(50);//550usDQ3=1;delay(6);//66uspresence=DQ3;//presence=0复位成功,继续下一步delay(45);//延时500uspresence=~DQ3;}case5:{DQ4=1;_nop_();_nop_();//从高拉倒低DQ4=0;delay(50);//550usDQ4=1;delay(6);//66uspresence=DQ4;//presence=0复位成功,继续下一步delay