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

📄 程序完成.txt

📁 文件里的说明.TXT有详细的说明,很有用
💻 TXT
📖 第 1 页 / 共 2 页
字号:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;更新于 10:45 2006-7-21  星期四;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
#INCLUDE    	P16F873A.INC

PCL		EQU   	02H
STATUS     	EQU   	03H

PORTA		EQU	05H
PORTB		EQU	06H
PORTC       	EQU   	07H
TRISA       	EQU   	85H
TRISB       	EQU   	86H
TRISC      	EQU   	87H

DQ         	EQU   	4  


TDATA		EQU	20H
COUNT   	EQU  	21H       
COUNT1    	EQU  	22H       
DAIN1      	EQU  	23H       
DAIN2    	EQU     24H
FLAG    	EQU     25H
DATEMP     	EQU     26H
WENDUH   	EQU     27H
WENDUL    	EQU     28H
WENDUF   	EQU     29H  

;**********************************************
HOUL      	EQU     31H    	;减数低8位
HOUH       	EQU     32H    	;减数高8位
QIAHL      	EQU     33H    	;被减数低8位
QIAHH      	EQU     34H   	;被减数高8位
;********************************************** 

ACCALO    	EQU   	35H
ACCAHI    	EQU   	36H
ACCBLO    	EQU    	37H
ACCBHI    	EQU    	38H
ACCCLO    	EQU   	39H
ACCCHI    	EQU    	40H
ACCDLO    	EQU    	41H
ACCDHI    	EQU   	42H
TEMP		EQU	43H
TMP0		EQU	44H

CARRY    	EQU    	0
;**********************************************

;**********************************************
       	ORG         0000H
       	NOP 
       	NOP
       	NOP
;***************************************
;;     initializtion  初始化
;**************************************
       
PRESET:  
	BCF  		STATUS,RP0
      	BCF         	STATUS,RP1
       	CLRF       	PORTA
       	CLRF       	PORTB
       	CLRF       	PORTC
       	BSF         	STATUS,RP0
      	MOVLW  		0FFH
       	MOVWF  		TRISA
       	MOVLW  		13H
       	MOVWF  		TRISB
       	CLRF      	TRISC
       	BCF        	STATUS,RP0
;*****************************************
;
;*****************************************
START: 
       	BCF  		PORTB,5
       	CALL 		DELAY
       	CALL 		DELAY
       	BSF  		PORTB,5 
                              
       	CALL     	DA_RESET 

                                           
       	BTFSS    	FLAG,0 
       	GOTO   		START   


       	MOVLW  		H'0CC'       
       	CALL     	WRDATA
       	MOVLW  		H'44'        
       	CALL     	WRDATA

       	CALL     	DELAY
       	CALL     	DELAY
       	CALL    	DA_RESET

	MOVLW		H'0CC'
	CALL		WRDATA	
	MOVLW      	H'0BE'
       	CALL   		WRDATA

       	CALL   		REDATA 
	NOP
	NOP
	NOP  
        MOVF    	DATEMP,0
       	MOVWF 		WENDUL   
    
       	CALL     	REDATA
       	NOP
	NOP
	NOP
       	MOVF         	DATEMP,0
      	MOVWF  		WENDUH      
       	MOVWF  		WENDUF

       	RLF         	WENDUF,1
       	BTFSS     	STATUS,C 
       	GOTO    	UP0 
	BCF 		STATUS,RP0         
	BSF		PORTB,2
       	GOTO		START
;:::::::::::::::::::::::::::::::::::::::::::::::::
UP0: 
	BCF 		STATUS,RP0
	BCF        	PORTB,2 
       	MOVF    	WENDUL,0  
       	MOVWF 		QIAHL                     ;被减数
        MOVF    	WENDUH,0 
        MOVWF  		QIAHH
        MOVLW  		B'11000000'               ;减数
       	MOVWF    	HOUL 
       	MOVLW   	B'00000011'
       	MOVWF      	HOUH
       	CALL       	D_SUB  
       	CALL       	D_ADD
       	BTFSS      	STATUS,C
       	GOTO        	DOWN60
       	GOTO        	UP60
DOWN60:	
	GOTO       T51    
