{"id":169,"date":"2010-07-05T12:28:00","date_gmt":"2010-07-05T12:28:00","guid":{"rendered":"http:\/\/www.fujiangyun.com\/?p=169"},"modified":"2010-07-05T12:28:00","modified_gmt":"2010-07-05T12:28:00","slug":"%e6%b8%a9%e6%8e%a7%e6%ad%a5%e8%bf%9b%e7%94%b5%e6%9c%ba","status":"publish","type":"post","link":"https:\/\/www.fujiangyun.com\/blog\/?p=169","title":{"rendered":"\u6e29\u63a7\u6b65\u8fdb\u7535\u673a-\u8fd9\u662f\u7ed9\u5b9d\u7231\u5983\u5f04\u7684"},"content":{"rendered":"<p style=\"text-align: center;\"><a href=\"http:\/\/www.fujiangyun.com\/wp-content\/uploads\/2010\/07\/1.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-174\" title=\"wenkong\" src=\"http:\/\/www.fujiangyun.com\/wp-content\/uploads\/2010\/07\/1-165x300.jpg\" alt=\"\" width=\"290\" height=\"414\" \/><\/a><a href=\"http:\/\/www.fujiangyun.com\/wp-content\/uploads\/2010\/07\/\u539f\u7406\u56fe.jpg\"><\/a><\/p>\n<p>\/***************************************************<br \/>\n\u8981\u6c42\u7535\u52a8\u673a\u7684\u8f6c\u901f\u968f\u5916\u90e8\u73af\u5883\u6e29\u5ea6\u7684\u53d8\u5316\u800c\u53d8\u5316\uff0c\u5177\u4f53\u7684\u8981\u6c42\u662f\uff1a<br \/>\n\u5916\u90e8\u6e29\u5ea6\u65f6\uff0c\u7535\u52a8\u673a\u5728L298\u9a71\u52a8\u4e0b\u52a0\u901f\u6b63\u8f6c\uff0c\u6e29\u5ea6\u65f6\u7535\u52a8\u673a\u5168\u901f<br \/>\n\u6b63\u8f6c\uff1b\u5f53\u5916\u90e8\u6e29\u5ea6\u65f6\u7535\u52a8\u673a\u52a0\u901f\u53cd\u8f6c\uff0c\u6e29\u5ea6\u65f6\u7535\u52a8\u673a\u5168\u901f\u53cd\u8f6c\uff1b\u6e29<br \/>\n\u5ea6\u56de\u5230\u4e4b\u95f4\u65f6\u7535\u52a8\u673a\u9010\u6e10\u505c\u6b62\u8f6c\u52a8\u3002<br \/>\n********************************************************\/<\/p>\n<p>#include&lt;reg51.h&gt;<br \/>\n#define uchar unsigned char<br \/>\n#define uint  unsigned int<br \/>\n#define uint8 unsigned char<br \/>\n#define uint16 unsigned int<br \/>\nuint delaynum,flag,dingflag,dingnum;<br \/>\nsbit lcdrs = P3^0;<br \/>\nsbit lcdrw = P3^1;<br \/>\nsbit lcden = P3^3;<\/p>\n<p>sbit DQ = P1^0;<br \/>\nuchar Temp_Value;<br \/>\nuint8 TEMP_ERR;<\/p>\n<p>uchar code lbj[15]  = &#8221; 0605044225 ZCF&#8221;;<br \/>\nuchar code num[10]  = &#8220;0123456789&#8221;;<br \/>\nuchar code speed[6] = &#8220;speed:&#8221;;<br \/>\nuchar code danw[4]  = &#8220;r\/s.&#8221;;<br \/>\nuchar code test[15] = &#8221; Waitting 3s.  &#8220;;<\/p>\n<p>uchar code hz[16]  = {<br \/>\n      0xFF,0xE4,0xE4,0xE7,0xF4,0xF4,0xFF,0x00, \/\/&#8221;\u6b63&#8221;\u5b57<br \/>\n      0xE2,0xFC,0xF0,0xFE,0xFA,0xF4,0xFA,0x00  \/\/&#8221;\u53cd&#8221;\u5b57<br \/>\n      };<\/p>\n<p>void delayms(uint z)<br \/>\n{<br \/>\n uint i,j;<br \/>\n for(i=z;i&gt;0;i&#8211;)<br \/>\n  for(j=124;j&gt;0;j&#8211;);<br \/>\n}<\/p>\n<p>void lcd_write_com(uchar com) \/\/\u6db2\u6676\u5199\u6307\u4ee4\u51fd\u6570<br \/>\n{<br \/>\n lcdrw = 0;<br \/>\n lcdrs = 0;<br \/>\n P0 = com;<br \/>\n delayms(5);<br \/>\n lcden = 1;<br \/>\n delayms(5);<br \/>\n lcden = 0;<br \/>\n}<\/p>\n<p>void lcd_write_dat(uchar dat) \/\/\u6db2\u6676\u5199\u6570\u636e\u51fd\u6570<br \/>\n{<br \/>\n lcdrw = 0;<br \/>\n lcdrs = 1;<br \/>\n P0 = dat;<br \/>\n delayms(5);<br \/>\n lcden = 1;<br \/>\n delayms(5);<br \/>\n lcden = 0;<br \/>\n}<\/p>\n<p>void lcd_init()    \/\/\u6db2\u6676\u521d\u59cb\u5316\u51fd\u6570<br \/>\n{<br \/>\n lcden = 0;<br \/>\n lcd_write_com(0x38);<br \/>\n lcd_write_com(0x0c);<br \/>\n lcd_write_com(0x06);<br \/>\n lcd_write_com(0x01);<br \/>\n lcd_write_com(0x80);<br \/>\n}<\/p>\n<p>void TEMP_Delay(uint16 i)<br \/>\n{<br \/>\n while(i&#8211;);<br \/>\n}<br \/>\nvoid TEMP_INITIALIZE()<br \/>\n{<br \/>\n DQ=1;<br \/>\n TEMP_Delay(8);<br \/>\n DQ=0;<br \/>\n TEMP_Delay(80);<br \/>\n DQ=1;<br \/>\n TEMP_Delay(14);<br \/>\n TEMP_ERR=DQ;<br \/>\n TEMP_Delay(20);<br \/>\n}<\/p>\n<p>uint8 TEMP_Read_Char()<br \/>\n{<br \/>\n uint8 i;<br \/>\n uint8 dat;<br \/>\n for(i=0;i&lt;8;i++)<br \/>\n {<br \/>\n  DQ=0;<br \/>\n  dat&gt;&gt;=1;<br \/>\n  DQ=1;<br \/>\n  if(DQ==1)<br \/>\n   dat|=0x80;<br \/>\n  TEMP_Delay(4);<br \/>\n }<br \/>\n return dat;<br \/>\n}<\/p>\n<p>void TEMP_Write_Char(uint8 dat)<br \/>\n{<br \/>\n uint8 i;<br \/>\n for(i=0;i&lt;8;i++)<br \/>\n {<br \/>\n  DQ=0;<br \/>\n  DQ=dat&amp;0x01;<br \/>\n  TEMP_Delay(5);<br \/>\n  DQ=1;<br \/>\n  dat&gt;&gt;=1;<br \/>\n }<br \/>\n}<\/p>\n<p>void TEMP_Read()<br \/>\n{<br \/>\n uint8 a,b;<br \/>\n TEMP_INITIALIZE();<br \/>\n TEMP_Write_Char(0xcc);<br \/>\n TEMP_Write_Char(0x44);<br \/>\n TEMP_Delay(100);<br \/>\n TEMP_INITIALIZE();<br \/>\n TEMP_Write_Char(0xcc);<br \/>\n TEMP_Write_Char(0xbe);<br \/>\n TEMP_Delay(100);<br \/>\n a=TEMP_Read_Char();<br \/>\n b=TEMP_Read_Char();<br \/>\n Temp_Value=b&lt;&lt;4;<br \/>\n Temp_Value+=(a&amp;0xf0)&gt;&gt;4;<br \/>\n}<\/p>\n<p>void main()<br \/>\n{<br \/>\n uchar i;<br \/>\n lcd_init();<br \/>\n delaynum = 0;<br \/>\n flag = 0;<br \/>\n dingflag = 0;<br \/>\n dingnum = 0;<br \/>\n lcd_write_com(0x40);<br \/>\n for(i=0;i&lt;16;i++)<br \/>\n  lcd_write_dat(hz[i]);<br \/>\n lcd_write_com(0x80);<br \/>\n for(i=0;i&lt;15;i++)<br \/>\n  lcd_write_dat(lbj[i]);<br \/>\n lcd_write_com(0x80+0x40);<br \/>\n for(i=0;i&lt;15;i++)<br \/>\n  lcd_write_dat(test[i]);<br \/>\n delayms(3000);<br \/>\n EA = 1;<br \/>\n ET0 = 1;<br \/>\n TH0 = 0x3c;<br \/>\n TL0 = 0xb0;<br \/>\n lcd_write_com(0x80+0x40);<br \/>\n lcd_write_dat(&#8216; &#8216;);<br \/>\n for(i=0;i&lt;6;i++)<br \/>\n  lcd_write_dat(speed[i]);<br \/>\n lcd_write_dat(&#8216; &#8216;);<br \/>\n lcd_write_dat(&#8216; &#8216;);<br \/>\n for(i=0;i&lt;4;i++)<br \/>\n  lcd_write_dat(danw[i]);<br \/>\n lcd_write_dat(&#8216; &#8216;);<br \/>\n lcd_write_dat(&#8216; &#8216;);<br \/>\n lcd_write_dat(0xdf);<br \/>\n TR0 = 1;<br \/>\n while(1)<br \/>\n {<br \/>\n  if(flag==0)  \/\/\u505c\u8f6c<br \/>\n  {<br \/>\n   P2 = 0x00;<br \/>\n  }<br \/>\n  if(flag==1)  \/\/\u6b63\u8f6c<br \/>\n  {<br \/>\n   P2 = 0x07;<br \/>\n   delayms(delaynum);<br \/>\n   P2 = 0x0b;<br \/>\n   delayms(delaynum);<br \/>\n   P2 = 0x0d;<br \/>\n   delayms(delaynum);<br \/>\n   P2 = 0x0e;<br \/>\n   delayms(delaynum);<br \/>\n  }<br \/>\n  if(flag==2)  \/\/\u53cd\u8f6c<br \/>\n  {<br \/>\n   P2 = 0x0e;<br \/>\n   delayms(delaynum);<br \/>\n   P2 = 0x0d;<br \/>\n   delayms(delaynum);<br \/>\n   P2 = 0x0b;<br \/>\n   delayms(delaynum);<br \/>\n   P2 = 0x07;<br \/>\n   delayms(delaynum);<br \/>\n  }<br \/>\n }<br \/>\n}<\/p>\n<p>void intt0() interrupt 1<br \/>\n{<br \/>\n TH0 = 0x3C;<br \/>\n    TL0 = 0x0B0;<br \/>\n dingnum++;<br \/>\n if(dingnum==100)<br \/>\n {<br \/>\n  TR0 = 0;<br \/>\n  dingnum = 0;<br \/>\n  TEMP_Read();<br \/>\n  lcd_write_com(0x80+0x40+13);<br \/>\n  lcd_write_dat(num[Temp_Value\/10]);<br \/>\n  lcd_write_dat(num[Temp_Value%10]);<br \/>\n  if(Temp_Value&gt;0&amp;&amp;Temp_Value&lt;=10)<br \/>\n  {<br \/>\n   if(flag==0)<br \/>\n   {<br \/>\n    flag = 2;<br \/>\n    delaynum=50;<br \/>\n   }<br \/>\n   else<br \/>\n   {<br \/>\n    flag = 2;<br \/>\n    switch(delaynum)<br \/>\n    {<br \/>\n     case 50:<br \/>\n      delaynum = 40;break;<br \/>\n     case 40:<br \/>\n      delaynum = 30;break;<br \/>\n     case 30:<br \/>\n      delaynum = 20;break;<br \/>\n     case 20:<br \/>\n      delaynum = 10;break;<br \/>\n     default:<br \/>\n      break;<br \/>\n    }<br \/>\n   }<br \/>\n  }<br \/>\n  else if(Temp_Value&lt;=0)<br \/>\n  {<br \/>\n   flag = 2;<br \/>\n   delaynum = 10;<br \/>\n  }<br \/>\n  else if(Temp_Value&gt;=75)<br \/>\n  {<br \/>\n   flag = 1;<br \/>\n   delaynum = 10;<br \/>\n  }<br \/>\n  else if(Temp_Value&gt;=45&amp;&amp;Temp_Value&lt;75)<br \/>\n  {<br \/>\n   if(flag==0)<br \/>\n   {<br \/>\n    flag = 1;<br \/>\n    delaynum=50;<br \/>\n   }<br \/>\n   else<br \/>\n   {<br \/>\n    flag = 1;<br \/>\n    switch(delaynum)<br \/>\n    {<br \/>\n     case 50:<br \/>\n      delaynum = 40;break;<br \/>\n     case 40:<br \/>\n      delaynum = 30;break;<br \/>\n     case 30:<br \/>\n      delaynum = 20;break;<br \/>\n     case 20:<br \/>\n      delaynum = 10;break;<br \/>\n     default:<br \/>\n      break;<br \/>\n    }<br \/>\n   }<br \/>\n  }<br \/>\n  else if(Temp_Value&gt;0&amp;&amp;Temp_Value&lt;45)<br \/>\n  {<br \/>\n   flag = 0;<br \/>\n  }<br \/>\n  if(flag==0)<br \/>\n  {<br \/>\n   lcd_write_com(0x80+0x40);<br \/>\n   lcd_write_dat(&#8216; &#8216;);<br \/>\n   lcd_write_com(0x80+0x40+7);<br \/>\n   lcd_write_dat(num[0]);<br \/>\n   lcd_write_dat(num[0]);<br \/>\n  }<br \/>\n  else<br \/>\n  {<br \/>\n   lcd_write_com(0x80+0x40);<br \/>\n   lcd_write_dat(flag-1);<br \/>\n   lcd_write_com(0x80+0x40+7);<br \/>\n   lcd_write_dat(num[(60-delaynum)\/10]);<br \/>\n   lcd_write_dat(num[(60-delaynum)%10]);<br \/>\n  }<br \/>\n  TR0 = 1;<br \/>\n }<br \/>\n}<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u8981\u6c42\u7535\u52a8\u673a\u7684\u8f6c\u901f\u968f\u5916\u90e8\u73af\u5883\u6e29\u5ea6\u7684\u53d8\u5316\u800c\u53d8\u5316\uff0c<br \/>\n\u5177\u4f53\u7684\u8981\u6c42\u662f\uff1a\u5916\u90e8\u6e29\u5ea6\u65f6\uff0c\u7535\u52a8\u673a\u5728L298\u9a71\u52a8\u4e0b\u52a0\u901f\u6b63\u8f6c\uff0c\u6e29\u5ea6\u65f6\u7535\u52a8\u673a\u5168\u901f\u6b63\u8f6c\uff1b\u5f53\u5916\u90e8\u6e29\u5ea6\u65f6\u7535\u52a8\u673a\u52a0\u901f\u53cd\u8f6c\uff0c\u6e29\u5ea6\u65f6\u7535\u52a8\u673a\u5168\u901f\u53cd\u8f6c\uff1b\u6e29\u5ea6\u56de\u5230\u4e4b\u95f4\u65f6\u7535\u52a8\u673a\u9010\u6e10\u505c\u6b62\u8f6c\u52a8\u3002<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[10,11,12,29,31,37,41],"class_list":["post-169","post","type-post","status-publish","format-standard","hentry","category-4","tag-cc","tag-c51","tag-c","tag-29","tag-31","tag-37","tag-41"],"_links":{"self":[{"href":"https:\/\/www.fujiangyun.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/169","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.fujiangyun.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.fujiangyun.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.fujiangyun.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.fujiangyun.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=169"}],"version-history":[{"count":0,"href":"https:\/\/www.fujiangyun.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/169\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.fujiangyun.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=169"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.fujiangyun.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=169"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.fujiangyun.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=169"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}