久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 1148|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)智能電飯鍋程序Proteus仿真原理圖

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
全部在壓縮包里面


單片機(jī)源程序如下:
  1. #include "reg52.h"
  2. #include "intrins.h"
  3. #include "onewire.h"

  4. sfr AUXR=0x8e;

  5. sbit S30=P3^0;unsigned int KEY_zhufan=0;
  6. sbit S31=P3^1;unsigned int KEY_dingshi=0;
  7. sbit S32=P3^2;unsigned int KEY_jia=0;
  8. sbit S33=P3^3;unsigned int KEY_jian=0;

  9. unsigned char SMG[10]={0x3f,0x06,0x5b,0x4f,0x66,
  10. 0x6d,0x7d,0x07,0x7f,0x6f};
  11. unsigned char SMG_DOT[10]={0xbf,0x86,0xdb,0xbf,0xe6,
  12. 0xed,0xfd,0x87,0xff,0xef};
  13. unsigned char WMG[6]={0xfe,0xfd,0xfb,0xf7,0XEF,0XDF};

  14. unsigned int temp;unsigned int decide_temp=30;
  15. unsigned int number=120;unsigned int frequency=0;
  16. void Delay(unsigned int t){
  17. while(t--);
  18. }

  19. void put_one(unsigned int pos,unsigned char dat){
  20. P2=WMG[pos];
  21. P0=dat;
  22. }

  23. void put_temp(){
  24. put_one(0,0x00);
  25. Delay(100);
  26. put_one(1,0x00);
  27. Delay(100);
  28. put_one(2,0x00);
  29. Delay(100);
  30. put_one(3,SMG[(temp/100)%10]);
  31. Delay(100);
  32. put_one(4,SMG[(temp/10)%10]);
  33. Delay(100);
  34. put_one(5,SMG[temp%10]);
  35. Delay(100);
  36. }

  37. void put_temp_dingshi(){
  38. put_one(0,SMG[(number/100)%10]);
  39. Delay(100);
  40. put_one(1,SMG[(number/10)%10]);
  41. Delay(100);
  42. put_one(2,SMG[number%10]);
  43. Delay(100);
  44. put_one(3,0x00);
  45. Delay(100);
  46. put_one(4,SMG[(temp/10)%10]);
  47. Delay(100);
  48. put_one(5,SMG[temp%10]);
  49. Delay(100);
  50. }
  51. void Delay_temp(unsigned int t){
  52. while(t--){
  53.   put_temp();
  54. }
  55. }

  56. void DS28B20_temp(){
  57. unsigned char LSB,MSB;
  58.         
  59. init_ds18b20();
  60. Write_DS18B20(0xcc);
  61. Write_DS18B20(0x44);

  62. Delay_temp(200);

  63. init_ds18b20();
  64. Write_DS18B20(0xcc);
  65. Write_DS18B20(0xbe);
  66.         
  67. LSB=Read_DS18B20();
  68. MSB=Read_DS18B20();

  69. temp=MSB;
  70. temp=(temp<<8)|LSB;

  71. temp=temp*0.0625;
  72. }



  73. void DS28B20_temp_dingshi(){
  74. unsigned char LSB,MSB;
  75.         
  76. init_ds18b20();
  77. Write_DS18B20(0xcc);
  78. Write_DS18B20(0x44);

  79. Delay(200);

  80. init_ds18b20();
  81. Write_DS18B20(0xcc);
  82. Write_DS18B20(0xbe);
  83.         
  84. LSB=Read_DS18B20();
  85. MSB=Read_DS18B20();

  86. temp=MSB;
  87. temp=(temp<<8)|LSB;

  88. temp=temp*0.0625;
  89. }
  90. void put_number(){
  91. put_one(0,SMG[(number/100)%10]);
  92. Delay(100);
  93. put_one(1,SMG[(number/10)%10]);
  94. Delay(100);
  95. put_one(2,SMG[number%10]);
  96. Delay(100);
  97. put_one(3,0x00);
  98. Delay(100);
  99. put_one(4,0x00);
  100. Delay(100);
  101. put_one(5,0x00);
  102. Delay(100);
  103. }
  104. void Init_timer0(void)
  105. {
  106.         AUXR &= 0x7F;
  107.         TMOD &= 0xF0;                        
  108.         TL0 = 0x00;                                
  109.         TH0 = 0xDC;                                
  110.         TF0 = 0;                                                               
  111.         TR0=1;
  112.   
  113.   ET0=1;
  114.   EA=1;        
  115. }
  116. void Timer0_break()interrupt 1
  117. {
  118.   frequency++;   
  119.         if(frequency==100*60){
  120.           if(number==0){
  121.           TR0=0;
  122.                 KEY_zhufan=0;KEY_dingshi=0;KEY_jia=0;KEY_jian=0;
  123.           }
  124.           if(number!=0){
  125.           number--;
  126.           frequency=0;
  127.           }
  128.         }
  129. }


  130. void OFF(){
  131. put_one(0,0x5c);//0101 1100
  132. Delay(100);
  133. put_one(1,0x71);
  134. Delay(100);
  135. put_one(2,0x71);
  136. Delay(100);
  137. put_one(3,0x00);
  138. Delay(100);
  139. put_one(4,0x00);
  140. Delay(100);
  141. put_one(5,0x00);
  142. Delay(100);
  143. }
  144. void KEY(){
  145. if(S30==0){
  146.   Delay(30000);
  147.         if(S30==1){
  148.         KEY_zhufan=1;
  149.         KEY_dingshi=0;
  150.         KEY_jia=0;KEY_jian=0;
  151.         }
  152. }
  153. if(S31==0){
  154.   Delay(30000);
  155.         if(S31==1){
  156.         KEY_jia=0;KEY_jian=0;KEY_zhufan=0;
  157.         KEY_dingshi=1;
  158.         Init_timer0();
  159.         }
  160. }
  161. if(S32==0){
  162.   Delay(30000);
  163.         if(S32==1){
  164.         KEY_zhufan=0;KEY_dingshi=0;KEY_jian=0;
  165.         number+=10;
  166.         KEY_jia=1;
  167.         }
  168. }
  169. if(S33==0){
  170.   Delay(30000);
  171.         if(S33==1){
  172.         KEY_zhufan=0;KEY_dingshi=0;KEY_jia=0;
  173.         number-=10;
  174.         KEY_jian=1;
  175.         }
  176. }

  177. }

  178. void main(){
  179.         P1=0x7f;
  180. while(1){
  181.         KEY();
  182. if(KEY_jia+KEY_jian+KEY_zhufan+KEY_dingshi==0){
  183. OFF();
  184. }
  185. if(KEY_jia==1||KEY_jian==1){
  186.   put_number();
  187. }
  188. if(KEY_zhufan==1){
  189.    DS28B20_temp();
  190.    //put_temp();
  191.          if(temp>=decide_temp){
  192.          P1=0x3f;     //0011 1111
  193.          put_temp();
  194.          KEY_zhufan=0;
  195.          }
  196.          if(temp<decide_temp){
  197.          P1=0xff;     //1111 1111
  198.          put_temp();
  199.          }
  200. }
  201. if(KEY_dingshi==1){
  202.    DS28B20_temp_dingshi();
  203.          if(temp>=decide_temp){
  204.                   P1=0x3f;
  205.             put_temp_dingshi();
  206.                         
  207.          }
  208.          if(temp<decide_temp){
  209.       P1=0xff;
  210.                   put_temp_dingshi();
  211.                  
  212.          }
  213. }

  214. }
  215. }
