ds18b20课程设计报告

2023-06-21

国民经济的快速发展下,越来越多的行业,开始通过报告的方式,用于记录工作内容。怎么样才能写出优质的报告呢?以下是小编收集整理的《ds18b20课程设计报告》,供大家参考借鉴,希望可以帮助到有需要的朋友。

第一篇:ds18b20课程设计报告

数字温度传感器DS18B20控制接口设计

摘 要: DS18B20是一款经典的单总线数字温度传感器芯片,较传统的温度传感器具有结构简单、体积小、功耗小、抗干扰能力强、使用简单、可组网实现多点温度测量等优点。本设计简要介绍了数字温度传感器DS18B20 的特性及工作原理,着重论述了用FPGA实现对此传感器的控制,并将测到的温度在LED数码管上显示出来。

关键词:DS18B20;温度传感器;FPGA;LED数码管

Abstract: DS18B20 is a classic single-bus digital temperature sensor chip, the more traditional temperature sensor has a simple structure, small size, low power consumption, and anti-interference ability, easy to use networking to achieve multi-point temperature measurement. The design brief describes the features and working principle of the digital temperature sensor DS18B20, focuses on the control of this sensor using FPGA, and the measured temperature is displayed on the LED digital tube. Keywords: DS18B20; temperature sensor; FPGA; LED digital tube

1 引言

传统的温度传感器系统大都采用放大、调理、A/ D 转换, 转换后的数字信号送入计算机处理, 处理电路复杂、可靠性相对较差, 占用计算机的资源较多。DS18B20 是一线制数字温度传感器, 它可将温度信号直接转换成串行数字信号送给微处理器, 电路简单, 成本低, 每一只DS18B20 内部的ROM 存储器都有唯一的64位系列号, 在1 根地址/ 信号线上可以挂接多个DS18B20, 易于扩展, 便于 组网和多点测量。

随着科技的发展 ,温度的实时显示系统应用越来越广泛 ,比如空调遥控器上当前室温的显示、热水器温度的显示等等。实现温度的实时采集与显示系统有很多种解决方案 ,本文使用全数字温度传感器DS18B20来实现温度的实时采集FPGA作为控制中心与数据桥梁;LED数码管作为温度实时显示器件。其中DS18B20作为FPGA的外部信号源,把所采集到的温度转换为数字信号,通过接口 (113脚)传给FPGA,FPGA启动ROM内的控制程序驱动LED数码管,通过IO口和数据线把数据传送给LED数码管,将采集到的温度实时显示出来。该设计结构简单、测温准确,成本低,工作稳定可靠,具有一定的实际应用价值。

2 DS18B20数字温度传感器介绍

DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。DS18B20的性能特点如下:

2.1 DS18B20的性能特点

1独特的单线接口仅需要一个端口引脚进行通信; ○2多个DS18B20可以并联在惟一的三线上,实现多点组网功能; ○3无须外部器件; ○4可通过数据线供电,电压范围为3.0~5.5V; ○5零待机功耗; ○6温度以9或12位数字; ○7用户可定义报警设置; ○8报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件; ○9负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;○ 2.2 DS18B20的内部结构图

DS18B20采用3脚PR-35封装或8脚SOIC封装,其内部结构框图如图2-1所示。

图2-1 DS18B20内部结构框图 图2-2 DS18B20字节定义

64位ROM的结构开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用一线进行通信的原因。温度报警触发器TH和TL,可通过软件写入户报警上下限。DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的EERAM。高速暂存RAM的结构为8字节的存储器,结构如图2-2所示。头2个字节包含测得的温度信息,第3和第4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新。第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值。该字节各位的定义如图3-4所示。低5位一直为1,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设置为0,用户要去改动,R1和R0决定温度转换的精度位数,来设置分率。 2.3 DS18B20测温原理

DS18B20内部的低温度系数振荡器是一个振荡频率随温度变化很小的振荡器,为计数器1提供一个频率稳定的计数脉冲。

高温度系数振荡器是一个振荡频率对温度很敏感的振荡器,为计数器2提供一个频率随温度变化的计数脉冲。初始时,温度寄存器被预置成-55℃,每当计数器1从预置数开始减计数到0时,温度寄存器中寄存的温度值就增加1℃,这个过程重复进行,直到计数器2计数到0时便停止。 初始时,计数器1预置的是与-55℃相对应的一个预置值。以后计数器1每一个循环的预置数都由斜率累加器提供。为了补偿振荡器温度特性的非线性性,斜率累加器提供的预置数也随温度相应变化。计数器1的预置数也就是在给定温度处使温度寄存器寄存值增加1℃计数器所需要的计数个数。

DS18B20内部的比较器以四舍五入的量化方式确定温度寄存器的最低有效位。在计数器2停止计数后,比较器将计数器1中的计数剩余值转换为温度值后与0.25℃进行比较,若低于0.25℃,温度寄存器的最低位就置0;若高于0.25℃,最低位就置1;若高于0.75℃时,温度寄存器的最低位就进位然后置0。这样,经过比较后所得的温度寄存器的值就是最终读取的温度值了,其最后位代表0.5℃,四舍五入最大量化误差为±1/2LSB,即0.25℃。

温度寄存器中的温度值以9位数据格式表示,最高位为符号位,其余8位以二进制补码形式表示温度值。测温结束时,这9位数据转存到暂存存储器的前两个字节中,符号位占用第一字节,8位温度数据占据第二字节。

DS18B20测量温度时使用特有的温度测量技术。DS18B20内部的低温度系数振荡器能产生稳定的频率信号;同样的,高温度系数振荡器则将被测温度转换成频率信号。当计数门打开时,DS18B20进行计数,计数门开通时间由高温度系数振荡器决定。芯片内部还有斜率累加器,可对频率的非线性度加以补偿。测量结果存入温度寄存器中。一般情况下的温度值应该为9位,但因符号位扩展成高8位,所以最后以16位补码形式读出。 2.4 DS18B20供电方式

DS18B20有两种供电方式,一种是寄生电源强上拉供电方式,一种是外部供电方式,如下图:

图2-3 寄生电源强上拉供电方式电路图

在寄生电源供电方式下,DS18B20 从单线信号线上汲取能量:在信号线 DQ 处于高电平期间把能量储存在内部电容里,在信号线处于低电平期间消耗电容上的电能工作,直到高电平到来再给寄生电源(电容)充电。为了使 DS18B20 在动态转换周期中获得足够的电流供应,当进行温度转换或拷贝到 E2 存储器操作时,用 MOSFET 把 I/O 线直接拉到 VCC 就可提供足够的电流,在发出任何涉及到拷贝到 E2 存储器或启动温度转换的指令后,必须在最多 10μS 内把 I/O 线转换到强上拉状态。在强上拉方式下可以解决电流供应不走的问题,因此也适合于多点测温应用,缺点就是要多占用一根 I/O 口线进行强上拉切换。

图2-4 外部电源供电方式电路图

在外部电源供电方式下,DS18B20 工作电源由 VDD 引脚接入,此时 I/O 线不需要强上拉,不存在电源电流不足的问题,可以保证转换精度,同时在总线上理论可以挂接任意多个 DS18B20 传感器,组成多点测温系统。在外部供电的方式下,DS18B20的GND引脚不能悬空,否则不能转换温度,读取的温度总是 85℃。 3 设计需求

1温度测量范围:-55℃~+125℃ ○2可编程为9位~12位A/D转换精度 ○3测温分辨率可达0.0625℃ ○4 LED数码管直读显示 ○4 设计方案

4.1 硬件设计

将[DF2C8]FPGA 核心板和[EB-F2]基础实验板连接在一起,同时使能DS18B20 模块和数码管模块:数码管使能:用“短路帽”将实验板上的JP4和JP5全部短接。DS18B20 温度传感器使能跳线JP10 全部短接,元件安装示意如下图4-1和4-2(注意方向,半圆形的一边朝板子内部,平面朝外,和板上的图示一致)。

图 4-1:数码管使能图示 图 4-2:温度传感器安装和使能图示

4.1.1 温度传感器 DS18B20 电路

基础实验板上提供了一个由DS18B20构成的温度测量模块,其原理如图4-3所示。该电路选择外部供电方式。外部电源供电方式工作稳定可靠, 抗干扰能力强。

图4-3 单线制温度传感器 DS18B20 电路图

DS18B20与[DF2C8]FPGA核心板的连接关系如表4-1所示

表 4-1:DS18B20与[DF2C8]FPGA核心板连接时的管脚对应关系

4.1.2 数码管显示电路

基础实验板上具有2个共阳极的位七段数码管,构成8位构,其电路如图4-4 所示。

图 4-4:七段数码管显示电路图

数码管的控制引脚由两个跳线JP4和JP5使能(如图4-1所示) R10~R17是段码上的限流电阻,位码由于电流较大,采用了PNP三极管驱动。当位码驱动信号为低电平(0)时,对应的数码管才能操作;当段码驱动信号为低电平(0)时,对应的段码点亮。数码管不核心板连接时的管脚对应如表4-2所示:

表 4-2:数码管与[DF2C8]FPGA核心板连接时的管脚对应关系

4.2 HDL编码 4.2.1 时序

(1)复位: 使用DS18B20 时, 首先需将其复位, 然后才能执行其它命令。复位时, 主机将数据线拉为低电平并保持480Ls~ 960Ls, 然后释放数据线, 再由上拉电阻将数据线拉高15~ 60Ls, 等待DS18B20 发出存在脉冲, 存在脉冲有效时间为60~ 240Ls, 这样, 就完成了复位操作。其复位时序如图4-5所示。

图4-5:初始化时序

图4-6:写时序

(2)写时隙: 在主机对DS18B20 写数据时, 先将数据线置为高电平, 再变为低电平, 该低电平应大于1us。在数据线变为低电平后15us 内, 根据写“1”或写“0” 使数据线变高或继续为低。DS18B20 将在数据线变成低电平后15us~ 60us 内对数据线进行采样。要求写入DS18B20 的数据持续时间应大于60us 而小于120us, 两次写数据之间的时间间隔应大于1us。写时隙的时序如图4-6 所示

(3)读时隙 :当主机从DS18B20 读数据时, 主机先将数据线置为高电平, 再变为低电平, 该低电平应大于1us, 然后释放数据线, 使其变为高电平。DS18B20 在数据线从高电平变为低电平的15us 内将数据送到数据线上。主机可在15us 后读取数据线。读时隙的时序如图4-7 所示。

图4-7 :读时隙

4.2.2 DS18B20 的操作命令

主机可通过一线端口对DS18B20 进行操作, 其步骤为: 复位( 初始化命令) -> ROM 功能命令-> 存储器功能命令-> 执行/ 数据, DS18B20 的ROM 命令有5个( 见表1) , 存储器命令有6个( 见表2) 。命令的执行都是由复位、多个读时隙和写时隙基本时序单元组成。因此, 只要将复位、读时隙、写时隙的时序了解清楚, 使用DS18B20 就比较容易了, 时序如上文所述。

表4-3: 存储器命令操作表 表4-4:ROM命令功能操作表

4.2.3 Verilog HDL编码

详细Verilog HDL代码参见工程文件:DF2C8_13_DS18B20 工程文件中含有三个v 文件,LED_CTL.v 是数码管显示功能模块,DS18B20_CTL.v 是温度传感器的控制模块,TEMP.v 为顶层模块,实例化了前面两个模块,并将采集的温度值送至数码管中进行显示。其中最主要的温度传感器的控制模块,DS18B20_CTL.v。该程序对DS18B20 进行控制, 不仅可以简化程序, 还可以缩短1 次温度转换所需的时间. 这样的话, 1 次温度转换和数字温度值输出循环所涉及到的控制命令、数据交换和所需时隙如图4-8所示。

.

图4-8:1次温度转换的控制命令和时隙

5 仿真测试结果

5.1 仿真波形

温度测量模块仿真结果如图6-1所示:

图5-1:仿真波形

5.2 结果显示

下载配置文件后,可在数码管上观察到带一位小数的温度数值。如果用手捏住传感器,会发现显示的温度在升高。如下图:

图5-2 测温效果图示

参考文献:

[1] 沙占友 集成传感器的应用[M]. 中国电力出版社. [2] 罗钧,童景琳. 智能传感器数据采集与信号处理[M]. 化学工业出版社

[3] 周月霞,孙传友. DS18B20硬件连接及软件编程[J]. 传感器世界,2001,12. [4] 王晓娟,张海燕,梁延兴.基于DS18B20的温度实时采集与显示系统的设计与实现[J]. , 2007:38-41. [5] 党 峰, 王敬农, 高国旺. 基于DS18B20 的数字式温度计的实现[ J] . 山西电子技术, 2007( 3) [6] 金伟正. 单线数字温度传感器的原理与应用[ J] . 仪表技术与传感器, 2000( 7) : 42- 43. [7]DS18B20 Datasheet [ EB/ OL] . Dalla s: Dallas Semico nductor Cor po r atio n, 2005.

第二篇:基于AVR的DS18b20程序

//说明:单片机ATmega16的18B20程序。调这个18B20程序问题主要出现在延时部分,即单片机实际输出的延时与设定不符。//后面为别人精确延时,我用自己的单片机通过示波器重新测量实际延时。建议调延时用示波器先看看。我用的晶振12M,但延时根本就与理论不符。其中480us的延时要在480us与960us之间,选取550us比较合适,一般都这么选。 最后一句话:DS18B20的程序很多,模块基本相似,调不出来就是因为延时问题,示波器是必备工具,否则很盲目。

#include

#define uchar unsigned char

#define uchar unsigned char

#define uint unsigned int

//------------------------//

//.....18B20........

void init_1820(void)

{

int Flag_1820Error;

uchar i;

uint j=0;

PORTD|=(1<<7);//PORTC|=(1<<7);

PORTD&=~(1<<7);//PORTC&=~(1<<7);

for(i=0;i<8;i++)delay(180);//delay_60us();//480us以上

PORTD|=(1<<7);//PORTC|=(1<<7);

DDRD&=~(1<<7);//DDRC&=~(1<<7);//

delay(40);//delay_15us();//15~60us

delay(40);//delay_15us();

Flag_1820Error=0;

while(PIND&(1<<7)

{ delay(180);//delay_60us();

j++;

if(j>=18000){Flag_1820Error=1;break;}

}

DDRD|=(1<<7);//DDRC|=(1<<7);//PORTC7 is OUTPUT

PORTD|=(1<<7);//PORTC|=(1<<7);

for(i=0;i<4;i++)delay(180);//delay_60us(); //240us

}

/********************************/

/********************************/

void write_1820(uchar x)

{

uchar m;

for(m=0;m<8;m++)

{

if(x&(1<

{

PORTD&=~(1<<7);//PORTC&=~(1<<7);delay_5us(); //5usPORTD|=(1<<7);//PORTC|=(1<<7); //write"1"delay(40);//delay_15us(); //15~45usdelay(40);//delay_15us();delay(40);//delay_15us();

}

else

{

PORTD&=~(1<<7);//PORTC&=~(1<<7);delay_15us();//15us

delay(40);//delay_15us(); //write"0"delay(40); //delay_15us(); //15~45usdelay(40);//delay_15us();

PORTD|=(1<<7);//PORTC|=(1<<7);

}

PORTD|=(1<<7);// PORTC|=(1<<7);

}

/*******************************/

uchar read_1820(void)

{

uchar temp,k,n;

temp=0;

for(n=0;n<8;n++)

{

PORTD&=~(1<<7);//PORTC&=~(1<<7);

delay(13);//delay_5us();

PORTD|=(1<<7);//PORTC|=(1<<7);

delay(13);//delay_5us();

DDRD&=~(1<<7);//DDRC&=~(1<<7);//"PINC7 is INPUT"k=(PIND&(1<<7));//k=(PINC&(1<<7)); //读数据,从低位开始if(k)

temp|=(1<

else

temp&=~(1<

delay(40);//delay_15us();//45us

delay(40);//delay_15us(); delay(40);//delay_15us();

DDRD|=(1<<7);//DDRC|=(1<<7);//

}

return (temp);

}

/*************************************/

float read_temperature(void)

{

float temp;////////////

uchar teml=0,temh=0;

unsigned long t=0;

init_1820();//复位18b20write_1820(0xcc);// 发出转换命令write_1820(0x44);

//Delay_nms(100);

init_1820();

write_1820(0xcc);//发出读命令write_1820(0xbe);

teml=read_1820();//读数据byte1temh=read_1820();//byte2

t=temh;

t=t<<8; t=t|teml; temp=t*0.0625*260/286; return(temp); /*if(temh&0xf8)sign=0; else sign=1; if(sign==0){temh=255-temh;teml=255-teml;}temh=temh<<4;

temh|=(teml&0xf0)>>4;

}

//再在主程序中调用一下read_temperature(void),读取温度。 teml=teml&0x0f; teml=(teml*10)/16; tempval=temh;e[0]=tempval/100; tempval=temh;e[1]=(tempval/10)%10; tempval=temh;e[2]=tempval%10; tempval=teml;e[3]=tempval;*/

第三篇:2011基于18B20温度传感器论文

基于单片机18B20的温度计设计

摘要:文章主要介绍有关18B20温度传感器的应用及有关注意事项,经典接线原理图。 1. 引言:

温度传感器的种类众多,在应用与高精度、高可靠性的场合时DALLAS(达拉斯)公司生产的DS18B20温度传感器当仁不让。超小的体积,超低的硬件开消,抗干扰能力强,精度高,附加功能强,使得DS18B20更受欢迎。对于我们普通的电子爱好者来说,DS18B20的优势更是我们学习单片机技术和开发温度相关的小产品的不二选择。了解其工作原理和应用可以拓宽您对单片机开发的思路。

2. DS18B20的主要特征:  * 全数字温度转换及输出。  * 先进的单总线数据通信。  * 最高12位分辨率,精度可达土0.5摄氏度。  * 12位分辨率时的最大工作周期为750毫秒。  * 可选择寄生工作方式。  * 检测温度范围为–55°C ~+125°C (–67°F ~+257°F)  * 内置EEPROM,限温报警功能。  * 64位光刻ROM,内置产品序列号,方便多机挂接。  * 多样封装形式,适应不同硬件系统。 3. DS18B20引脚功能:

•GND 电压地 •DQ 单数据总线 •VDD 电源电压

4. DS18B20工作原理及应用:

DS18B20的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。其一个工作周期可分为两个部分,即温度检测和数据处理。在讲解其工作流程之前我们有必要了解18B20的内部存储器资源。18B20共有三种形态的存储器资源,它们分别是:

ROM 只读存储器,用于存放DS18B20ID编码,其前8位是单线系列编码(DS18B20的编码是19H),后面48位是芯片唯一的序列号,最后8位是以上56的位的CRC码(冗余校验)。数据在出产时设置不由用户更改。DS18B20共64位ROM。

5. 控制器对18B20操作流程:

1、 复位:首先我们必须对DS18B20芯片进行复位,复位就是由控制器(单片机)给DS18B20单总线至少480uS的低电平信号。当18B20接到此复位信号后则会在15~60uS后回发一个芯片的存在脉冲。

2、 存在脉冲:在复位电平结束之后,控制器应该将数据单总线拉高,以便于在15~60uS后接收存在脉冲,存在脉冲为一个60~240uS的低电平信号。至此,通信双方已经达成了基本的协议,接下来将会是控制器与18B20间的数据通信。如果复位低电平的时间不足或是单总线的电路断路都不会接到存在脉冲,在设计时要注意意外情况的处理。

3、 控制器发送ROM指令:双方打完了招呼之后最要将进行交流了,ROM指令共有5条,每一个工作周期只能发一条,ROM指令分别是读ROM数据、指

定匹配芯片、跳跃ROM、芯片搜索、报警芯片搜索。ROM指令为8位长度,功能是对片内的64位光刻ROM进行操作。其主要目的是为了分辨一条总线上挂接的多个器件并作处理。诚然,单总线上可以同时挂接多个器件,并通过每个器件上所独有的ID号来区别,一般只挂接单个18B20芯片时可以跳过ROM指令(注意:此处指的跳过ROM指令并非不发送ROM指令,而是用特有的一条“跳过指令”)。ROM指令在下文有详细的介绍。

4、 控制器发送存储器操作指令:在ROM指令发送给18B20之后,紧接着(不间断)就是发送存储器操作指令了。操作指令同样为8位,共6条,存储器操作指令分别是写RAM数据、读RAM数据、将RAM数据复制到EEPROM、温度转换、将EEPROM中的报警值复制到RAM、工作方式切换。存储器操作指令的功能是命令18B20作什么样的工作,是芯片控制的关键。

5、 执行或数据读写:一个存储器操作指令结束后则将进行指令执行或数据的读写,这个操作要视存储器操作指令而定。如执行温度转换指令则控制器(单片机)必须等待18B20执行其指令,一般转换时间为500uS。如执行数据读写指令则需要严格遵循18B20的读写时序来操作。数据的读写方法将有下文有详细介绍。 6. DS28B20芯片ROM指令表

Read ROM(读ROM)[33H] (方括号中的为16进制的命令字) Match ROM(指定匹配芯片)[55H] Skip ROM(跳跃ROM指令)[CCH] Search ROM(搜索芯片)[F0H] Alarm Search(报警芯片搜索)[ECH] 7. DS28B20芯片存储器操作指令表:

Write Scratchpad (向RAM中写数据)[4EH] Read Scratchpad (从RAM中读数据)[BEH] Copy Scratchpad (将RAM数据复制到EEPROM中)[48H] Convert T(温度转换)[44H] Recall EEPROM(将EEPROM中的报警值复制到RAM)[B8H] Read Power Supply(工作方式切换)[B4H] 8.写程序注意事项

DS18B20复位及应答关系

每一次通信之前必须进行复位,复位的时间、等待时间、回应时间应严格按时序编程。

DS18B20读写时间隙:

DS18B20的数据读写是通过时间隙处理位和命令字来确认信息交换的。 写时间隙:

写时间隙分为写“0”和写“1”,时序如图7。在写数据时间隙的前15uS总线需要是被控制器拉置低电平,而后则将是芯片对总线数据的采样时间,采样时间在15~60uS,采样时间内如果控制器将总线拉高则表示写“1”,如果控制器将总线拉低则表示写“0”。每一位的发送都应该有一个至少15uS的低电平起始位,随后的数据“0”或“1”应该在45uS内完成。整个位的发送时间应该保持在60~120uS,否则不能保证通信的正常。 读时间隙:

读时间隙时控制时的采样时间应该更加的精确才行,读时间隙时也是必须先由主机产生至少1uS的低电平,表示读时间的起始。随后在总线被释放后的15uS

中DS18B20会发送内部数据位,这时控制如果发现总线为高电平表示读出“1”,如果总线为低电平则表示读出数据“0”。每一位的读取之前都由控制器加一个起始信号。注意:必须在读间隙开始的15uS内读取数据位才可以保证通信的正确。 在通信时是以8位“0”或“1”为一个字节,字节的读或写是从高位开始的,即A7到A0.字节的读写顺序也是如图2自上而下的。

9.接线原理图:

本原理图采用四位数码管显示,低于100度时,首位不显示示例27.5,低于10度时示例为9.0,低于零度时示例为-3.7。

结束语:基于DS18B20温度测量温度准确,接线简单,易于控制,加以扩展可以应用到各种温度控制和监控场合。

参考文献:

DALLAS(达拉斯)公司生产的DS18B20温度传感器文献

程序:

#include

#define uchar unsigned char #define uint unsigned int

sbit sda=P1^7; sbit dian=P0^7;//小数点显示 uint tem;

uchar h; uchar code tabw[4]={0xf7,0xfb,0xfd,0xfe};//位选 uchar code tabs[12]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf};//数码管数据

//

0

4 5 6

8 9

- uchar code ditab[16]= {0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09}; //查表显示小数位 ,1/16=0.0625,即当读出数据为3时,3*0.0625=0.1875,读出数据为3时对应1,查表显示1,为4时显2 uchar data temp[2]={0};//高位数据与低位数据暂存 uchar data display[5]={0};//显示缓存

void delay(uchar t)//t为1时延时小于5us { while(t--); } void delay1()//4us {} void delays(uchar m)//1ms { uchar i,j; for(i=0;i

for(j=0;j<110;j++); } void reset()//初始化 { uchar x=1; while(x) {

while(x)

{

sda=1;

sda=0;

delay(50);//延时500us以上

sda=1;

delay(5);//等待15us-60us

x=sda;

}

delay(45);

x=~sda; }

sda=1; } void write_s(uchar temp)//写入一个字节 { uchar i; for(i=0;i<8;i++) {

sda=1;

sda=0;

delay1();

sda=temp&0x01;

delay(6);

temp=temp/2; } sda=1; delay(1); } uchar read_s()//读出一个字节的数据 { uchar m=0,i; for(i=0;i<8;i++) {

sda=1;

m>>=1;

sda=0;

delay1();

sda=1;

delay1();

if(sda)

m=m|0x80;

delay(6); } sda=1; return m; } uint read_1820()//读出温度 { reset(); delay(200); write_s(0xcc);//发送命令

write_s(0x44);//发送转换命令

reset(); delay(1); write_s(0xcc);

write_s(0xbe); temp[0]=read_s(); temp[1]=read_s(); tem=temp[1]; tem<<=8; tem|=temp[0]; return tem; } void scan_led()//数据显示—数码管 { uchar i; for(i=0;i<4;i++) {

P0=tabs[display[i]];

P1=tabw[i];

delays(7);

if(i==1)

dian=0;

P1=tabw[i];

delays(2); } } void convert_t(uint tem)//温度转换{ uchar n=0; if(tem>6348) {

tem=65536-tem;

n=1; } display[4]=tem&0x0f; display[0]=ditab[display[4]];

display[4]=tem>>4;

display[3]=display[4]/100;

display[1]=display[4]%100;

display[2]=display[1]/10;

display[1]=display[1]%10; if(!display[3]) {

display[3]=0x0a; } if(!display[2])

display[2]=0x0a; if(n)

// 取百位数据暂存

// 取后两位数据暂存// 取十位数据暂存

{

n=0;

display[3]=0x0b; } } void main() { delay(0); delay(0); delay(0); P0=0xff; P1=0xff; for(h=0;h<4;h++)//初始化为零

{

display[h]=0; } reset(); write_s(0xcc); write_s(0x44); for(h=0;h<100;h++)//显示0保持

scan_led(); while(1) {

convert_t(read_1820());//读出并处理

scan_led();//显示温度

} }

第四篇:3Ds Max课程标准

《3DS MAX》课程标准

课程名称:3DS MAX ;代码:071001

5总学时数:110(理论课学时数:36实践课学时数:74)

适用专业:建筑设计技术专业建筑工程设计方向

1 课程概述

1.1 课程的性质

1、必修课、;

2、专业(理论)课、实验(训)课。

1.2、课程定位

本课程是建筑设计技术专业建筑工程设计方向的核心课程,主要培养学生作为绘图员、 助理设计师所应具备的专业知识、专业技能、职业素质和职业能力。前续课程是建筑制图和 建筑 CAD,后续课程是建筑设计。

1.3 课程设计思路

本课程以培养学生的职业能力为设置依据,以达到国家计算机辅助绘图员为培养目标, 根据国家计算机绘图员及行(企)业对计算机绘图员的基本要求设置课程的内容,按照项目 驱动的教学模式编排课程内容,在教学过程中,采用工程示例,体现工学结合,培养学生职 业岗位实际工作任务所需要的知识、能力、素质,为学生可持续的专业发展奠定良好基础。

2. 课程基本目标通

过本课程的学习,使学生理解掌握和用 3DS MAX 制作效果图的方法与技巧,学会室内 外模型的建立,材质的设置,灯光的创作及效果图的渲染出图,结合当前流行的渲染软件 Lightscape 和 VRAY 渲染器进行后期渲染制作,最终创作出理想的方案效果图。

1、知识目标:掌握计算机绘图的基本概念和基本知识,掌握 3DS MAX 软件的各种绘图命令知识和操作命令知识。

2、职业技能目标:掌握计算机绘图的基本技能和综合技能,通过课内实训,掌握建筑类方案效果图的绘制技能,达到设计院建筑类施工图的绘图职业能力。

3、职业素质养成目标:通过本课程的学习,培养理解建筑类设计图和竣工图的图纸标

准,制图规范和图纸质量要求的职业素质。 培养设计建筑类方案效果图的制图职业素质, 提高职 业就业能力。

4、 职业技能证书考核要求: 学习本课程以后, 要求考取国家计算机绘图员职业资格 (中级)技能证书。

3、课程教学内容及学时安排

3.1 课程主要内容说明

3DMAX 基础、建模、材质、灯光、渲染、Lightscape、vray 渲染器、三维图形的绘制及实际应用部分。

教学重点:建模、材质、灯光、渲染。

教学难点:Lightscape、vray 渲染器。本课程以培养学生的职业能力为设置依据,以达到国家计算机辅助绘图员为培养目标,根据国家计算机绘图员及行(企)业对计算机绘图员的基本要求设置课程的内容。

3.2 课程组织安排说明

按照项目驱动的教学模式编排课程内容,在立体图形绘制、平面方案设计、工程图绘制、绘图员综合训练模块的教学过程中,采用工程示例,体现工学结合,培养学生职业岗位实际 工作任务所需要的知识、能力、素质。

3.3 课程教学内容

专业课程(含课内实践)

4 实施建议

4.1 教学组织建议

本课程的教学原则和方法建议采用一体化教学、 示例演示操作并进行绘制方案效果图的实训教学;本课程的主要先修课程是计算机应用基础、建筑制图等课程;为加强动手能力的培养,建议实施计算机现场教学、虚拟职业工作环境、采用真实工程项目,利用计算机多媒 体技术开展教学。

4.2 教学评价建议

本课程教学目标是培养学生使用 3DS MAX 软件绘制建筑方案效果图,在教学过程中,不仅要培养学生掌握计算机绘制建筑方案效果图的综合能力,同时也要求学生通过国家计算机绘图员职业资格(中级)技能鉴定,因此建议对课程教学评价应考虑学生获取国家计算机

绘图员职业资格(中级)技能证书情况。

4.3 教材选用

本课程的教材编写应注重学生掌握绘图技能的实用性,强调项目驱动、工学结合,不仅要突出课程的基本知识学习,同时更应强调实训教学的重要性,通过实训教学,使学生能够更好地掌握计算机绘制建筑工程图的职业技能,为进一步的专业学习及日后的社会就业打下 坚实的知识基础及能力基础。

4.4 课程主讲教师和教学团队要求说明

课程主讲教师要求具有双师素质,良好的审美能力、教学能力、实践能力,并具有企业一线的工作经验。教学团队要求有3-5人,包括校内专业教师和来自企业一线具丰富设计经 验的兼职教师。

4.5 课程教学环境和条件要求

为保证教学顺利进行,故教学用机要求配置较高,需利用多媒体进行实例教学。

4.6 教学资源的开发与利用

本课程教学资源主要有教学的师资队伍、教学的仪器设备及教学的信息资料,对于仪器 设备开发应充分考虑工学结合的教学需要,合理利用仪器设备全面提高教学质量,对于信息 资料的建设,不仅要适应日常教学同时也要考虑学生就业。

4.7 其它

1、3DS MAX 是一门专业课程,涉及面广,要求学生在掌握软件的应用以外,还应有一 3DS 定的美术基础及审美修养。

2、本课程重点是培养学生的三维空间想象能力、分析能力,理论联系实际,培养学生 善于思考,实事求是的工作作风

3、本课程内容较为抽象,其中材质编辑为教学之难点,必须加以详尽的讲述。

第五篇:B20体卫艺工作

1、 体育教学计划

2、 大课间体育活动记录

3、 大型文艺演出活动记录

4、 队列比赛规程

5、 队列比赛成绩

6、 队列比赛总结

7、 广播操比赛规程

8、 广播操比赛成绩

9、 越野赛比赛成绩

10、 元旦文艺演出活动记录

11、 拔河比赛规程及成绩

12、 校园舞比赛规程、成绩

13、 体育活动课记录

14、 体育备课笔记

15、 体育特长生活动记录

16、 音乐活动记录

17、 艺体特长生档案记录

18、 预防传染病制度

19、 预防传染病措施

20、 常见病、传染病记录

本文来自 360文秘网(www.360wenmi.com),转载请保留网址和出处

【ds18b20课程设计报告】相关文章:

ds18b20程序07-30

我写ds18b20总结06-02

ds18b20简单介绍06-02

ds18b20学习总结06-02

ds18b20资料及程序06-16

ds18b20温度检测控制06-21

ds18b20详细中文资料06-21

ds18b20完整测试程序06-21

ds18b20温度控制器06-16

ds18b20温度传感器06-17

上一篇:gateface门面使用教程下一篇:86年属虎人全年运势