数字温度控制器的设计与制作演示幻灯片.ppt
文本预览下载声明
;; 1.单总线数字温度传感器DS18B20;(1)DS18B20的优点
采用单总线的接口方式。与微处理器连接时,仅需要一条口线即可实现微处理器与 DS18B20 的双向通信。
每个器件上都有独一无二的序列号。
测量温度范围宽,测量精度高。
在使用中不需要任何外围元件即可实现测温。
内部有温度上、下限告警设置。??
支持多点组网功能。
供电方式灵活。
测量参数可配置。
负压特性。
掉电保护功能。体积小、适用电压宽、更经济。;(2) DS18B20芯片结构;DS18B20内部结构如图8-2所示。
; 2.传感器的读写时序;(1) 初始化时序;(2) 对DS18B20的写和读操作时序;3.传感器的操作使用 ;(2)发送一条 ROM 指令
DS18B20的ROM指令集如表8-2所示:;(3)发送存储器指令
DS18B20的存储器指令集如表8-3所示:;;引脚功能如表8-4所示。 ;(2)1602LCD液晶显示模块控制指令 ; 2.液晶模块读写操作时序 ;(2)读时序; 从图8-10和图8-11可以看出,1602液晶的读写操作时序可总结成表8-8所示。;(3)RAM地址映射图;(4)液晶操作步骤 ;2)数据控制;液晶初始化子程序:;初始化子程序参考如下:
void init( )
{
lcde=0; //使能端E清零
write_com(0x38); //显示模式设置
write_com(0x0f); //开显示,显示光标,光标闪烁
write_com(0x06); //当写一个字符后,地址指针自
动加1,且光标加1,字符不动
write_com(0x01); //清屏
write_com(0x80); //设置数据指针
};写命令子函数:;参考程序如下:
void write_data(unsigned char data1)
{
lcdrs=1; //RS置1,代表数据操作
D0~D7=data1;
delay(5);
lcde=1;
delay(5);
lcde=0; //产生高脉冲
};3.液晶显示模块应用实例; 分析:Proteus中LCD1602液晶显示元件名称是LM016L(在元件查找里面可以找到),这个元件接法与LCD1602相同。;void write_com(unsigned char com)
{
lcdrs=0;
P3=com;
delay(5);
lcde=1;
delay(5);
lcde=0;
}
void write_data(unsigned char data1)
{
lcdrs=1;
P3=data1;
delay(5);
lcde=1;
delay(5);
lcde=0;
};void init( )
{
lcde=0; //使能端E清零
write_com(0x38); //显示模式设置
write_com(0x0f); //开显示,显示光标,光标闪烁
write_com(0x06); //当写一个字符后,地址指针自动加1,
且光标加1,字符不动
write_com(0x01); //清屏
write_com(0x80); //设置数据指针
};void main()
{
init();
write_com(0x80+0x12); //设置数据指针
for(i=0;i12;i++)
{
write_data(tab[i]);
delay(20);
}
write_com(0x80+0x54); //设置数据指针
for(i=0;i8;i++)
{
write_data(tab1[i]);
delay(20);
}
for(i=0;i16;i++)
{
write_com(0x1c); //整屏左移,LM016L与LCD1602实物的
左右移相反
delay(200);
}
while(
显示全部