;*****************************************************     
UP60:  
;入口:被除数在ACCBHI(高),ACCBLO(低)
;     除数在ACCAHI(高),ACCALO(低)
;出口:商存于ACCBHI(高),ACCBLO(低)
;     余数存于ACCCHI(高),ACCCLO(低)
;*******************************************************
 	MOVF     	QIAHH,0
 	MOVWF    	ACCBHI
 	MOVF     	QIAHL,0
 	MOVWF    	ACCBLO
 	MOVLW    	B'0'
 	MOVWF    	ACCAHI
 	MOVLW    	B'00010000'
 	MOVWF    	ACCALO
 	CALL     	D_DIV

	BSF     	STATUS,RP0     
       	BCF     	TRISB,5        
       	BCF     	STATUS,RP0      
       	BCF     	PORTB,5  

 	MOVF    	ACCBLO,0
 	ADDWF   	PCL,1
  
	GOTO  T1
	GOTO  T2
	GOTO  T3
	GOTO  T4
	GOTO  T5
	GOTO  T6
	GOTO  T7
	GOTO  T8
	GOTO  T9
	GOTO  T10
	GOTO  T11
	GOTO  T12
	GOTO  T13
	GOTO  T14
	GOTO  T15
	GOTO  T16
	GOTO  T17
	GOTO  T18
	GOTO  T19
	GOTO  T20
	GOTO  T21
	GOTO  T22
	GOTO  T23
	GOTO  T24
	GOTO  T25
	GOTO  T26
	GOTO  T27
	GOTO  T28
	GOTO  T29
	GOTO  T30
	GOTO  T31
	GOTO  T32 	
	GOTO  T33
	GOTO  T34
	GOTO  T35
	GOTO  T36
	GOTO  T37
	GOTO  T38
	GOTO  T39
	GOTO  T40
	GOTO  T41
	GOTO  T42
	GOTO  T43
	GOTO  T44
	GOTO  T45
	GOTO  T46
	GOTO  T47
	GOTO  T48
	GOTO  T49
	GOTO  T50  ;109 0C
	GOTO  T50  ;110 0C
	GOTO  T50  ;111 0C
	GOTO  T50  ;112 0C
	GOTO  T50  ;113 0C
	GOTO  T50  ;114 0C
	GOTO  T50  ;115 0C
	GOTO  T50  ;116 0C
	GOTO  T50  ;117 0C
	GOTO  T50  ;118 0C
	GOTO  T50  ;119 0C
	GOTO  T50  ;120 0C
	GOTO  T50  ;121 0C
	GOTO  T50  ;122 0C
	GOTO  T50  ;123 0C
	GOTO  T50  ;124 0C
        GOTO  T50  ;125 0C
	GOTO  TERROR ;   OUT


TERROR:
        CALL DELAY
	CALL DELAY
	GOTO START
;*********************************
T1:  
;*********************************   
      MOVLW B'11111010'                	  ;4.9V          4.897V      60 0C    
      MOVWF DAIN1       
      MOVLW B'11000000'
      MOVWF DAIN2
      CALL DAC 
                
      GOTO START
;*************************************
T2:    
;*************************************
      MOVLW B'11110101'   
      MOVWF DAIN1
      MOVLW B'11000000'     	;4.8V         4.7998V         61  0C                 
      MOVWF DAIN2
      CALL DAC 
 
      GOTO START
;*********************************
T3:  
;*********************************   
      MOVLW B'11110000'        	 ;  4.7V          4.697V         62  0C    
      MOVWF DAIN1       
      MOVLW B'10000000'
      MOVWF DAIN2
      CALL DAC 
                
      GOTO START
;*************************************
T4:                                           	 ;4.6V         4.5996V           63  0C     
;*************************************
      MOVLW B'11101011'   
      MOVWF DAIN1
      MOVLW B'10000000'
      MOVWF DAIN2
      CALL DAC 
 
      GOTO START
;*********************************
T5:  			 ;4.5V      4.502V                        64 0C         
;*********************************   
      MOVLW B'11100110'  
      MOVWF DAIN1       
      MOVLW B'10000000'
      MOVWF DAIN2
      CALL DAC 
                
      GOTO START
;*************************************
T6:    
;*************************************
      MOVLW B'11100001'     	 ;4.4V         4.3994V                   65 0C
      MOVWF DAIN1
      MOVLW B'01000000'
      MOVWF DAIN2
      CALL DAC 
 
      GOTO START
;*********************************
T7:  
;*********************************   
      MOVLW B'11011100'                   ; 4.3V      4.3018V                                 66 0C
      MOVWF DAIN1       
      MOVLW B'01000000' 
      MOVWF DAIN2
      CALL DAC 
                
      GOTO START
;*************************************
T8:    
;*************************************
      MOVLW B'11010111'       	  ;4.2V       4.1992V                                   67 0C      
      MOVWF DAIN1
      MOVLW B'00000000'
      MOVWF DAIN2
      CALL DAC 
 
      GOTO START
;*********************************
T9:  
;*********************************   
      MOVLW B'11010010'             	 ;4.1V     4.1016V                            68 0C      
      MOVWF DAIN1       
      MOVLW B'00000000'
      MOVWF DAIN2
      CALL DAC 
                
      GOTO START