復(fù)制代碼


仿真程序.7z

103.1 KB, 下載次數(shù): 0, 下載積分: 黑幣 -5

代碼

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂1 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 午夜免费 | 在线只有精品 | 成人黄视频在线观看 | 欧美不卡 | 欧美九九九 | 一区二区在线 | 麻豆国产一区二区三区四区 | 欧美在线看片 | 成人性视频在线播放 | 日韩毛片在线视频 | 成人三级在线观看 | 人成在线视频 | 美女一区 | 欧美在线一区二区三区 | 天堂va在线 | 亚洲一区二区在线播放 | 欧美一区二区三区 | 日韩美女在线看免费观看 | 久久久青草婷婷精品综合日韩 | 精品国产乱码久久久久久影片 | 99精品久久| 中文字幕一区二区在线观看 | 在线观看精品 | 一级片网址 | 91视频正在播放 | 超碰97免费观看 | 国产在线精品一区二区三区 | www四虎影视 | 成人性生交a做片 | 99精品视频在线观看 | 成人精品一区 | aaaaaa大片免费看最大的 | 黄色网址大全在线观看 | 在线视频一区二区三区 | 色综合久久天天综合网 | 日本亚洲欧美 | 久久国产精品久久国产精品 | 国产精品视频不卡 | 视频一区二区中文字幕 | 欧美黑人国产人伦爽爽爽 | 日韩在线观看 |