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

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

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

?? 51系列單片機常用子程序
?? 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一区二区三区免费野_久草精品视频
jlzzjlzz亚洲日本少妇| 国产黄色精品视频| 国产精品女上位| 久久网站最新地址| 久久久久久久久久久电影| 26uuu国产一区二区三区| 欧美不卡激情三级在线观看| 欧美一区午夜视频在线观看| 欧美一级精品在线| 日韩欧美一区电影| 久久久综合视频| 国产人久久人人人人爽| 国产精品久久久久久久久图文区| 欧美国产成人精品| 一区二区三区在线播| 亚洲午夜久久久久久久久电影院 | 中文字幕欧美区| 国产欧美日本一区视频| 国产精品无遮挡| 亚洲欧美偷拍另类a∨色屁股| 亚洲猫色日本管| 丝袜国产日韩另类美女| 精品一区二区三区久久| caoporn国产精品| 欧美色偷偷大香| 久久嫩草精品久久久精品一| 国产精品久久久久一区二区三区 | 91精品办公室少妇高潮对白| 一本高清dvd不卡在线观看| 欧美日免费三级在线| 91精品麻豆日日躁夜夜躁| 国产亚洲制服色| 亚洲精品国产高清久久伦理二区| 日韩国产高清在线| 成人免费毛片aaaaa**| 欧美三级日韩三级| 国产欧美日韩在线观看| 一区二区三区成人| 国产一区二区在线观看视频| 91在线播放网址| 欧美不卡一二三| 亚洲国产一区视频| 91麻豆产精品久久久久久| 欧美日韩aaa| 国产精品美女久久久久aⅴ国产馆| 亚洲国产综合91精品麻豆| 国产精品正在播放| 欧美日韩一区二区三区视频| 国产精品区一区二区三区| 天天影视涩香欲综合网| 99久久伊人久久99| 久久久久久麻豆| 青青草成人在线观看| 欧美在线视频日韩| 国产精品久久久久久久蜜臀 | 丁香五精品蜜臀久久久久99网站| 欧美三级资源在线| 中文字幕欧美一| 国产毛片一区二区| 精品久久久久久最新网址| 亚洲成av人**亚洲成av**| 91伊人久久大香线蕉| 国产精品进线69影院| 国产精品一区二区久久不卡| 欧美一区午夜视频在线观看| 亚洲国产aⅴ天堂久久| 色美美综合视频| 日韩一区中文字幕| 99久久er热在这里只有精品66| 久久新电视剧免费观看| 精品一区二区三区香蕉蜜桃| 日韩欧美视频一区| 蜜臀a∨国产成人精品| 91精品福利在线一区二区三区 | 91精品国产综合久久福利软件 | 成人午夜私人影院| 欧美性猛交一区二区三区精品| 亚洲激情av在线| 色视频欧美一区二区三区| 亚洲欧美视频在线观看视频| 91在线观看一区二区| 中文字幕在线视频一区| 97se亚洲国产综合自在线不卡| 亚洲欧洲韩国日本视频| 一本久道久久综合中文字幕| 一区二区在线观看av| 在线视频亚洲一区| 日韩成人免费电影| 欧美大片一区二区三区| 国产一区美女在线| 日韩理论片中文av| 欧美午夜精品电影| 久久精品99国产精品| 国产日韩欧美不卡| 91污片在线观看| 偷偷要91色婷婷| 久久久精品黄色| 91免费视频网| 美女免费视频一区| 国产精品欧美一区喷水| 欧美性感一区二区三区| 久久国产精品色| 中文字幕精品综合| 欧美日韩一区二区三区四区五区 | 色婷婷亚洲精品| 亚洲激情一二三区| 欧美成人免费网站| 91丝袜美女网| 日韩精品福利网| 国产日产欧美一区二区三区| 欧洲精品视频在线观看| 久久国产精品区| 亚洲精品国产a| www国产成人免费观看视频 深夜成人网| 国产精品一区二区久久不卡| 亚洲激情六月丁香| 久久久精品国产99久久精品芒果| 色呦呦一区二区三区| 精品中文字幕一区二区| 一区二区三区美女| 精品国产电影一区二区| 色综合久久久久综合| 国产一区二区h| 首页国产欧美久久| 亚洲人精品午夜| 久久久综合激的五月天| 91麻豆精品国产自产在线观看一区 | 亚洲成人精品在线观看| 欧美韩国日本综合| 日韩欧美激情四射| 欧美日韩精品三区| 99久久夜色精品国产网站| 精品亚洲成av人在线观看| 性久久久久久久久久久久| 中文字幕中文字幕一区| 久久九九久久九九| 日韩一区二区免费视频| 欧美日韩国产一二三| 色噜噜久久综合| 97se狠狠狠综合亚洲狠狠| 成人综合婷婷国产精品久久蜜臀 | 久久精品一区二区三区四区| 欧美日韩国产免费一区二区| av电影一区二区| 成人毛片老司机大片| 国产乱子伦一区二区三区国色天香| 亚洲成人资源网| 亚洲动漫第一页| 亚洲国产视频直播| 亚洲午夜在线电影| 亚洲成人av在线电影| 一区二区三区毛片| 亚洲综合丁香婷婷六月香| 亚洲欧美另类综合偷拍| 亚洲人成网站在线| 亚洲蜜臀av乱码久久精品| 自拍av一区二区三区| 综合网在线视频| 亚洲欧美日韩中文字幕一区二区三区 | 日本高清不卡一区| 91精品1区2区| 欧美视频中文字幕| 欧美电影在哪看比较好| 日韩一卡二卡三卡四卡| 欧美成人a视频| 精品日韩99亚洲| 国产喷白浆一区二区三区| 国产精品污污网站在线观看| 国产精品婷婷午夜在线观看| 亚洲欧美另类图片小说| 亚洲自拍欧美精品| 日韩高清国产一区在线| 国内精品视频666| 北岛玲一区二区三区四区| 色香蕉成人二区免费| 欧美伦理视频网站| 久久久久久久久久久久电影| 日韩av一区二| 蜜桃视频在线一区| 成人午夜伦理影院| 精品视频在线看| 国产日产欧美一区二区三区| 亚洲欧美日韩一区| 麻豆精品视频在线观看视频| 成人性生交大片免费看中文网站| 色噜噜狠狠成人中文综合| 91精品国产综合久久福利| 国产精品久久久久久久裸模| 玖玖九九国产精品| 成人看片黄a免费看在线| 欧美日韩一区二区三区不卡| 日韩视频在线永久播放| 国产又黄又大久久| 成av人片一区二区| 欧美人与z0zoxxxx视频| 国产日产欧美一区二区视频| 视频在线观看一区| 97久久精品人人澡人人爽| 欧美成人精品高清在线播放| 夜夜亚洲天天久久|