亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 單片機應用技術講座(17)源程序.txt

?? C51常用子程序 [精]
?? TXT
?? 第 1 頁 / 共 2 頁
字號:
                  RETI
;****************************************************************************
                       [顯示子程序]
DIR:       MOV SCON,#00H            ;置串行口移位寄存器狀態
                  SETB P1.4             ;開顯示
                  JB 5DH,DL1            ;顯示設定溫度則轉
         DL2:     MOV DPTR,#SEGT
        DL0:      MOV A,@R0
                  MOVC A,@A+DPTR
                  MOV SBUF,A
  LOOP1:          JNB TI,LOOP1
                  CLR TI
                  INC R0
                   MOV A,@R0
                   MOVC A,@A+DPTR
                   ANL A,#7FH      ;使個位帶小數點
                   MOV SBUF,A
   LOOP2:          JNB TI,LOOP2
                   CLR TI
                   INC R0
                   MOV A,@R0
                   MOVC A,@A+DPTR
                   MOV SBUF,A
   LOOP3:          JNB TI,LOOP3
                   CLR TI
                   CLR P1.4
                   CLR 5DH
                   RET
         DL1:      MOV 50H,#0AH              ;使小數位黑屏
                   AJMP DL2
 SEGT:             DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH
;****************************************************************************
      DAAD1:        MOV A,#00H            ;[加1子程序]          
                    ORL A,@R1
                    ADD A,#01H
                    CJNE A,#5AH,DAAD2	  ;判斷超過90度了嗎?
      DAAD3:        MOV @R1,A
        DAA:          RET                
      DAAD2:	    JC DAAD3
	           	    MOV @R1,#28H          ;超過90度則回到40度
		            AJMP DAA
 ;***************************************************************************
	DEEC1:	    MOV A,@R1		  ;[減1子程序]
		        DEC A
		        CJNE A,#28H,DEEC2	  ;判斷低于40度了嗎?
	DEEC3:	    MOV @R1,A
	  DEE:	      RET
	DEEC2:	    JNC DEEC3
		        MOV @R1,#5AH	  ;低于40度則回到90度
	  	        AJMP DEE
;****************************************************************************
     PTT0:          CLR EA                ;[T0中斷子程序]
                    PUSH ACC
                    PUSH PSW
                    PUSH DPL
                    PUSH DPH
                    SETB EA               ;壓棧后開中斷,響應鍵盤
      PPP:          LCALL  SMAP               ;采樣數據
                    LCALL  FILTER         ;數字濾波
                    MOV  A,2AH            ;取采樣值
                    CJNE A,#01H,AAA       ;下限40度比較
                    AJMP BBB
      AAA:          JC CCC                 ;小于40度則轉移
                    CJNE A,#0FEH,DDD       ;上限90度比較
                    AJMP BBB              ;轉到40-90度正常范圍內處理
      DDD:          JC  BBB
                    CLR P1.2              ;大于90度黃燈亮報警
                    SETB 5EH
                    CLR P1.1              ; 置標志,啟動風扇
                    AJMP  PPP
      CCC:          CLR P1.3                  ;小于40度綠燈亮報警
                    SETB 5FH
                    CLR P1.0              ;置標志,啟動電爐
                    AJMP PPP
      BBB:          SETB P1.0
                     SETB  P1.1
                     SETB P1.2
                     SETB P1.3
                     CLR 5EH 
                     CLR 5FH               ;40-90度之間則正常
                      LCALL PID 
                      JB 20H,EEE           ;設定溫度< 實際溫度,則轉到風扇處理
                      MOV A,29H
                      ACALL FFF
                      CLR P1.0
      LOOP10:         MOV R0,#56H                ;存放相乘結果的首址
                      MOV R1,#55H          ;賦顯示緩沖區最高位地址(十位)
                      LCALL SCACOV  ;調用“標度轉化------二-十進制轉化”子程序
                       MOV R0,#53H         ;賦顯示首址
                       LCALL DIR
                       JB D5H,LOOP10        ;等待T1中斷
					   CLR EA
                       POP DPH
                       POP DPL                   
                       POP PSW
					   SETB EA
                       POP ACC
                         RETI
         EEE:         MOV A,28H                ;風扇處理
                       LCALL FFF
                       CLR P1.1
                       AJMP LOOP10
         FFF:          CPL  A                   ;根據PID結果計算T1初值
                      INC A
                      MOV TL1,A
	                  MOV TH1,#0FFH
                      SETB  PI1
                      SETB TR1 
                      SETB ET1
                       RET  
