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

📄 main.lst

📁 此程序可以显示输入波形
💻 LST
📖 第 1 页 / 共 5 页
字号:
 970   2      
 971   2                    ADC_CONTR|=0x01;
 972   2      
 973   2                    break;
 974   2      
 975   2      
 976   2      
 977   2                    case 2:
 978   2      
 979   2                    P1M0=0x04;
 980   2      
 981   2                    P1M1=0x00;
 982   2      
 983   2                    ADC_CONTR&=0xf8;
 984   2      
 985   2                    ADC_CONTR|=0x02;
 986   2      
 987   2                    break;
 988   2      
 989   2      
 990   2      
 991   2                    case 3:
 992   2      
 993   2                    P1M0=0x08;
 994   2      
 995   2                    P1M1=0x10;
 996   2      
 997   2                    ADC_CONTR&=0xf8;
 998   2      
 999   2                    ADC_CONTR|=0x03;
1000   2      
1001   2                    break;
1002   2      
1003   2      
1004   2      
1005   2                    case 4:
1006   2      
1007   2                    P1M0=0x10;
1008   2      
1009   2                    P1M1=0x00;
1010   2      
1011   2                    ADC_CONTR&=0xf8;
1012   2      
C51 COMPILER V7.50   MAIN                                                                  08/24/2007 11:21:58 PAGE 20  

1013   2                    ADC_CONTR|=0x03;
1014   2      
1015   2                    break;
1016   2      
1017   2      
1018   2      
1019   2                    case 5:
1020   2      
1021   2                    P1M0=0x20;
1022   2      
1023   2                    P1M1=0x00;
1024   2      
1025   2                    ADC_CONTR&=0xf8;
1026   2      
1027   2                    ADC_CONTR|=0x05;
1028   2      
1029   2                    break;
1030   2      
1031   2      
1032   2      
1033   2                    case 6:
1034   2      
1035   2                    P1M0=0x40;
1036   2      
1037   2                    P1M1=0x00;
1038   2      
1039   2                    ADC_CONTR&=0xf8;
1040   2      
1041   2                    ADC_CONTR|=0x06;
1042   2      
1043   2                    break;
1044   2      
1045   2      
1046   2      
1047   2                    case 7:
1048   2      
1049   2                    P1M0=0x80;
1050   2      
1051   2                    P1M1=0x80;
1052   2      
1053   2                    ADC_CONTR&=0xf8;
1054   2      
1055   2                    ADC_CONTR|=0x07;
1056   2      
1057   2                    break;
1058   2      
1059   2            }
1060   1      
1061   1            ADC_CONTR=0xe7;
1062   1      
1063   1      }
1064          
1065          //--------------------------------------------------------------------
1066          
1067          uint GET_AD_Result()//启动AD转换并返回转换值
1068          
1069          {
1070   1      
1071   1            uchar temp;
1072   1      
1073   1            uint data_temp;
1074   1      
C51 COMPILER V7.50   MAIN                                                                  08/24/2007 11:21:58 PAGE 21  

1075   1            data_temp=0;
1076   1      
1077   1            ADC_DATA=0;
1078   1      
1079   1            ADC_LOW2=0;
1080   1      
1081   1            ADC_CONTR|=0x08;
1082   1      
1083   1      re:    temp=0x10;
1084   1      
1085   1            temp&=ADC_CONTR;
1086   1      
1087   1            if(temp==0)
1088   1      
1089   1                    goto re;
1090   1      
1091   1            ADC_CONTR&=0xe7;
1092   1      
1093   1            data_temp=ADC_DATA;
1094   1      
1095   1            data_temp<<=2;
1096   1      
1097   1            data_temp+=ADC_LOW2;
1098   1      
1099   1            return data_temp;
1100   1      
1101   1      }
1102          
1103          //--------------------------------------------------------------------
1104          
1105          
1106          
1107          //模块:Dis_Wave.C
1108          
1109          //功能:示波器模块
1110          
1111          //晶振:24.000MHz
1112          
1113          //芯片: STC12C5412AD
1114          
1115          //版本:V1.0.0
1116          
1117          //设计:魏广寅
1118          
1119          //日期:2007.4.10
1120          
1121          #include "lcd12864_driver_new.h"
*** WARNING C318 IN LINE 1121 OF main.c: can't open file 'lcd12864_driver_new.h'
1122          
1123          #define uchar unsigned char                  
1124          
1125          #define uint unsigned int
1126          
1127          extern void d0(void);
1128          
1129          extern uchar keyfuncindex;
1130          
1131          extern void d1(void);
1132          
1133          extern void AD_init(uchar AD_port_sel );
1134          
1135          extern uint GET_AD_Result();//启动AD转换并返回转换值 
C51 COMPILER V7.50   MAIN                                                                  08/24/2007 11:21:58 PAGE 22  