;*************************************
T10:    
;************************************* 
      MOVLW B'11001100'           	 ;4.0V     3.9990V              	69 0C    
      MOVWF DAIN1
      MOVLW B'11000000'
      MOVWF DAIN2
      CALL DAC 
 
      GOTO START
;*********************************
T11:   
;*********************************   
      MOVLW B'11000111'                    ;3.9V        3.9014V                                  70 0C
      MOVWF DAIN1       
      MOVLW B'11000000'
      MOVWF DAIN2
      CALL DAC 
                
      GOTO START
;*************************************
T12:   
;*************************************
      MOVLW B'11000010'                  	;3.8V          3.7988V                               71 0C
      MOVWF DAIN1
      MOVLW B'10000000'
      MOVWF DAIN2
      CALL DAC 
 
      GOTO START
;*********************************
T13:                                   
;*********************************   
      MOVLW B'10111101'                	;3.7V     3.7012V	    72 0C
      MOVWF DAIN1       
      MOVLW B'10000000'
      MOVWF DAIN2
      CALL DAC 
                
      GOTO START
;*************************************
T14:    
;*************************************
      MOVLW B'10111000'                 	;3.6V    3.599V                         73 0C
      MOVWF DAIN1
      MOVLW B'01000000'
      MOVWF DAIN2
      CALL DAC 
 
      GOTO START
;*********************************
T15:  
;*********************************   
      MOVLW B'10110011'                	;3.5V  3.5010V                           74 0C
      MOVWF DAIN1       
      MOVLW B'01000000'
      MOVWF DAIN2
      CALL DAC 
                
      GOTO START
;*************************************
T16:    
;*************************************
      MOVLW B'10101110'                   	;3.4V    3.3984V	75 0C
      MOVWF DAIN1
      MOVLW B'00000000'
      MOVWF DAIN2
      CALL DAC 
 
      GOTO START
;*********************************
T17:  
;*********************************   
      MOVLW B'10101001'                  	;3.3V     3.3009V                  76 0C 
      MOVWF DAIN1       
      MOVLW B'00000000'
      MOVWF DAIN2
      CALL DAC 
                
      GOTO START
;*************************************
T18:    
;*************************************
      MOVLW B'10100011'                  	;3.2V       3.1982V           77 0C       
      MOVWF DAIN1
      MOVLW B'11000000'
      MOVWF DAIN2
      CALL DAC 
 
      GOTO START
;*********************************
T19:  
;*********************************   
      MOVLW B'10011110'                      ;3.1V    3.1006V            78 0C
      MOVWF DAIN1       
      MOVLW B'11000000'
      MOVWF DAIN2
      CALL DAC 
                
      GOTO START
;*************************************
T20:    
;*************************************
      MOVLW B'10011001'   
      MOVWF DAIN1                            ;3.0V    2.998V           79 0C
      MOVLW B'10000000'
      MOVWF DAIN2
      CALL DAC 
 
      GOTO START
;*********************************
T21:  
;*********************************   
      MOVLW B'10010100'                  	;2.9V     2.9004V                80 0C
      MOVWF DAIN1       
      MOVLW B'10000000'
      MOVWF DAIN2
      CALL DAC 
                
      GOTO START
;*************************************
T22:    
;*************************************
      MOVLW B'10001111'                   	;2.8V    2.7979V              81 0C
      MOVWF DAIN1
      MOVLW B'01000000'
      MOVWF DAIN2
      CALL DAC 
 
      GOTO START
;*********************************
T23:  
;*********************************   
      MOVLW B'10001010'                 	;2.7V    2.7002V                 82 0C  
      MOVWF DAIN1       
      MOVLW B'01000000'
      MOVWF DAIN2
      CALL DAC 
                
      GOTO START
;*************************************
T24:    
;*************************************
      MOVLW B'10000101'               	;2.6V   2.5977V                   83 0C   
      MOVWF DAIN1
      MOVLW B'00000000'
      MOVWF DAIN2
      CALL DAC 
 
      GOTO START
;*********************************
T25:  
;*********************************   
      MOVLW B'10000000'                  	;2.5V     2.5V               84 0C
      MOVWF DAIN1       
      MOVLW B'00000000'
      MOVWF DAIN2
      CALL DAC 
                
      GOTO START
;*************************************
T26    
;*************************************
      MOVLW B'01111011'                	;2.4V     2.4023V              85 0C
      MOVWF DAIN1
      MOVLW B'00000000'
      MOVWF DAIN2
      CALL DAC 
 
      GOTO START
;*********************************
T27:  
;*********************************   

⌨️ 快捷键说明

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