;****************************************************************************
    SCACOV:        MOV R7,#00H        ;[“標度轉化------二-十進制轉化”子程序]
                    MOV R6,2AH               ;取采樣值,并轉化為雙字節
                    MOV R5,#33H
                    MOV R4,#24H              ;賦參數(純小數)
                    LCALL MULT               ;調用雙字節乘法子程序
                    MOV R5,#00H
                    MOV R4,#28H              ;賦參數40度
                    MOV A,@R0
		            MOV R3,A
                    DEC R0
                    MOV A,@R0                ;存乘法結果的整數
		            MOV R2,A
                    LCALL DSUM        ;調用加法子程序,且R7,R6為有效值(R7=00H)
                    MOV A,R6
                    MOV B,#10
                    DIV  AB
                    MOV @R1,A                ;存十位數
                    DEC R1
      	            XCH A,B 
                    MOV @R1,A                ;存個位數
                    DEC R0
                    MOV A,@R0                ;取有效小數
                    MOV B,#10
                    DIV  AB
                    DEC R1
                    MOV @R1,A                ;送小數到顯示緩沖區
                    MOV A,B
                    CJNE A,#5,QQ             ;小數四舍五入
          QQ:       JC PP 
                    MOV A,@R1
                    ADD A,#01H
                    DA  A
                    MOV @R1,A
          PP:       RET
;****************************************************************************
         SMAP:       MOV R0,#2CH                  ; [采樣子程序]
                     MOV R1,#03H             ;采樣次數
        SAM1:        MOV DPTR,#7FF8H
                     MOVX @DPTR,A            ;啟動A/D                    
                     MOV R2,#20H
        DLY:         DJNZ R2,DLY                 ;延時一小會
       HERE:         JB P3.3,HERE
					 MOV DPTR,#7FF8H
                     MOVX A,@DPTR           ;讀取轉化結果
                     MOV @R0,A
                      INC R0
                      DJNZ R1,SAM1
                      RET
;****************************************************************************
    FILTER:           MOV A,2CH                    ;[數字慮波子程序]
                      CJNE A,2DH,CMP1
                      AJMP CMP2
       CMP1:          JNC CMP2
                      XCH A,2DH
                      XCH A,2CH
       CMP2:          MOV A,2DH
                      CJNE A,2EH,CMP3
                      MOV 2AH,A
                      AJMP RR
        CMP3:         JC CMP4
                      MOV 2AH,A
                      AJMP RR
        CMP4:         MOV A,2EH
                      CJNE A,2CH,CMP5
                      MOV 2AH,A
                      AJMP RR
        CMP5:         JC CMP6
                      XCH A,2CH
        CMP6:         MOV 2AH,A 
        RR:              RET
;****************************************************************************
     PTT1:            CLR 00H                     ;[T1中斷子程序]
                      JB 20H,GGG
                      SETB P1.0                   ;關閉電爐
      GG:             CLR PT1
  RETI
      GGG:            SETB P1.1                   ;關閉風扇
                      CLR 20H
                      AJMP GG
;****************************************************************************
      DLY10MS:   MOV R7,#0A0H            ;[延時10毫秒子程序]
         DL00:   MOV R6,#0FFH
         DL11:   DJNZ R6,DL11
                 DJNZ R7,DL00
                 RET
