shtxx_self.lst

来自「这是单片机驱动温湿度传感器SHT11温湿度传感器的源代码」· LST 代码 · 共 1,493 行 · 第 1/5 页

LST
1,493
字号
1149   1                      {
1150   1                              i = ISendStr_16(0xa0,v,3*v);
1151   1                      }
1152   1                      lcd_wrd(0x30+(uchar)i); 
1153   1              }
1154   1      */
1155   1      
1156   1      // read rom   set address
1157   1      /*
1158   1              lcd_add(3,1);
1159   1              for(v=0x0000;v<8;v++)
1160   1              {
1161   1                      i = IRcvStr_16(0xa0,v);
1162   1      //              lcd_wrc(0x88+2*v);
1163   1                      lcd_dis_num(i);
1164   1              }
1165   1      */
1166   1      
1167   1      //      set_time(30,13,21,1,12,3,7);            //时钟设置sec, min, hr, dy, dt, mn, yr
1168   1      
C51 COMPILER V7.07   SHTXX_SELF                                                            06/14/2007 21:21:35 PAGE 20  

1169   1      
1170   1      //ad中断相关
1171   1      /*
1172   1      //      IE = IE&0X81;           //1000 0001
1173   1              EA = 0;
1174   1              EX0 = 1;
1175   1      //      TCON
1176   1              IT0 = 1;
1177   1      */
1178   1      /*
1179   1              lcd_add(4,1);
1180   1              lcd_dis_num_1(12589);
1181   1              lcd_add(4,2);
1182   1              lcd_dis_num_2(12589);
1183   1              lcd_add(4,4);
1184   1              lcd_dis_num_3(12589);
1185   1      */
1186   1              
1187   1              while(1)
1188   1              {
1189   2      
1190   2      //              cal_temp_humi();                
1191   2                      cal_basic();            ////计算温度和湿度年月日
1192   2                      lcd_add(1,1);
1193   2                      lcd_dis_num_2(20);
1194   2                      lcd_dis_num_2((uint)b_data.year);
1195   2                      lcd_dis_ch(0xc4,0xea);          //uchar h,uchar l);
1196   2                      lcd_wrd(0x20);
1197   2                      lcd_wrd(0x20);
1198   2                      lcd_add(1,5);
1199   2                      lcd_dis_num_2((uint)b_data.month);
1200   2                      lcd_dis_ch(0xd4,0xc2);
1201   2                      lcd_add(1,7);
1202   2                      lcd_dis_num_2((uint)b_data.date);
1203   2                      lcd_dis_ch(0xc8,0xd5);
1204   2                      lcd_add(2,1);
1205   2                      lcd_dis_ch(0xd0,0xc7);
1206   2                      lcd_dis_ch(0xc6,0xda);
1207   2      
1208   2                      lcd_dis_num_2((uint)b_data.day);
1209   2                      lcd_add(2,5);
1210   2                      lcd_dis_num_2((uint)b_data.hour);
1211   2                      lcd_wrd(0x3a);
1212   2      //              lcd_add(2,6);
1213   2                      lcd_dis_num_2((uint)b_data.minute);
1214   2                      lcd_wrd(0x3a);
1215   2      //              lcd_add(2,8);
1216   2                      lcd_dis_num_2((uint)b_data.second);
1217   2                      lcd_add(3,1);
1218   2                      lcd_dis_ch(0xca,0xaa);
1219   2                      lcd_dis_ch(0xb6,0xc8);
1220   2                      lcd_wrd(0x3a);
1221   2                      lcd_add(3,4);
1222   2                      lcd_dis_num_2((uint)b_data.humi);
1223   2      //              lcd_wrd(0x25);
1224   2                      lcd_dis_ch(0xa3,0xa5);
1225   2                      lcd_add(3,7);
1226   2                      lcd_dis_ch(0xc7,0xeb);
1227   2                      lcd_dis_ch(0xb0,0xb4);
1228   2                      lcd_add(4,1);
1229   2                      lcd_dis_ch(0xce,0xc2);
1230   2                      lcd_dis_ch(0xb6,0xc8);
C51 COMPILER V7.07   SHTXX_SELF                                                            06/14/2007 21:21:35 PAGE 21  

1231   2                      lcd_wrd(0x3a);
1232   2                      lcd_add(4,4);
1233   2                      lcd_dis_num_2((uint)b_data.temp);
1234   2                      lcd_dis_ch(0xa1,0xe6);
1235   2                      lcd_add(4,7);
1236   2                      lcd_dis_ch(0xc8,0xa1);
1237   2                      lcd_dis_ch(0xcf,0xfa);
1238   2      
1239   2              
1240   2      //              ldelay(200);
1241   2                      ldelay(200);
1242   2      
1243   2      
1244   2      
1245   2      //              lcd_dis_time();         //时钟显示函数
1246   2      //测试n次
1247   2      //              i = ad_ce_n();
1248   2      //              ldelay(80);
1249   2      
1250   2      /*
1251   2      //ad测试
1252   2                      dat_ad = ad_ce();
1253   2                      lcd_en();
1254   2                      lcd_add(2,1);
1255   2                      lcd_dis_num(dat_ad);
1256   2                      dat_ad_xian = (float)(dat_ad*1.28/2.048);
1257   2                      lcd_dis_num((uint)dat_ad_xian);
1258   2                      ldelay(80);
1259   2      
1260   2      
1261   2      /*
1262   2      //ad读
1263   2                      if(sta == 0)
1264   2                      {
1265   2                              P0 = 0XFF;
1266   2                              delay(50);
1267   2      
1268   2                              if(sta == 0)
1269   2                              {
1270   2      //                              P0 = 0XFF;
1271   2                                      lben = 0;
1272   2                                      hben = 1;
1273   2                                      ad_en();
1274   2                                      _nop_();
1275   2                                      i = P0;
1276   2                                      ce = 1;
1277   2                                      _nop_();
1278   2      
1279   2                                      hben = 0;
1280   2                                      lben = 1;
1281   2                                      ad_en();
1282   2                                      _nop_();
1283   2                                      v = P0&0x0f;
1284   2      
1285   2                                      lcd_en();
1286   2                                      lcd_add(2,1);
1287   2                                      lcd_dis_num(v);
1288   2                                      lcd_dis_num(i);
1289   2                                      
1290   2                                      
1291   2                                      dat_ad = v*256+i;
1292   2                                      lcd_dis_num(dat_ad);
C51 COMPILER V7.07   SHTXX_SELF                                                            06/14/2007 21:21:35 PAGE 22  

1293   2      
1294   2                                      dat_ad_xian = (float)(dat_ad*1.28/2.048);
1295   2      //                              dat_ad_xian = (float)(dat_ad/2.048);
1296   2      
1297   2                                      lcd_dis_num((uint)dat_ad_xian);
1298   2      
1299   2      //                              v = P0&0X30;
1300   2      //                              v = v>>4;
1301   2      //                              lcd_dis_num(v);
1302   2      
1303   2                                      ldelay(80);
1304   2                              }
1305   2                      
1306   2                      }
1307   2      //ad读结束
1308   2      */
1309   2      
1310   2      /*              keydata = key_data();
1311   2                      lcd_add(4,7);
1312   2                      switch(keydata)
1313   2                      {
1314   2                              case 0:
1315   2                              {
1316   2                                      v = 3;
1317   2                                      lcd_dis_num(v);
1318   2                                      break;
1319   2                              }
1320   2                              case 1:
1321   2                              {
1322   2                                      v = 4;
1323   2                                      lcd_dis_num(v);
1324   2                                      break;
1325   2                              }
1326   2                              case 2:
1327   2                              {
1328   2                                      v = 5;
1329   2                                      lcd_dis_num(v);
1330   2                                      break;
1331   2                              }
1332   2                              case 3:
1333   2                              {
1334   2                                      v = 6;
1335   2                                      lcd_dis_num(v);
1336   2                                      break;
1337   2                              }
1338   2                              case 4:
1339   2                              {
1340   2                                      v = 2;
1341   2                                      lcd_dis_num(v);
1342   2                                      break;
1343   2                              }
1344   2                              case 5:
1345   2                              {
1346   2                                      v = 7;
1347   2                                      lcd_dis_num(v);
1348   2                                      break;
1349   2                              }
1350   2                              case 6:
1351   2                              {
1352   2                                      v = 8;
1353   2                                      lcd_dis_num(v);
1354   2                                      break;
C51 COMPILER V7.07   SHTXX_SELF                                                            06/14/2007 21:21:35 PAGE 23  

1355   2                              }
1356   2                              case 7:
1357   2                              {
1358   2                                      v = 9;
1359   2                                      lcd_dis_num(v);
1360   2                                      break;
1361   2                              }
1362   2                              case 8:
1363   2                              {
1364   2                                      v = 1;
1365   2                                      lcd_dis_num(v);
1366   2                                      break;
1367   2                              }
1368   2                              case 9:
1369   2                              {
1370   2                                      v = 10;
1371   2                                      lcd_dis_num(v);
1372   2                                      break;
1373   2                              }
1374   2                              case 10:
1375   2                              {
1376   2                                      v = 11;
1377   2                                      lcd_dis_num(v);
1378   2                                      break;
1379   2                              }
1380   2                              case 11:
1381   2                              {
1382   2                                      v = 12;
1383   2                                      lcd_dis_num(v);
1384   2                                      break;
1385   2                              }
1386   2                              case 12:
1387   2                              {
1388   2                                      v = 0;
1389   2                                      lcd_dis_num(v);
1390   2                                      break;
1391   2                              }
1392   2                              case 13:
1393   2                              {
1394   2                                      v = 13;
1395   2                                      lcd_dis_num(v);
1396   2                                      break;
1397   2                              }
1398   2                              case 14:
1399   2                              {
1400   2                                      v = 14;
1401   2                                      lcd_dis_num(v);
1402   2                                      break;
1403   2                              }
1404   2                              case 15:
1405   2                              {
1406   2                                      v = 15;
1407   2                                      lcd_dis_num(v);
1408   2                                      break;
1409   2                              }
1410   2                              default:
1411   2                              {
1412   2                                      v = 16;
1413   2                                      lcd_dis_num(v);
1414   2                                      break;
1415   2                              }
1416   2                      }
C51 COMPILER V7.07   SHTXX_SELF                                                            06/14/2007 21:21:35 PAGE 24  

1417   2      */
1418   2              }
1419   1      
1420   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   3849    ----
   CONSTANT SIZE    =     24    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =     20     152
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      1       1
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?