下载此文档

温控系统说明书.doc


文档分类:通信/电子 | 页数:约7页 举报非法文档有奖
1/7
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/7 下载此文档
文档列表 文档介绍
基于单片机的简单温控系统机控学院自动化12-2潘星光实现功能:利用单片机89C52和热电偶进行测量发热电阻的温度,利用LCD1602进行显示的温度和人工可设置温度的上限与下限值,即有两个按键是来控制上限值的大小,而另两个按键则是控制下限值的大小的。发热电阻从系统上电后就立即通电发热,设置好所需要温度范围,则测量温度显示的数值会随发热电阻通电时间的增大而增大,当测量的温度超出所设定的上限值时,就会驱动蜂鸣器报警,发热电阻停止通电,同时也会驱动马达扇风来降温;而当测量温度低于所设定的下限值时,也会进行报警,但电机不会被启动和发热电阻也继续通电发热。当然当测量温度在上限值和下限值之间时,是不会进行报警和驱动马达的,但发热电阻仍处于通电状态中。电路原理图:主程序:#include<>#include<>#include<>sbitds=P2^2;sbitbeep=P2^3;sbitrd=P3^7;sbitk=P1^0;bitflag;uchards_rom[8];ucharH,L,Key_value;voidTempDelay(ucharus){ while(us--);//}voidds_reset(){ ds=1; _nop_(); ds=0; TempDelay(80);//520us ds=1; TempDelay(5); if(ds==0) flag=1; else flag=0; TempDelay(20); ds=1;}bitds_read_bit(){ bitdat; ds=0; _nop_(); _nop_(); ds=1; _nop_(); dat=ds; TempDelay(12); returndat;}uchards_read_byte(){ uchari,j,value; for(i=0;i<8;i++) { j=ds_read_bit(); value=(j<<7)|(value>>1); } returnvalue;}voidds_write_byte(uchardat){ uchari,onebit; for(i=0;i<8;i++) { onebit=dat&0x01; if(onebit) //写1 { ds=0; TempDelay(1); ds=1; _nop_(); } else//写0 { ds=0; TempDelay(11); ds=1; _nop_(); } dat>>=1; }}voidds_change(){ ds_reset(); ds_write_byte(); ds_write_byte(0x44);}ucharget_temperature(){ uinttemp; uchara,b,c; ds_reset(); ds_write_byte(); ds_write_byte(0xbe); a=ds_read_byte(); b=ds_read_byte(); temp=b; temp<<=8; temp|=a; c=temp*; returnc;}voidkey(){ Key_value=P3; Key_value=Key_value&0x0f; if(Key_value!=0x0f) { delay(5); if(Key_va

温控系统说明书 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数7
  • 收藏数0 收藏
  • 顶次数0
  • 上传人bai1968104
  • 文件大小49 KB
  • 时间2020-09-11
最近更新