;****************************************************************************       
PID:     MOV R5,#00H           [PID算法子程序]
		 MOV R4,2DH		 ;取Nx值
		 MOV R3,#00H
		 MOV R2,#28H		 ;取40度值
 		 LCALL CPL1
		 LCALL DSUM		 ;求(Nx-28H)的值
		 MOV R0,#5AH		 ;賦乘法運算暫存單元地址首址
 		 MOV R5,#05H
		 MOV R4,#1CH	 	 ;賦參數(5.12)
		 LCALL MULT		 ;調無符號數乘法
		 MOV 31H,5BH
		 MOV 32H,5AH		 ;存放結果的有效值
		 MOV R5,31H
         MOV R4,32H              ;取雙字節的Ur(設定值)
         MOV R3,2AH
         MOV R2,#00H             ;取雙字節的Ui(k)(實測值)
 		 ACALL CPL1              ;取Ui(k)的補碼
         ACALL DSUM              ;計算E(k)
		 MOV 39H,R7
		 MOV 3AH,R6              ;存E(K)
		 MOV R5,35H
         MOV R4,36H              ;取KI參數
 		 MOV R0,#4AH
         ACALL MULT1             ;計算PI=KI*E(K)
		 MOV R5,39H
		 MOV R4,3AH              ;取E(K)
		 MOV R3,3BH
  		 MOV R2,3CH              ;取E(K-1)
 		 ACALL CPL1
 		 ACALL DSUB              ;求E(K)-E(K-1)
		 MOV R5,33H
		 MOV R4,34H           	 ;取Kp參數
		 MOV R0,#46H
		 ACALL MULT1    	 ;求Kp*[E(K)-E(K-1)]
		 MOV R5,49H
		 MOV R4,48H
		 MOV R3,4DH
		 MOV R2,4CH
		 ACALL DSUM              ;求Kp*[E(K)-E(K-1)]+KI*E(K)
		 MOV 4AH,R7
 		 MOV 4BH,R6              ;保存上式之和
		 MOV R5,39H
		 MOV R4,3AH              ;取E(K)
		 MOV R3,3DH
		 MOV R2,3EH              ;取E(K-2)
		 ACALL DSUM		 ;計算E(K)+E(K-2)
		 MOV A,R7
		 MOV R5,A
		 MOV A,R6
		 MOV R4,A
		 MOV R3,3BH
		 MOV R2,3CH              ;取E(k-1)
		 ACALL CPL1
		 ACALL DSUM		 ;求出E(K)+E(K-2)-2*E(K-1)
		 MOV A,R7
		 MOV R5,A
		 MOV A,R6
		 MOV R4,A
		 MOV R3,3BH
		 MOV R2,3CH
		 ACALL CPL1
		 ACALL DSUM
		 MOV R5,37H
		 MOV R4,38H		 ;取Kd參數
		 MOV R0,#46H
		 ACALL MULT1		 ;求出Pd=Kd*[E(K)+E(K-2)-2*E(K-1)]
		 MOV R5,49H
		 MOV R4,48H      	 ;取Pd
		 MOV R3,4AH		
		 MOV R2,4BH		 ;取Kp*[E(K)-E(K-1)]+KI*E(K)
		 ACALL DSUM		 ;計算Pd+PI
		 MOV A,R7
		 MOV R3,A
		 MOV A,R6             	 ;取Pd+PI
		 MOV R2,A
		 MOV R5,2FH
		 MOV R4,30H         	 ;取P(k-1)
		 ACALL DSUM		 ;求P(K)=Pd+Pp+P(K-1)
		 MOV 2FH,R7
		 MOV 30H,R6		 ;存P(k)到P(k-1)
		 MOV 29H,2FH
		 MOV 3DH,3BH
		 MOV 3EH,3CH		 ;存E(K-1)到E(K-2)
		 MOV 3BH,39H
		 MOV 3CH,3AH		 ;存E(K)到E(k-1)
		 MOV A,31H			;取設定值
		 CJNE A,2AH,AA2	;比較設定值與實測值
   AA3: CLR 20H			;清電爐標志
   AA1:       RET
   AA2:	 JNC AA3
 SETB 20H		 ;清風扇標志位
 MOV R3,39H
 MOV R2,3AH
 LCALL CPL1
 MOV A,R3
 MOV R7,A
 MOV A,R2
 MOV R6,A
		 MOV R5,42H
		 MOV R4,43H		 ;取K(風扇)參數
		 MOV R0,#5AH
		 ACALL MULI1		 ; 計算P`=K*E(K),且結果防在51H,50H單元中
		 MOV 28H,5BH		 ;取8位有效值,放到28H單元中
		 AJMP AA1
;****************************************************************************DSUM: 	 MOV A,R4  		 ;[雙字節加法子程序]:(R5R4)+(R3R2)-->(R7R6)
		 ADD A,R2
		 MOV R6,A
		 MOV A,R5
		 ADDC A,R3
		 MOV R7,A
		 RET
;****************************************************************************
 CPL1:	 MOV A,R2		 ;[雙字節求補子程序]:(R3R2)求補
		 CPL A
		 ADD A,#01H
		 MOV R2,A	 	
		 MOV A,R3
		 CPL A
		 ADDC A,#00H
		 MOV R3,A
		 RET
;****************************************************************************
 MULT1:	 MOV A,R7		 ;[雙字節有符號數乘法]:被乘數(R7R6),乘數(R5R4)
		 RLC A
		 MOV 5CH,C      	 ;被乘數符號C1-->5CH位
		 JNC POS1		 ;為正數則轉
		 MOV A,R6		 ;為負數則求補
		 CPL A
	 	 ADD A,#01H
		 MOV R6,A
	 	 MOV A,R7
		 CPL A
	 	 ADDC A,#00H
		 MOV R7,A
POS1:	 MOV A,R5		 ;取乘數
		 RLC A		 	 ;乘數符號C2-->5DH位
		 MOV 5DH,C
		 JNC POS2		 ;為整數則轉
		 MOV A,R4
		 CPL A
		 ADD A,#01H
		 MOV R4,A
		 MOV A,R5
		 CPL A
		 ADDC A,#00H
		 MOV R5,A
POS2:	 ACALL MULT		 ;調雙字節無符號數乘法子程序
 		 MOV C,5CH
		 ANL C,5DH
		 JC TPL		         ;負負相乘則轉
		 MOV C,5CH
		 ORL C,5DH
		 JNC TPL		 ;正正相乘則轉
		 DEC R0
		 MOV A,@R0
		 CPL A
 		 ADD A,#01H
		 MOV @R0,A
		 INC R0
		 MOV A,@R0
		 CPL A
		 ADDC A,#00H
		 MOV @R0,A
TPL:	 RET
;**************************************************************************** MULT:	 MOV A,R6
		 MOV B,R4		 ;取低位相乘
		 MUL AB
		 MOV @R0,A
	 	 MOV R3,B
		 MOV A,R4
		 MOV B,R7
		 MUL AB
		 ADD A,R3
		 MOV R3,A
		 MOV A,B
		 ADDC A,#00H
		 MOV R2,AMOV A,R6
		 MOV B,R5
		 MUL AB
		 ADD A,R3
		 INC R0
		 MOV @R0,A
		 CLR 5BH
		 MOV A,R2
		 ADDC A,B
		 MOV R2,A
		 JNC LAST
		 SETB 5BH		 ;置進位標志
LAST:	 MOV A,R7
		 MOV B,R5
		 MUL AB
		 ADD A,R2
		 INC R0
		 MOV @R0,A		 ;存積的第二字節
		 MOV A,B
		 ADDC A,#00H
		 MOV C,5BH
		 ADDC A,#00H
		 INC R0      
         MOV @R0,A             
       RET
       END



?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线视频你懂得一区| 免费精品99久久国产综合精品| 91 com成人网| 久久久久国产精品麻豆| 亚洲成人免费视频| 国产精品原创巨作av| 欧美在线短视频| 中日韩av电影| 久草中文综合在线| 欧美日韩亚洲综合一区二区三区| 国产日韩欧美精品在线| 日本aⅴ亚洲精品中文乱码| 91在线一区二区三区| 精品国产一区二区精华| 婷婷综合五月天| 色婷婷综合视频在线观看| 国产欧美一区二区精品忘忧草 | 一区二区三区四区视频精品免费| 久久国产乱子精品免费女| 欧美剧在线免费观看网站| 国产精品不卡一区| 成人免费视频app| 国产亚洲一本大道中文在线| 久久99这里只有精品| 制服丝袜在线91| 亚洲国产日韩a在线播放性色| 91免费精品国自产拍在线不卡| 亚洲欧美一区二区三区久本道91| 激情综合网天天干| 日韩精品最新网址| 麻豆一区二区三区| 欧洲一区二区三区在线| 亚洲激情六月丁香| 在线观看日韩一区| 亚洲二区在线观看| 91精品国产色综合久久不卡电影 | 国产欧美视频一区二区| 国产主播一区二区| 国产亚洲一本大道中文在线| 激情都市一区二区| 国产日产精品1区| 岛国一区二区三区| 亚洲视频一二三区| 在线观看国产精品网站| 亚洲自拍偷拍综合| 6080国产精品一区二区| 免费人成在线不卡| 久久精品夜夜夜夜久久| 成人一级黄色片| 午夜精品久久久久久久蜜桃app| 一本一道久久a久久精品综合蜜臀| www.亚洲激情.com| 欧美xfplay| 免费的成人av| 精品视频在线免费| 欧美日韩一区在线观看| 日韩福利视频导航| 久久综合色综合88| 99国产麻豆精品| 五月激情综合色| 精品国产一区久久| 91在线观看污| 日本特黄久久久高潮| 国产日韩欧美麻豆| 欧美亚洲综合久久| 国产一区欧美日韩| 伊人一区二区三区| 精品国产乱码久久久久久老虎 | 夜夜爽夜夜爽精品视频| 精品国产乱码久久| 日韩视频一区在线观看| 亚洲大片免费看| 亚洲人xxxx| 欧美剧在线免费观看网站 | 中文字幕乱码日本亚洲一区二区| 99久久精品一区二区| 欧美aaaaa成人免费观看视频| 国产亲近乱来精品视频| 欧美精品久久天天躁| 成人综合日日夜夜| 免费在线观看日韩欧美| 亚洲欧美日韩电影| 久久久久亚洲综合| 欧美男男青年gay1069videost| 国产一区二区三区蝌蚪| 亚洲第一久久影院| 国产女主播一区| 日韩一区二区中文字幕| 国产欧美日韩在线观看| 日本电影亚洲天堂一区| 国产精品系列在线播放| 亚洲成人av一区| 国产精品欧美极品| 欧美zozo另类异族| 4438x成人网最大色成网站| yourporn久久国产精品| 国产精华液一区二区三区| 日本亚洲天堂网| 亚洲图片欧美色图| 亚洲三级在线观看| 国产精品久久99| 欧美韩日一区二区三区| 精品sm捆绑视频| 日韩美一区二区三区| 欧美人体做爰大胆视频| 欧美色精品天天在线观看视频| 成人av网站在线| 成人精品免费网站| 国产91对白在线观看九色| 精品一二线国产| 精品夜夜嗨av一区二区三区| 看国产成人h片视频| 成人h动漫精品| 成人性生交大片免费看中文网站| 狠狠色丁香婷婷综合| 国内精品视频666| 激情偷乱视频一区二区三区| 久久99国内精品| 国产在线精品一区二区夜色| 经典三级视频一区| 国模冰冰炮一区二区| 国产一区二区三区四区五区入口| 精品亚洲成a人| 国产高清精品网站| 成人精品一区二区三区中文字幕| 不卡高清视频专区| 色综合久久久久综合体桃花网| 94色蜜桃网一区二区三区| 91成人在线免费观看| 欧美日韩免费不卡视频一区二区三区| 欧美视频中文一区二区三区在线观看| 欧美色视频在线观看| 91精品国产色综合久久ai换脸| 欧美大度的电影原声| 国产日韩视频一区二区三区| 国产精品国产三级国产普通话99 | 国产精品不卡在线观看| 亚洲裸体在线观看| 一区二区三区在线免费观看| 成人的网站免费观看| 午夜久久久影院| 日韩精品亚洲一区二区三区免费| 亚洲精品免费一二三区| 国产精品国产a| 性久久久久久久久久久久| 老色鬼精品视频在线观看播放| 国产成人精品三级| 欧美午夜精品免费| 久久精品一区二区三区av| 亚洲欧美偷拍另类a∨色屁股| 日韩不卡在线观看日韩不卡视频| 国产成人亚洲综合a∨猫咪| 色婷婷激情综合| 欧美mv日韩mv| 亚洲欧美另类图片小说| 精品一区免费av| 色婷婷av久久久久久久| 精品国产乱码久久| 亚洲线精品一区二区三区| 国产精品综合二区| 欧美久久久一区| 亚洲天堂成人在线观看| 久久99国产精品成人| 日本道精品一区二区三区 | 国产欧美一区二区三区沐欲| 精品国产99国产精品| 亚洲婷婷综合久久一本伊一区| 日韩电影免费在线观看网站| 成人av高清在线| 日韩精品一区二区三区在线播放| 亚洲美女视频一区| 国产在线麻豆精品观看| 欧美精品色综合| 自拍偷拍国产精品| 国产福利91精品一区| 67194成人在线观看| 亚洲影视资源网| 不卡的av在线播放| 久久综合久色欧美综合狠狠| 午夜日韩在线观看| 色天使色偷偷av一区二区| 中文字幕av资源一区| 紧缚奴在线一区二区三区| 91精品国产一区二区人妖| 一区二区视频在线| 成人av网站在线| 欧美国产日本韩| 国产91丝袜在线播放九色| 久久久久久久国产精品影院| 免费日本视频一区| 日韩小视频在线观看专区| 亚洲国产裸拍裸体视频在线观看乱了 | 欧美变态tickle挠乳网站| 亚洲国产成人tv| 欧美日韩另类国产亚洲欧美一级| 亚洲蜜臀av乱码久久精品蜜桃| 东方aⅴ免费观看久久av| 久久久久国产精品麻豆ai换脸| 国产一区二区三区在线观看免费| 亚洲精品在线电影|