77范文网 - 专业文章范例文档资料分享平台

智能仪表课程设计2(4)

来源:网络收集 时间:2018-11-23 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

参考文献

[1] 谭浩强.C程序设计(第三版).北京:清华大学出版社,2005.7

[2] 余发山,王福忠.单片机原理与应用技术.徐州:中国矿业大学出版社,2008.6 [3] 求是科技.单片机典型模块设计实例导航.北京:人民邮电出版社,2005.5

[4] 求是科技.8051系列单片机C程序设计完全手册.北京:人民邮电出版社,2006.4 [5] 于永,戴佳,刘波.51单片机C语言常用模块与综合系统设计实例精讲(第2版).北京:电子工业出版社,2008.10

14

附 录

附录一 硬件原理图

15

附录二 源程序清单

C程序:

#include #include #include #include

#define uchar unsigned char #define uint unsigned int uchar teH = 35,teL = 20;

sbit DQ=P3^7;//ds18b20与单片机连接口 sbit RS=P2^5; sbit RW=P2^6; sbit EN=P2^7; sbit SET=P1^0; sbit ADD=P1^1; sbit SUB=P1^2; sbit BEEP = P3^2;

sbit busy=P0^7; //lcd忙标位 sbit L = P3^3; sbit H = P3^4;

uchar s1num = 0, s2num = 0; uchar dis3[]={%uchar val_sp[5]={0}; uchar fre_sp[5]={0};

uchar code str1[]={\

uchar code str2[]={%uchar code str3[]={%uchar code str4[]={%uchar code str5[]={%uchar data disdata[5]; uchar data str6[2]; uchar p=0;

uint tvalue;//温度值

uchar tflag;//温度正负标志

//*************************lcd1602程序**************************/ void delay1ms(uint ms)//延时1毫秒 {

uint i,j;

for(i=0;i

void wr_com(uchar com)//写指令//

16

{

//delay1ms(1); RS=0; RW=0; EN=0; P0=com;

//delay1ms(1); EN=1;

//cbusy(); delay1ms(1); EN=0; }

void wr_dat(uchar dat)//写数据// {

//delay1ms(1); RS=1; RW=0; EN=0; P0=dat;

//delay1ms(1); EN=1;

//cbusy(); delay1ms(1); EN=0; }

void lcd_init()//初始化设置 {

wr_com(0x38);delay1ms(5); wr_com(0x08);delay1ms(5); wr_com(0x01);delay1ms(5); wr_com(0x06);delay1ms(5); wr_com(0x0c);delay1ms(5); }

void display(uchar *p)//显示 {

while(*p!='\\0') {

wr_dat(*p); p++;

delay1ms(1); }

} void init_play()//初始化显示 {

17

lcd_init(); wr_com(0x80); display(str2); wr_com(0xc0); display(str3); delay1ms(2000); lcd_init(); wr_com(0x80);

display(str1); wr_com(0xc0);

display(str4); wr_com(0xc0+8); display(str5); }

/***************************ds18b20程序****************************/ void delay_18B20(uint i)//延时1微秒 {

while(i--); }

void ds1820rst()/*ds1820复位*/ {

DQ = 1; //DQ复位 delay_18B20(4); //延时 DQ = 0; //DQ拉低

delay_18B20(100); //精确延时大于480us DQ = 1; //拉高 delay_18B20(40); }

uchar ds1820rd()/*读数据*/ {

uchar i=0; uchar dat = 0; for (i=8;i>0;i--) {

DQ = 0; //给脉冲信号 dat>>=1;

DQ = 1; //给脉冲信号 if(DQ) dat|=0x80;

delay_18B20(10); }

return(dat);

18

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库智能仪表课程设计2(4)在线全文阅读。

智能仪表课程设计2(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/303150.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: