简易数字式温度计的设计(编辑修改稿)内容摘要:
return (flag)。 //返回检测成功标志 } /***************************************************** 函数功能:从 DS18B20读取一个字节数据 出口参数: dat ***************************************************/ uchar ReadOneChar(void) { uchar i=0。 uchar dat。 //储存读出的一个字节数据 for (i=0。 i8。 i++) { DQ =1。 // 先将数据线拉高 _nop_()。 //等待一个机器周期 DQ = 0。 //单片机从 DS18B20读书据时 ,将数据线从高拉低即启动读时序 _nop_()。 //等待一个机器周期 DQ = 1。 //将数据线 人为 拉高 ,为单片机检测 DS18B20的输出电平作准备 for(time=0。 time2。 time++)。 //延时约 6us,使主机在 15us 内采样 dat=1。 if(DQ==1) dat|=0x80。 //如果读到的数据是 1,则将 1存入 dat else dat|=0x00。 //如果读到的数据是 0,则将 0存入 dat //将单片机检测到的电平信号 DQ存入 r[i] for(time=0。 time8。 time++)。 //延时 3us,两个读时序之间必须有大于 1us的恢复期 } return(dat)。 //返回读出的十六进制数据 } /***************************************************** 函数功能:向 DS18B20写入一个字节数据 入口参数: dat ***************************************************/ WriteOneChar(uchar dat) { uchar i=0。 for (i=0。 i8。 i++) { DQ =1。 // 先将数据线拉高 _nop_()。 //等待一个机器周期 DQ=0。 //将数据线从高拉低时即启动写时序 DQ=datamp。 0x01。 //利用与运算取出要写的某位二进制数据 , //并将其送到数据线上等待 DS18B20采样 for(time=0。 time10。 time++)。 //延时约 30us, DS18B20在拉低后的约 15~60us期间从数据线上采样 DQ=1。 //释放数据线 for(time=0。 time1。 time++)。 //延时 3us,两个写时序间至少需要 1us的恢复期 dat=1。 //将 dat中的各二进制位数据右移 1位 } for(time=0。 time4。 time++)。 //稍作延时 ,给硬件一点反应时间 } /***************************************************** 函数功能:做好读温度的准备 ***************************************************/ void ReadyReadTemp(void) { Init_DS18B20()。 //将 DS18B20初始化 WriteOneChar(0xCC)。 // 跳过读序号列号的操作 WriteOneChar(0x44)。 // 启动温度转换 delaynms(200)。 //转换一次需要延时一段时间 Init_DS18B20()。 //将 DS18B20初始化 WriteOneChar(0xCC)。 //跳过读序号列号的操作 WriteOneChar(0xBE)。 //读取温度寄存器 ,前两个分别是温度的低位和高位 } /****************************************************************************** 以下是与温度有关的显示设置 ******************************************************************************/ /***************************************************** 函数功能:显示没有检测到 DS18B20 ***************************************************/ void display_error(void) { uchar i。 WriteAddress(0x00)。 //写显示地址,将在第 1行第 1列开始显示 i = 0。 //从第一个字符开始显示 while(Error[i] != 39。 \039。 ) //只要没有写到结束标志,就继续写 { WriteData(Error[i])。 //将字符常量写入 LCD i++。 //指向下一个字符 delaynms(100)。 //延时 100ms较长时间,以看清关于显示的说明 } WriteAddress(0x40)。 //写显示地址,将在第 1行第 1列开始显示 i = 0。 //从第一个字符开始显示 while(Error1[i] != 39。 \039。 ) //只要没有写到结束标志,就继续写 { WriteData(Error1[i])。 //将字符常量写入 LCD i++。 //指向下一个字符 delaynms(100)。 //延时 100ms较长时间,以看清关于显示的说明 } while(1) //进入死循环,等待查明原因。 } /***************************************************** 函数功能 :显示温度符号 ***************************************************/ void display_symbol(void) { uchar i。 WriteAddress(0x40)。 //写显示地址,将在第 2行第 1列开始显示 i = 0。 //从第一个字符开始显示 while(Temp[i] != 39。 \039。 ) //只要没有写到结束标志,就继续写 { WriteData(Temp[i])。 //将字符常量写入 LCD i++。 //指向下一个字符 delaynms(50)。 //延时 1ms给硬件一点反应时间 } } /***************************************************** 函数功能:显示温度的小数点 ***************************************************/ void display_dot(void) { WriteAddress(0x49)。 //写显示地址,将在第 2行第 10 列开始显示 WriteData(39。 .39。 )。 //将小数点的字符常量写入 LCD delaynms(50)。 //延时 1ms给硬件一点反应时间 } /***************************。简易数字式温度计的设计(编辑修改稿)
相关推荐
查表 选取225376m d mm 得 m=8 1 80d mm 蜗轮分度圆直径 8 40 32 0d m Z m m 中心距为 12 80 320 20202d m Za m m 计算蜗杆螺旋线升角 1 2a r c ta n a r c ta n 按齿根弯曲强度校核 查表 涡轮材料的基本许用弯曲应力为 39。 46F
义为 IR输 入端, 10脚和 11脚定义为 I2C总线控制端口,分别连接 N1 的 SDAS (18脚)和 SCLS (19脚)端口, 12脚、 27脚及 28脚定义为握手信号功能端口,连接主板 CPU的相应功能端 , 用于当前 制式的检测及会聚调整状态进入的控制功能。 AT89C51接口设计 如图 64所示,课题设计用 51系列单片机来对硬件控制,其中 P0口对应数码显示接口与
砂率少于 8%,胶体率不低于 90~ 95%。 ( 4)清孔泥浆标准应控制在比重 ~ ,粘度 18~ 20min,含砂率小于 4%。 ( 5)泥浆循环必须经沉淀池净化处理后方可重复使用。 泥浆循环系统的设置及排放 温岭市佳园住宅小区桩基工程 施工方案 20 ( 1)泥浆循环系统的设置,以设施简单,循环简单,循环可靠,清渣容易为原则。 ( 2)根据施工场地情况,循环系统由泥浆池、循环池
DGND75DGND76DGND77DGND78U1AD9854ASVZD0D1D2D3D4D5D6D7DVDDGNDADDR0ADDR1ADDR2ADDR3ADDR4ADDR5UDCLK/WR/RDFDATADRAMPR9100 R10100GNDGNDVINNVINPR850GNDC927pFGNDI182nHC5C1047pFGNDI268nHC612pFC1139pFGNDI368nHC7
力索悬挂于支柱的支持装置上,使接触线在不增加支柱的情况下增加了悬挂点,利用调整吊弦长度,使接触线在整个跨距内 对轨面的距离保持一致。 链形悬挂减小了接触线在跨距中间的弛度,改善了弹性,增加了悬挂重量,提高了稳定性,可以满足电力机车高速运行取流的要求。 链形悬挂比简单悬挂得到了较好的性能,但也带来了结构复杂、造价高、施工和维修任务量大等许多问题。 链形悬挂分类方法较多,按悬挂链数的多少可分为单链形
设计要求、施工技术要求和质量标准贯彻到基层以至现场工作人员的有效方法,是技术管理工作中的一个重要环节。 包括施工图纸交底,施工技术措施交底以及安全技术交底等。 这项交底工作分别由项目部技术负责人,施工队长,作业班组长分级组织进行。 施工组织设计先由项目部技术负责人负责 向有关施工队,技术干部及职能部门有关人员交底,最后由单位工程负责人向参加施工的班组长和作业人员交底,并认真讨论贯彻落实。