⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mainloop.lst

📁 这是一个89c52的USB固件系统的源码 使用keilc 生成hex文件 可直接烧录
💻 LST
📖 第 1 页 / 共 5 页
字号:
1122   4                }
1123   3          }
1124   2          else{//shun yuan
1125   3                if ((cc == 2)||(cc == 3)){
1126   4                  if (XBYTE[xy(cur_order)] == 0){
1127   5                        if (anti_work_flag == 0)
1128   5                          cur_off ++;
1129   5                        else
1130   5                          cur_off --;
1131   5                      }
1132   4                      if (anti_work_flag == 0){
1133   5                    cur_x ++;
1134   5                        x_z();
1135   5                      }
1136   4                      else{
1137   5                    cur_x --;
1138   5                        x_f();
1139   5                      }
1140   4                }
1141   3                else if ((cc == 6)||(cc == 7)){
1142   4                  if (XBYTE[xy(cur_order)] == 0){
1143   5                        if (anti_work_flag == 0)
1144   5                          cur_off ++;
1145   5                        else
1146   5                          cur_off --;
1147   5                      }
1148   4                      if (anti_work_flag == 0){
1149   5                    cur_x --;
1150   5                        x_f();
1151   5                      }
1152   4                      else{
1153   5                    cur_x ++;
1154   5                        x_z();
1155   5                      }
1156   4                }
1157   3                else if ((cc == 4)||(cc == 5)){
1158   4                  if (XBYTE[xy(cur_order)] == 1){
1159   5                        if (anti_work_flag == 0)
1160   5                          cur_off ++;
1161   5                        else
1162   5                          cur_off --;
1163   5                      }
1164   4                      if (anti_work_flag == 0){
1165   5                    cur_y ++;
1166   5                        y_z();
1167   5                      }
1168   4                      else{
1169   5                    cur_y --;
C51 COMPILER V7.09   MAINLOOP                                                              10/14/2004 20:25:36 PAGE 20  

1170   5                        y_f();
1171   5                      }
1172   4                }
1173   3                else{
1174   4                  if (XBYTE[xy(cur_order)] == 1){
1175   5                        if (anti_work_flag == 0)
1176   5                          cur_off ++;
1177   5                        else
1178   5                          cur_off --;
1179   5                      }
1180   4                      if (anti_work_flag == 0){
1181   5                    cur_y --;
1182   5                        y_f();
1183   5                      }
1184   4                      else{
1185   5                        cur_y ++;
1186   5                        y_z();
1187   5                      }
1188   4                }
1189   3          }
1190   2      
1191   2              f1 = fabs((cur_x*1.0-bx)*(cur_x*1.0-bx)+(cur_y*1.0-by)*(cur_y*1.0-by)-r);
1192   2              if (xyt == 2){// ni yuan
1193   3                if ((cc == 1)||(cc == 4)){
1194   4                  if (f1 > fabs((cur_x*1.0-1-bx)*(cur_x*1.0-1-bx)+(cur_y*1.0-by)*(cur_y*1.0-by)-r)){
1195   5                    if (XBYTE[xy(cur_order)] == 0){
1196   6                          if (anti_work_flag == 0)
1197   6                            cur_off ++;
1198   6                          else
1199   6                            cur_off --;
1200   6                        }
1201   5                        if (anti_work_flag == 0){
1202   6                      cur_x --;
1203   6                          x_f();
1204   6                }
1205   5                        else{
1206   6                          cur_x ++;
1207   6                              x_z();
1208   6                        }
1209   5                      }
1210   4                }
1211   3                if ((cc == 2)||(cc == 7)){
1212   4                  if (f1 > fabs((cur_x*1.0-bx)*(cur_x*1.0-bx)+(cur_y*1.0+1-by)*(cur_y*1.0+1-by)-r)){
1213   5                    if (XBYTE[xy(cur_order)] == 1){
1214   6                          if (anti_work_flag == 0)
1215   6                            cur_off ++;
1216   6                          else
1217   6                            cur_off --;
1218   6                        }
1219   5                        if (anti_work_flag == 0){
1220   6                      cur_y ++;
1221   6                          y_z();
1222   6                        }
1223   5                        else{
1224   6                          cur_y --;
1225   6                              y_f();
1226   6                        }
1227   5                      }
1228   4                }
1229   3                if ((cc == 3)||(cc == 6)){
1230   4                  if (f1 > fabs((cur_x*1.0-bx)*(cur_x*1.0-bx)+(cur_y*1.0-1-by)*(cur_y*1.0-1-by)-r)){
1231   5                    if (XBYTE[xy(cur_order)] == 1){
C51 COMPILER V7.09   MAINLOOP                                                              10/14/2004 20:25:36 PAGE 21  

1232   6                          if (anti_work_flag == 0)
1233   6                            cur_off ++;
1234   6                          else
1235   6                            cur_off --;
1236   6                        }
1237   5                        if (anti_work_flag == 0){
1238   6                      cur_y --;
1239   6                          y_f();
1240   6                    }
1241   5                        else{
1242   6                          cur_y ++;
1243   6                              y_z();
1244   6                        }
1245   5                      }
1246   4                }
1247   3                if ((cc == 5)||(cc == 8)){
1248   4                  if (f1 > fabs((cur_x*1.0+1-bx)*(cur_x*1.0+1-bx)+(cur_y*1.0-by)*(cur_y*1.0-by)-r)){
1249   5                    if (XBYTE[xy(cur_order)] == 0){
1250   6                          if (anti_work_flag == 0)
1251   6                            cur_off ++;
1252   6                          else
1253   6                            cur_off --;
1254   6                        }
1255   5                        if (anti_work_flag == 0){
1256   6                      cur_x ++;
1257   6                          x_z();
1258   6                    }
1259   5                        else{
1260   6                          cur_x --;
1261   6                              x_f();
1262   6                        }
1263   5                      }
1264   4                }
1265   3              }
1266   2              else if (xyt == 3){// shun yuan
1267   3                if ((cc == 1)||(cc == 4)){
1268   4                  if (f1 > fabs((cur_x*1.0+1-bx)*(cur_x*1.0+1-bx)+(cur_y*1.0-by)*(cur_y*1.0-by)-r)){
1269   5                    if (XBYTE[xy(cur_order)] == 0){
1270   6                          if (anti_work_flag == 0)
1271   6                            cur_off ++;
1272   6                          else
1273   6                            cur_off --;
1274   6                        }
1275   5                        if (anti_work_flag == 0){
1276   6                      cur_x ++;
1277   6                          x_z();
1278   6                        }
1279   5                        else{
1280   6                          cur_x --;
1281   6                              x_f();
1282   6                        }
1283   5                      }
1284   4                }
1285   3                if ((cc == 2)||(cc == 7)){
1286   4                  if (f1 > fabs((cur_x*1.0-bx)*(cur_x*1.0-bx)+(cur_y*1.0-1-by)*(cur_y*1.0-1-by)-r)){
1287   5                    if (XBYTE[xy(cur_order)] == 1){
1288   6                          if (anti_work_flag == 0)
1289   6                            cur_off ++;
1290   6                          else
1291   6                            cur_off --;
1292   6                        }
1293   5                        if (anti_work_flag == 0){
C51 COMPILER V7.09   MAINLOOP                                                              10/14/2004 20:25:36 PAGE 22  

1294   6                      cur_y --;
1295   6                          y_f();
1296   6                        }
1297   5                        else{
1298   6                          cur_y ++;
1299   6                              y_z();
1300   6                        }
1301   5                      }
1302   4                }
1303   3                if ((cc == 3)||(cc == 6)){
1304   4                  if (f1 > fabs((cur_x*1.0-bx)*(cur_x*1.0-bx)+(cur_y*1.0+1-by)*(cur_y*1.0+1-by)-r)){
1305   5                    if (XBYTE[xy(cur_order)] == 1){
1306   6                          if (anti_work_flag == 0)
1307   6                            cur_off ++;
1308   6                          else
1309   6                            cur_off --;
1310   6                        }
1311   5                        if (anti_work_flag == 0){
1312   6                      cur_y ++;
1313   6                          y_z();
1314   6                        }
1315   5                        else{
1316   6                          cur_y --;
1317   6                              y_f();
1318   6                        }
1319   5                      }
1320   4                }
1321   3                if ((cc == 5)||(cc == 8)){
1322   4                  if (f1 > fabs((cur_x*1.0-1-bx)*(cur_x*1.0-1-bx)+(cur_y*1.0-by)*(cur_y*1.0-by)-r)){
1323   5                    if (XBYTE[xy(cur_order)] == 0){
1324   6                          if (anti_work_flag == 0)
1325   6                            cur_off ++;
1326   6                          else
1327   6                            cur_off --;
1328   6                        }
1329   5                        if (anti_work_flag == 0){
1330   6                      cur_x --;
1331   6                          x_f();
1332   6                    }
1333   5                        else{
1334   6                          cur_x ++;
1335   6                              x_z();
1336   6                        }
1337   5                      }
1338   4                }
1339   3              }
1340   2              if (anti_work_flag == 0){
1341   3                ll = (long)(*((long *)(&(XBYTE[counterlen(cur_order)]))));
1342   3                if (cur_off >= ll){
1343   4              XBYTE[xytype(cur_order)] = 0;
1344   4                  cur_order1 = (cur_order+1)%MAX_ORDER;
1345   4                  cur_order = (cur_order+1)%MAX_ORDER;
1346   4                  cur_off = 0;
1347   4                      if (XBYTE[xytype(cur_order)] == 0){
1348   5                        work_status = 2;
1349   5                    e_order = 0;
1350   5                    cur_order1 = 0;
1351   5                        cur_order = 0;
1352   5                        send_req_order(0);
1353   5                    close_gao_pin();
1354   5                      }
1355   4                }
C51 COMPILER V7.09   MAINLOOP                                                              10/14/2004 20:25:36 PAGE 23  

1356   3          }
1357   2              else{
1358   3                if (cur_off == 0){
1359   4                      anti_work_flag = 0;
1360   4                }
1361   3              }
1362   2        }
1363   1        else{
1364   2        }
1365   1      
1366   1        if (anti_work_flag == 1){
1367   2          if (loop_off - cur_off >= 200){
1368   3                cur_jing = old_cur_jing;
1369   3                anti_work_flag = 0;
1370   3              }
1371   2        }
1372   1        RAMCS = 1;
1373   1        MCU_D12CS = 0;
1374   1      }
1375          
1376          void send_req_order(char order)
1377          {
1378   1        cc = 0x85;
1379   1        RAMCS = 1;
1380   1        MCU_D12CS = 0;
1381   1        D12_WriteEndpoint(3, 1, &cc);  
1382   1      }
*** WARNING C280 IN LINE 1376 OF MAINLOOP.C: 'order': unreferenced local variable
1383          
1384          open_gao_pin()
1385          {
1386   1        MCU_D12CS = 1;
1387   1        RAMCS = 0;
1388   1        if (xiangxlx == 0)
1389   1          ch = get_x_y_port_byte(cur_x_step_order%10);
1390   1        else
1391   1          ch = get_x_y_port_byte(cur_x_step_order%6);
1392   1        ch = 255 - ch;
1393   1        ch = ch * 8;
1394   1        ch = ch & (0xff-7);
1395   1        out_8255_1_c(1);  // gaopin
1396   1        out_8255_1_a();
1397   1        ch += 4;
1398   1        out_8255_1_a();
1399   1        ch -= 4;
1400   1        out_8255_1_a();
1401   1      
1402   1     

⌨️ 快捷键说明

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