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

📄 lcd_main.lst

📁 89c51的一个小程序
💻 LST
📖 第 1 页 / 共 3 页
字号:
C51 COMPILER V6.12  LCD_MAIN                                                               08/01/2005 20:10:26 PAGE 11  

 612   2      TempCycB=7269;
 613   2      while(TempCycB--);
 614   2      };
 615   1      }
 616          
 617          
 618          void InitDS1820(void)		//初始化DS1820
 619          {
 620   1      	TMPort = 1;		//拉高TMPort
 621   1      	_nop_();      //保持一个周期
 622   1      	TMPort = 0;		//拉低TMPort
 623   1        Delay_510();  //延时  DS1820复位时间要500us的低电平
 624   1        TMPort = 1;   //拉高TMPort
 625   1      	_nop_();      //保持  
 626   1      	_nop_();
 627   1      	_nop_();
 628   1      
 629   1        Delay_110();  //延时110us 等待DS1820回应
 630   1        if (!TMPort)  //回应信号为低电平
 631   1          DS1820ON = 1;
 632   1        else
 633   1          DS1820ON = 0;
 634   1        Delay_110();  //延时
 635   1        Delay_110();
 636   1        TMPort = 1;   //拉高TMPort
 637   1      }
 638          
 639          void ROMDS1820(void)  //跳过ROM匹配
 640          {
 641   1      #pragma asm
*** ERROR C272 IN LINE 641 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 642   1        MOV A,#0CCH
 643   1        MOV R2,#8
 644   1        CLR C
 645   1        WR1:
 646   1        CLR TMPort
 647   1        MOV R3,#6
 648   1        DJNZ R3,$
 649   1        RRC A
 650   1        MOV TMPort,C
 651   1        MOV R3,#23
 652   1        DJNZ R3,$
 653   1        SETB TMPort
 654   1        NOP
 655   1        DJNZ R2,WR1
 656   1        SETB TMPort
 657   1      #pragma endasm
*** ERROR C272 IN LINE 657 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 658   1      }
 659          
 660          void TMVDS1820(void)  //温度转换指令
 661          {
 662   1      #pragma asm
*** ERROR C272 IN LINE 662 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 663   1        MOV A,#44H
 664   1        MOV R2,#8
 665   1        CLR C
 666   1        WR2:
 667   1        CLR TMPort
C51 COMPILER V6.12  LCD_MAIN                                                               08/01/2005 20:10:26 PAGE 12  

 668   1        MOV R3,#6
 669   1        DJNZ R3,$
 670   1        RRC A
 671   1        MOV TMPort,C
 672   1        MOV R3,#23
 673   1        DJNZ R3,$
 674   1        SETB TMPort
 675   1        NOP
 676   1        DJNZ R2,WR2
 677   1        SETB TMPort
 678   1      #pragma endasm
*** ERROR C272 IN LINE 678 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 679   1      }
 680          
 681          void TMRDS1820(void)  //读出温度指令
 682          {
 683   1      #pragma asm
*** ERROR C272 IN LINE 683 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 684   1        MOV A,#0BEH
 685   1        MOV R2,#8
 686   1        CLR C
 687   1        WR3:
 688   1        CLR TMPort
 689   1        MOV R3,#6
 690   1        DJNZ R3,$
 691   1        RRC A
 692   1        MOV TMPort,C
 693   1        MOV R3,#23
 694   1        DJNZ R3,$
 695   1        SETB TMPort
 696   1        NOP
 697   1        DJNZ R2,WR3
 698   1        SETB TMPort
 699   1      #pragma endasm
*** ERROR C272 IN LINE 699 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 700   1      }
 701          
 702          void TMWDS1820(void)  //写入温度限制指令
 703          {
 704   1      #pragma asm
*** ERROR C272 IN LINE 704 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 705   1        MOV A,#04EH
 706   1        MOV R2,#8
 707   1        CLR C
 708   1        WR13:
 709   1        CLR TMPort
 710   1        MOV R3,#6
 711   1        DJNZ R3,$
 712   1        RRC A
 713   1        MOV TMPort,C
 714   1        MOV R3,#23
 715   1        DJNZ R3,$
 716   1        SETB TMPort
 717   1        NOP
 718   1        DJNZ R2,WR13
 719   1        SETB TMPort
 720   1      #pragma endasm
*** ERROR C272 IN LINE 720 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
C51 COMPILER V6.12  LCD_MAIN                                                               08/01/2005 20:10:26 PAGE 13  

             -tive
 721   1      }
 722          
 723          void TMREDS1820(void)		//COPY RAM to E2PRAM
 724          {
 725   1      #pragma asm
*** ERROR C272 IN LINE 725 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 726   1        MOV A,#48H
 727   1        MOV R2,#8
 728   1        CLR C
 729   1        WR33:
 730   1        CLR TMPort
 731   1        MOV R3,#6
 732   1        DJNZ R3,$
 733   1        RRC A
 734   1        MOV TMPort,C
 735   1        MOV R3,#23
 736   1        DJNZ R3,$
 737   1        SETB TMPort
 738   1        NOP
 739   1        DJNZ R2,WR33
 740   1        SETB TMPort
 741   1      #pragma endasm
*** ERROR C272 IN LINE 741 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 742   1      }
 743          
 744          void TMERDS1820(void)		//COPY E2PRAM to RAM
 745          {
 746   1      #pragma asm
*** ERROR C272 IN LINE 746 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 747   1        MOV A,#0B8H
 748   1        MOV R2,#8
 749   1        CLR C
 750   1        WR43:
 751   1        CLR TMPort
 752   1        MOV R3,#6
 753   1        DJNZ R3,$
 754   1        RRC A
 755   1        MOV TMPort,C
 756   1        MOV R3,#23
 757   1        DJNZ R3,$
 758   1        SETB TMPort
 759   1        NOP
 760   1        DJNZ R2,WR43
 761   1        SETB TMPort
 762   1      #pragma endasm
*** ERROR C272 IN LINE 762 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 763   1      }
 764          
 765          void WriteDS1820(void)	//写入温度限制值
 766          {
 767   1      #pragma asm
*** ERROR C272 IN LINE 767 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 768   1      	MOV A,26H					//发出4EH写ROM指令后连发两个字节分别为上下限
 769   1        MOV R2,#8
 770   1        CLR C
 771   1        WR23:
C51 COMPILER V6.12  LCD_MAIN                                                               08/01/2005 20:10:26 PAGE 14  

 772   1        CLR TMPort
 773   1        MOV R3,#6
 774   1        DJNZ R3,$
 775   1        RRC A
 776   1        MOV TMPort,C
 777   1        MOV R3,#23
 778   1        DJNZ R3,$
 779   1        SETB TMPort
 780   1        NOP
 781   1        DJNZ R2,WR23
 782   1        SETB TMPort       
 783   1      #pragma endasm
*** ERROR C272 IN LINE 783 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 784   1      }
 785          
 786          void ReadDS1820(void) //读出温度值
 787          {
 788   1      #pragma asm
*** ERROR C272 IN LINE 788 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 789   1        MOV R4,#3 ; 将温度高位和低位,高温限制位从DS18B20中读出
 790   1        MOV R1,#29H ; 低位存入29H(TEMPER_L),高位存入28H(TEMPER_H),高温限制位存入27H(TMRomV)
 791   1        RE00:
 792   1        MOV R2,#8
 793   1        RE01:
 794   1        CLR C
 795   1        SETB TMPort
 796   1        NOP
 797   1        NOP
 798   1        CLR TMPort
 799   1        NOP
 800   1        NOP
 801   1        NOP
 802   1        SETB TMPort
 803   1        MOV R3,#09
 804   1        RE10: 
 805   1        DJNZ R3,RE10
 806   1        MOV C,TMPort
 807   1        MOV R3,#23
 808   1        RE20: 
 809   1        DJNZ R3,RE20
 810   1        RRC A
 811   1        DJNZ R2,RE01
 812   1        MOV @R1,A
 813   1        DEC R1
 814   1        DJNZ R4,RE00
 815   1      #pragma endasm
*** ERROR C272 IN LINE 815 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 816   1      }
 817          
 818          void Delay_510(void)	//延时510微秒
 819          {
 820   1      #pragma asm
*** ERROR C272 IN LINE 820 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 821   1      	MOV R0,#74H
 822   1      	MOV R1,#02H
 823   1      	TSR1:
 824   1      	DJNZ R0,TSR1
 825   1      	MOV R0,#74H
C51 COMPILER V6.12  LCD_MAIN                                                               08/01/2005 20:10:26 PAGE 15  

 826   1      	DJNZ R1,TSR1
 827   1      #pragma endasm
*** ERROR C272 IN LINE 827 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 828   1      }
 829          
 830          void Delay_110(void)	//延时110微秒
 831          {
 832   1      #pragma asm
*** ERROR C272 IN LINE 832 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 833   1      	MOV R0,#18H
 834   1      	MOV R1,#02H
 835   1      	TSR2:
 836   1      	DJNZ R0,TSR2
 837   1      	MOV R0,#18H
 838   1      	DJNZ R1,TSR2
 839   1      #pragma endasm
*** ERROR C272 IN LINE 839 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 840   1      }
 841          
 842          void Delay_10ms(void)	//延时10ms
 843          {
 844   1      #pragma asm
*** ERROR C272 IN LINE 844 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 845   1      	MOV R0,#18H
 846   1      	MOV R1,#0C8H
 847   1      	TSR3:
 848   1      	DJNZ R0,TSR3
 849   1      	MOV R0,#18H
 850   1      	DJNZ R1,TSR3
 851   1      #pragma endasm
*** ERROR C272 IN LINE 851 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 852   1      }
 853          
 854          void Delay_4s(void)	//延时4s
 855          {
 856   1      #pragma asm
*** ERROR C272 IN LINE 856 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 857   1        MOV R2,#28H
 858   1        TSR5:
 859   1      	MOV R0,#0FAH
 860   1      	MOV R1,#0C8H
 861   1      	TSR4:
 862   1      	DJNZ R0,TSR4
 863   1      	MOV R0,#0FAH
 864   1      	DJNZ R1,TSR4
 865   1        DJNZ R2,TSR5
 866   1      #pragma endasm
*** ERROR C272 IN LINE 866 OF C:\DOCUME~1\ADMINI~1\MYDOCU~1\89C51\LCD_MAIN.C: 'asm/endasm' requires src-control to be ac
             -tive
 867   1      }
 868          

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

⌨️ 快捷键说明

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