资源简介
本设计采用ds18b20和dht11采集温湿度并且串口传输显示仿真,串口波特率9600,采用虚拟串口显示。
代码片段和文件信息
#include
#include
#include
/**********************************8/
/**********LCD1602接口程序**********/
#define DD P2
sbit Rs=P3^0;
sbit Rw=P3^1;
sbit E=P3^2;
sbit busy_p=ACC^7;
/********************************/
void delay_1ms(unsigned char i) //最小延时1ms
{ unsigned char j;
while(i--)
for(j=0;j<125; j++);
}
void delay_10ns(unsigned char i) //最小延时10ns
{ unsigned char j;
while(i--)
for(j=0;j<10; j++);
}
void write_com(unsigned char combit p) //写指令
{if(p)
delay_10ns(5);
E=0;
Rs=0;
Rw=0;
DD=com;
delay_10ns(50); //>40ns
E=1;
delay_1ms(2); //>150ns
E=0;
delay_10ns(4); //>25+10ns
}
void write_date(unsigned char DATA) //写数据
{
delay_10ns(50);
E=0;
Rs=1;
Rw=0;
DD=DATA;
delay_10ns(50);
E=1;
delay_10ns(50);
E=0;
delay_10ns(4);
}
void addr_x_y(unsigned char xbit y) //写坐标,定位置
{ unsigned char temp=0x80;
if(y)
{temp|=0x40;}
temp|=x;
write_com(temp0);
}
void desplay_char(unsigned char xbit yunsigned char p)
//在指定位置显示一个字符。
{ addr_x_y(xy);
write_date(p);
}
void init(void)
{delay_1ms(15);
write_com(0x380);
delay_1ms(5);
write_com(0x380);
delay_1ms(5);
write_com(0x380);
delay_1ms(5);
write_com(0x381);
write_com(0x081);
write_com(0x011);
write_com(0x061);
write_com(0x0c1);
}
void xs_int(unsigned int shujubit t) //显示一个数字
{unsigned char huancun[6]={0};
unsigned char biaozhi=0i;
if (shuju < 10) biaozhi = 1;
else if(shuju < 100) biaozhi = 2;
else if(shuju < 1000) biaozhi = 3;
else if(shuju < 10000) biaozhi = 4;
else if(shuju < 65535) biaozhi = 5;
switch(biaozhi)
{case 5:huancun[5] = shuju/10000;
case 4:huancun[3] = shuju%10000/1000;
case 3:huancun[2] = shuju%1000/100;
case 2:huancun[1] = shuju%100/10;
case 1:huancun[0] = shuju%10;
break;
default:break;
}
for(i=6;i>1;i--)
{if(i==5)desplay_char(101‘.‘);
else desplay_char(15-it0x30+huancun[i-1]); }
desplay_char(15t‘V‘);
}
/************************************************************/
/**********ADC0832接口程序************************************/
sbit ADC_CS =P3^4;
sbit ADC_CLK=P3^5;
sbit ADC_DO =P3^6;
sbit ADC_DI =P3^7;
/*******************************************************************/
void Delay(unsigned char j)
{
unsigned char i;
for(i=0;i
}
unsigned char ADC0832(void) //把模拟电压值转换成8位二进制数并返回
{
unsigned char idata_c;
data_c=0;
ADC_CS=0;
ADC_DO=0;//片选,DO为高阻态
for(i=0;i<10;i++)
{;}
ADC_CLK=0;
Delay(2);
ADC_DI=1;
ADC_CLK=1;
Delay(2); //第一个脉冲,起始位
ADC_CLK=0;
Delay(2);
ADC_DI=1;
ADC_CLK=1;
Delay(2); //第二个脉冲,DI=1表示双通道单极性输入
ADC_CLK=0;
Delay(2);
ADC_DI=1;
ADC_CLK=1;
Delay(2); //第三个脉冲,DI=1表示选择通道1(CH2)
ADC_DI=0;
ADC_DO=1;//DI转为高阻态,DO脱离高阻态为输出数据作准备
ADC_CLK=1;
Delay(2);
ADC_CLK=0;
Delay(2);//经实验,这里加一个脉冲AD便能正确读出数据,
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-05-11 23:04 串口温湿度计_51\
文件 1097728 2017-05-07 13:31 串口温湿度计_51\2015年单片机课程设计报告模板.doc
文件 240786 2017-05-07 14:55 串口温湿度计_51\4——26.docx
文件 114688 2017-05-07 12:34 串口温湿度计_51\51单片机寄存器功能一览表(最全).doc
文件 3638 2010-06-16 23:03 串口温湿度计_51\ADC0832.c
文件 1242 2017-05-11 19:55 串口温湿度计_51\ADC0832.h
文件 7891 2017-05-11 19:53 串口温湿度计_51\ADC0832.LST
文件 11561 2017-05-11 19:53 串口温湿度计_51\ADC0832.OBJ
文件 46 2017-05-11 19:53 串口温湿度计_51\ADC0832.__i
文件 7020 2012-04-27 17:25 串口温湿度计_51\DHT
文件 466 2017-05-11 19:15 串口温湿度计_51\DHT11.h
文件 40956 2017-05-11 21:41 串口温湿度计_51\DHT11_4
文件 0 2017-04-30 15:49 串口温湿度计_51\DHT11_4.build_log.htm
文件 3461 2017-05-11 21:13 串口温湿度计_51\DHT11_4.c
文件 16635 2017-05-11 21:41 串口温湿度计_51\DHT11_4.hex
文件 124 2017-05-11 21:41 串口温湿度计_51\DHT11_4.lnp
文件 6989 2017-05-11 21:13 串口温湿度计_51\DHT11_4.LST
文件 38695 2017-05-11 21:41 串口温湿度计_51\DHT11_4.M51
文件 5913 2017-05-11 21:13 串口温湿度计_51\DHT11_4.OBJ
文件 87243 2017-05-11 21:41 串口温湿度计_51\DHT11_4.plg
文件 73903 2017-04-30 00:23 串口温湿度计_51\DHT11_4.uvgui.Administrator
文件 74294 2017-05-11 23:04 串口温湿度计_51\DHT11_4.uvgui.lifu
文件 73627 2017-05-10 12:56 串口温湿度计_51\DHT11_4.uvgui.tuhao
文件 73902 2017-04-29 22:59 串口温湿度计_51\DHT11_4.uvgui_Administrator.bak
文件 73029 2017-05-11 18:04 串口温湿度计_51\DHT11_4.uvgui_lifu.bak
文件 73249 2017-05-07 22:21 串口温湿度计_51\DHT11_4.uvgui_tuhao.bak
文件 7693 2017-05-11 23:04 串口温湿度计_51\DHT11_4.uvopt
文件 14074 2017-05-11 23:04 串口温湿度计_51\DHT11_4.uvproj
文件 6715 2017-04-30 00:23 串口温湿度计_51\DHT11_4_uvopt.bak
文件 13748 2017-04-29 07:24 串口温湿度计_51\DHT11_4_uvproj.bak
文件 1989188 2017-05-10 12:47 串口温湿度计_51\DHT11的读写原理--一线制通信协议解析_3783750147_新浪博客.png
............此处省略20个文件信息
相关资源
- 二氧化碳温湿度空气质量传感器代码
- 虚拟串口软件Virtual Serial Port Driver最新
- 汇编语言指令大全(详解版).pdf
- 51单片机门禁上位机,下位机全部工程
- 基于51单片机接入阿里云物联网.pdf
- 虚拟串口调试工具
- 51单片机自学笔记
- 正点原子mini开发板+DHT11测量温湿度上
- 基于51单片机的智能窗户设计
- 普中科技51单片机开发板的实验程序资
- 基于51单片机的水箱、水塔水位检测系
- 蓝牙显示温湿度
- 基于51单片机的数字电压表.rar
- STM32+超声波传感器HC_RS04+光照传感器
- 汇编程序测控51单片机超声波测距16
- 多波形发生器设计
- BP预测温度模型_2019.10.14.rar
- WIFI温湿度读取APP源码
- 51单片机课程设计及报告
- LED点阵广告牌课程设计C51单片机含报
- COMP51编译器
- VCPDriver_V1.1_Setup.exe
- 温湿度环境监测系统毕业论文
- 基于51单片机的指南针
- 51单片机太阳追踪系统
- 多功能小车 51单片机控制 超声测距
- AT89C51单片机程序以及原理图
- 虚拟串口神器——Virtual Serial Port Dr
- 51单片机初级实验篇
- STM32F1通过模拟IIC接口与BME280通信,获
评论
共有 条评论