1136          
1137          extern void delay_1(uchar time);
1138          
1139          uint xdata record[128];
1140          
1141          sbit key1=P3^0;
1142          
1143          sbit key2=P3^1;
1144          
1145          //--------------------------------------------------------------------
1146          
1147          void delay(uint time)
1148          
1149          {
1150   1      
1151   1            uchar jj,hh;
1152   1      
1153   1            while(--time!=0)
1154   1      
1155   1            {
1156   2      
1157   2                    for(jj==0;jj<255;jj++)
1158   2      
1159   2                    {
1160   3      
1161   3                          for(hh==0;hh<255;hh++);
1162   3      
1163   3                    }
1164   2      
1165   2                    
1166   2      
1167   2            }
1168   1      
1169   1      }
1170          
1171          //--------------------------------------------------------------------
1172          
1173          void wave()    
1174          
1175          {
*** ERROR C231 IN LINE 1175 OF MAIN.C: 'wave': redefinition
1176   1      
1177   1      
1178   1      
1179   1            uchar mod=1;
1180   1      
1181   1            uchar data k;
1182   1      
1183   1            float x2;
1184   1      
1185   1            lcd_init();
1186   1      
1187   1            AD_init(7);
1188   1      
1189   1            while(1)
1190   1      
1191   1            {
1192   2      
1193   2            
1194   2      
1195   2                          for(k=0;k<128;k++)
1196   2      
C51 COMPILER V7.50   MAIN                                                                  08/24/2007 11:21:58 PAGE 23  

1197   2                          {
1198   3      
1199   3                                  record[k]=GET_AD_Result();
1200   3      
1201   3                          
1202   3      
1203   3                          }
1204   2      
1205   2      
1206   2      
1207   2                    switch(mod)
1208   2      
1209   2                    {
1210   3      
1211   3                          case 0:    
1212   3      
1213   3                          {
1214   4      
1215   4                                  if(record[k]==512)
1216   4      
1217   4                                  {    
1218   5      
1219   5                                        dis_cls();
1220   5      
1221   5                                        for(k=0;k<128;k++)
1222   5      
1223   5                                        {
1224   6      
1225   6                                                x2=record[k]/16;
1226   6      
1227   6                                                dis_point(64-x2,k);
1228   6      
1229   6                                        }
1230   5      
1231   5                                        for(k=127;k>0;k--)
1232   5      
1233   5                                        {
1234   6      
1235   6                                                x2=record[k]/16;
1236   6      
1237   6                                                dis_point(64-x2,k);
1238   6      
1239   6                                        }
1240   5      
1241   5                                  }
1242   4      
1243   4                            }
1244   3      
1245   3                            break;
1246   3      
1247   3      
1248   3      
1249   3                            case 1:
1250   3      
1251   3                          {
1252   4      
1253   4                                  dis_cls();
1254   4      
1255   4                                  for(k=0;k<128;k++)
1256   4      
1257   4                                  {
1258   5      
C51 COMPILER V7.50   MAIN                                                                  08/24/2007 11:21:58 PAGE 24  

1259   5                                        x2=record[k]/16;
1260   5      
1261   5                                        dis_point(64-x2,k);
1262   5      
1263   5                                  }
1264   4      
1265   4                                  for(k=127;k>0;k--)
1266   4      
1267   4                                  {
1268   5      
1269   5                                        x2=record[k]/16;
1270   5      
1271   5                                        dis_point(64-x2,k);
1272   5      
1273   5                                  }
1274   4      
1275   4                                  delay(30000);
1276   4      
1277   4                          }
1278   3      
1279   3                          break;
1280   3      
1281   3                    }
1282   2      
1283   2      
1284   2      
1285   2                            key2=1;
1286   2      
1287   2                            if(key2==0)
1288   2      
1289   2                            {
1290   3      
1291   3                                mod=!mod;
1292   3      
1293   3                                delay_1(5);
1294   3      
1295   3                                  }
1296   2      
1297   2      
1298   2      
1299   2                            key1=1;
1300   2      
1301   2                            if(key1==0)
1302   2      
1303   2                            {
1304   3      
1305   3                            delay_1(5);
1306   3      
1307   3                            goto exit;
1308   3      
1309   3                            }
1310   2      
1311   2            }
1312   1      
1313   1      exit: keyfuncindex=1;
1314   1      
1315   1                    d1();      
1316   1      
1317   1                    delay(1);
1318   1      
1319   1      }
1320          
C51 COMPILER V7.50   MAIN                                                                  08/24/2007 11:21:58 PAGE 25  

1321          //--------------------------------------------------------------------
1322          
1323          //模块:Freqen.C
1324          
1325          //功能:频率计模块
1326          
1327          //晶振:24.000MHz
1328          
1329          //芯片: STC12C5412AD
1330          
1331          //版本:V1.0.0
1332          
1333          //设计:魏广寅
1334          
1335          //日期:2007.4.10
1336          
1337          #include "stc12c5412ad.h"
1338          
1339          #define uchar unsigned char                  
1340          
1341          #define uint unsigned int
1342          
1343          extern uchar keyfuncindex;
1344          
1345          void dis_cls(void);
1346          

⌨️ 快捷键说明

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