51单片机lcd1602显示温度源程序18b20测温_第1页
51单片机lcd1602显示温度源程序18b20测温_第2页
免费预览已结束,剩余7页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、个人资料整理 仅限学习使用1 / 7/III/=/b5E2RGbCAP/=作者:Ni 的年少 WAO 轻狂=/plEanqFDPw/=创建时间:2008.07.03 =/DXDiTa9E3d/=/RTCrpUDGiT/5PCzVD7HxA/jLBHrnAlLg/ DS18b20 温度传感器/*注:1、当用到循环左移或右移时 或 ),不能超出变的范围例如:un sig ned char i,j。j=(i4得到的结果出错。un sig ned char j。unsignedint i。j=(i4。得到的结果正确-biPODXADClKTAL2RSTFu1/ADlP&.2XAD2PD 3怕D

2、3FO.OAIKP0./AMP0.7XAD7卩工唤PSEN叱担P2.-3/A11ALEP2.4/A1JEAP1J5JA1SP2J8M14P2.7;A15P1.DP3.O/RXDP1.1PMPI.2P3.2/INTDPI.3P3 3/INTIPI.4PI.5F3.57T1Pl.6p财硕PI.7F3.7/1RDis.代旳匚引203Q_3i85SBSaBb?4毎-R1JLCD1twiceweDOOND 3S1SB2F:斗It26,2L2816NOU TEF1P:-49163iishenton9弍.I:个人资料整理 仅限学习使用2 / 72、LCD 的清屏时间 1.64ms。*/#in cludere

3、g51.h#i ncludeLCD1602.h#in elude vintrin s.h#defi ne uchar un sig ned char#defi ne uint un sig ned int uchartmp4=0,0,0,0。#i ncludeDS18B20.h/ 主程序 /void mai n(voiduchar temp。LCD_i nit(。LCD_write_command(0 x01。/ 清屏显示 Delay_50Us(50。gotoxy(2,1。LCD_display(NOW TEMP:。gotoxy(2,2。LCD_display(163qishentong。De

4、lay_2Us(200。temp=Ds18b20_Read_Temperature(。Delay_50Us(1000。 /空读一次,读出默认的85while(1gotoxy(12,1。change(。/Delay_2Us(200。LCD_display(tmp。Delay_50Us(100。/*= 作者:Ni 的年少 WAo 疯狂=创建时间:2008.06.20=*/#define LCD_DB P0定义 LCD 的数据端口sbit LCD_RS=P2A0sbit LCD_RW=P2A1。sbit LCD_E=P2A2#defi ne uchar un sig ned charxHAQX74J

5、0XLDAYtRyKfE个人资料整理 仅限学习使用3 / 7#defi ne uint un sig ned int个人资料整理 仅限学习使用4 I 7/=延时子函数= void delay( uint xuinti,j。for(i=x。i0。i-for(j=0。j。/=写 指令函数=voidLCD_write_comma nd(uchar comma nd LCD_DB=comma nd。LCD_RS=0 / 指令LCD_RW=0 / 写入LCD_E=1LCD_E=0delay(1。II 等待执行完毕。/=写数据函数=voidLCD_write_data(uchardatLCD_DB=dat

6、LCD_RS=1 II 数据寄存器LCD_RW=0 II 写入数据LCD_E=1LCD_E=0delay(1。II 等待程序执行完毕。I*=显示一个字符子函数=voidLCD_disp_char(ucharx,uchar y, uchardat uchar address。if(y=1address=0 x80+x。elseaddress=OxcO+x。LCD_write_command(address。LCD_write_data(dat。=*III=延时 1=void delay1( uint xuinti,j。for(j=0。jfor(i=0。i。II=初始化函数= voidLCD_i

7、nit(void个人资料整理 仅限学习使用5 / 7LCD_write_command(0 x38。II 设置 8 位格式,2 行,5*7LCD_write_command(OxOc。/整体显示,关光标,不闪烁LCD_write_command(0 x06。/设定输入方式,增量不移位LCD_write_command(OxO1。/ 清屏显示 delay(200。/=光标定位= voidgotoxy(ucharx,uchar y / x 表示列,y 表示行 uchar address。if(y=1address=0 x80+x。elseaddress=OxcO+x。LCD_write_comma

8、nd(address。/=显示一个字符串= voidLCD_display(uchar*dat while(*dat!=OLCD_write_data(*dat。dat+。/Zzz6ZB2Ltk/0vzfvkwMI1/=/qyn14ZNXI/=作者:Ni 的年少 WAo 轻狂=/EmxvxOtOco/=创建时间:2008.07.03=/SixE2yXPq5/=/SewMyirQFL/kavU42VRUs/y6v3ALoS89/M2ub6vST nP/ Ds18b20 引脚分配 /0YujCfmUCwsbit DQ=P3A1。/eUts8ZQVRd/延时子程序/sQsAEJkW5Tvoid De

9、lay_2Us(uint us / 微妙延时 while(-us。void Delay_50Us(uint t / 毫秒延时 ucharj。for(。t0。t-个人资料整理 仅限学习使用6 / 7for(j=19。j0。j-。/DS18b20 初始化 /DQ = 1。/拉高总线zvpgeqJ1hkDelay_2Us(5。/稍做延时后while(DQ。/若 x=0 则初始化成功,若 x=1 则初始化失败Delay_2Us(20。/NrpoJac3v1/写一个字节的数据/1no wfTG4KIvoid Ds18b20_Write(uchardatuchar i。for(i=0。iDQ = 0。_n

10、op_(。DQ=dat&0 x01。Delay_2Us(20。DQ = 1。dat=1。/读一个字节的数据/ ucharDs18b20_Read(voiduchari,dat。dat=0。/void Ds18b20_l ni tial(voidDQ = 1。_nop_(。DQ = 0。Delay_50Us(12。/ DQt 位7EqZcWLZNXTIrRGchYzg精确延时,大于 480uSlzq7IGf02EGMslasNXkAfjnFLDa5ZotfnNhnE6e5个人资料整理 仅限学习使用7 / 7for(i=8。i0。i- DQ = 0。dat=1。DQ = 1。个人资料整理

11、仅限学习使用8 / 7_nop_(。if(DQ dat=dat|0 x80。Delay_2Us(20。return(dat。/读两个字节的温度值/ ucharDs18b20_Read_Temperature(void uchar temp1,temp。int temp2。Ds18b20_Initial(。Ds18b20_Write(0 xcc。Ds18b20_Write(0 x44。Delay_2Us(200。Ds18b20_lnitial(。 Ds18b20_Write(0 xcc。Ds18b20_Write(0 xbe。Delay_2Us(200。temp 仁 Ds18b20_Read(。

12、 temp2=Ds18b20_Read(。temp=(temp1|(temp24 。 return temp。void cha nge(voiduchartp4,temp。temp=Ds18b20_Read_Temperature(。Delay_2Us(250。if(temp&0 xc0=0 xc0temp=temp+1。tp1=(temp/10%10+0。tp2=temp%10+0。tp3=0。 if(tp1=0tmp0=。tmp1=-。tmp2=tp2。 tmp3=0。elsetmpO=-。tmp1=tp1。tmp2=tp2。 tmp3=0。HbmVN777sLV7l4jRB8个人资料整理 仅限学习使用9 / 7else tp0=(temp/100%10+0。 tp1=(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论