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

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

?? tcmain_sucess.asm

?? 基于TLC2543AD轉換芯片的探測儀程序 描述:TLC2543AD芯片為串行12位AD轉換芯片,10us的轉換時間,11路 模擬輸入通道,全串行操作 程序功能:將TLC2543芯片轉換得
?? ASM
字號:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;           基于TLC2543AD轉換芯片的探測儀程序
;;描述:TLC2543AD芯片為串行12位AD轉換芯片,10us的轉換時間,11路
;;     模擬輸入通道,全串行操作
;;程序功能:將TLC2543芯片轉換得到的數據有條件的發送到PC機
;;附加功能:將采樣結果送出到數碼管上顯示
;;操作說明:該程序根據N(需要采樣的通道數)的值來進行通道采樣
;;         從0通道開始,最大為10,不能超過10,否則出錯,采集到的數據
;;		   保存到以DBUF定義的起始地址單元中,數據位數為12位.發送
;;		   按鍵每按一次,在向串口發送當前顯示通道數據的同時,顯示將
;;		   更新到下一通道數據,直到定義的通道數據全部發送完畢后,顯
;;		   示數據將回到0通道.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
			
;;;;;;;;;;;;;;;;;;;
;;  變量定義
;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;定義TLC2543引腳與2051之間的硬件連接關系
CLK		BIT	P3.5
DIN		BIT	P3.4
DOUT	BIT	P3.3
CS		BIT	P3.7         	
		
N		EQU	1				;定義需要采樣的通道數(兼容多通道)
DBUF	EQU	30H				;轉換數據保存單元的開始單元
;;;;;;;;;;;;;;;;;;;;;;
;;顯示程序部分變量定義
;;;;;;;;;;;;;;;;;;;;;;
;定義ETK6201與2051的硬件連接關系
;;;;;;;;;;;;;;;;;;;;;;
DISDIN	BIT   P1.0			
DISCLK	BIT   P1.1
DISSTB	BIT	P1.2
SENDKEY  BIT	P1.5			;數據發送鍵	

;;;;;;命令定義;;;;;;;
COMMAND1	   EQU     03H  	;11段*7位模式
COMMAND2   	EQU	  40H  	;顯示數據地址自動+1
COMMAND3   	EQU	  0C0H   ;其始地址為00H
COMMAND4   	EQU	  8AH  	;開始顯示,亮度等級為4/16(最大16/16)

DISBUF1	DATA	22H			;顯示BUF1
DISBUF2 DATA	23H			;**2
DISBUF3 DATA    24H			;**3
DISBUF4	DATA	25H			;**4
CHACKNUM	DATA	26H		;對采樣數據進行記錄
			
			ORG  	0000H
			AJMP	START
			ORG		0003H
			RETI
			ORG		000BH
			;AJMP	DISPLAY
			RETI
			ORG		0013H
			RETI
			ORG		001BH
			RETI
			ORG 	0023H
    		;LJMP 	COMM      ;串口中斷(發送采樣數據)
    		RETI
    		
;;;;;;;;;;;;;;;;;;;
;;程序初始化
;;;;;;;;;;;;;;;;;;;
START:		MOV	SP,#70H	  	  	;定義棧低(向上最大16個字節,注意不要溢出)
			MOV	P1,#0FFH		;初始化顯示端口
			ACALL	INIT_RS232	;初始化串口
           	          	
INIT:		MOV	DISBUF1,#13H
			MOV	DISBUF2,#13H
			MOV	DISBUF3,#13H
			MOV	DISBUF4,#13H
			ACALL	DISPLAY	   	;初始化顯示"- - - -"
			SETB EA	

					
MAIN:		MOV		R0,#DBUF    ;設置數據緩沖區指針
			MOV		R1,#N	    ;設置顯示的通道數據個數
MM:		MOV		CHACKNUM,#200;調節等待時間	
			ACALL	ADCN	    ;調用A/D轉換程序
			ACALL	DISCOV	    ;調用數據轉換程序
MM2:	   DJNZ	CHACKNUM,MM1;調節等待時間
		   ACALL	DEALY10MS	;延時10MS后繼續
			SJMP	MM				;進行下一次采樣
MM1:		JB		SENDKEY,MM2	;判斷數據發送鍵是否按下
			ACALL	DEALY10MS	;延時10MS后繼續判斷
			JB		SENDKEY,MM	;如果為高電平,則為干擾,放棄操作,繼續采樣
			JNB		SENDKEY,$	;等待抬起
			ACALL	DISPLAY	    ;顯示采樣數據,然后發送采樣數據到串口
			MOV		R0,#22H
SENDNEX:	MOV		A,@R0
			ADD		A,#30H
			ACALL	TX_CHAR
			INC		R0
			CJNE	R0,#27H,SENDNEX
			;;;;;;;;;;;;;;;
			MOV		A,#47		;'/'
			ACALL	TX_CHAR
			;;;;;;;;;;;;;;;
			MOV		A,#32		;' '
			ACALL	TX_CHAR
			;;;;;;;;;;;;;;;
			SJMP	MAIN



			
DISCOV:		MOV		A,@R0			;讀取轉換數據高8位
			ANL		A,#0F0H			;取前四位
			SWAP	A
			MOV		R6,A			;存放到轉換BUF高字節中
			MOV		A,@R0			
			ANL		A,#0FH			;取后四位
			SWAP	A
			MOV		R7,A			;存放到轉換BUF低前半字節中
			INC		R0				;調整指針,指向低4位數據字節
			MOV		A,@R0			;取數據
			SWAP	A
			ORL		A,R7			;將數據整合到A中
			MOV		R7,A			;將整合數據給R7
			ACALL	HB2				;轉換為BCD碼
			MOV		A,R4			;轉換后的數據送顯示緩沖區顯示
			ANL		A,#0F0H			;取千位
			SWAP	A
			MOV		DISBUF1,A
			MOV		A,R4
			ANL		A,#0FH			;取百位
			MOV		DISBUF2,A
			MOV		A,R5
			ANL		A,#0F0H			;取十位
			SWAP	A
			MOV		DISBUF3,A
			MOV		A,R5
			ANL		A,#0FH			;取個位
			MOV		DISBUF4,A
			DEC		R0				;還原指針
			RET
			

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;4、HB2
;;功能:雙字節無符號16進制整數轉換為BCD碼
;;入口條件:待轉換的雙字節十六進制整數在R6、R7中。
;;出口信息:轉換后的三字節BCD碼整數在R3、R4、R5中。
;;影響資源:PSW、A、R2~R7 堆棧需求: 2字節
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
HB2:		;PUSH 	PSW	
			;SETB	RS1
			;SETB	RS0		;使用第三區工作寄存器
			CLR 	A 		;BCD碼初始化
			MOV 	R3,A
			MOV 	R4,A
			MOV 	R5,A
			MOV 	R2,#10H ;轉換雙字節十六進制整數
HB3: 		MOV 	A,R7 	;從高端移出待轉換數的一位到CY中
			RLC 	A
			MOV 	R7,A
			MOV 	A,R6
			RLC 	A
			MOV 	R6,A
			MOV 	A,R5 	;BCD碼帶進位自身相加,相當于乘2
			ADDC 	A,R5
			DA A 			;十進制調整
			MOV 	R5,A
			MOV 	A,R4
			ADDC 	A,R4
			DA A
			MOV 	R4,A
			MOV 	A,R3
			ADDC 	A,R3
			MOV 	R3,A 	;雙字節十六進制數的萬位數不超過6,不用調整
			DJNZ 	R2,HB3 	;處理完16bit
			;POP		PSW
			RET
							
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;			A/D轉換子程序
;;程序名:	ADCN
;;入口條件:	無
;;出口條件:	轉換后的數據保存在40H開始的內存單元中,一個通道的數據占2個
;;			字節
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ADCN:		PUSH	PSW
			SETB	RS1
			CLR     RS0			;使用第2區工作寄存器
			SETB	DOUT		;轉換開始前初始化信號電平,準備接收數據
			SETB	CS          ;暫時關閉TLC2543 
			CLR		CLK			;初始化時鐘脈沖為低電平
			MOV		R0,#DBUF    ;存放數據的緩沖區首地址
			MOV		R7,#N
			MOV		R6,#00H     ;控制字:通道號、精度(位數)、輸出格式(指向0通道)
			ACALL	ADCS        ;讀寫一次,舍區取得的數據,啟動0通道的轉換過程
			MOV		R2,#00			;清空轉換數據緩存單元,準備接收轉換數據(高8位)
			MOV		R3,#00			;(低4位)
					
ADCN1:		;ACALL	ADCS        ;啟動轉換
			MOV		R1,#10		;延時22us	
			DJNZ	R1,$		;延時22us
			ACALL	ADCS        ;再次讀取轉換結果,避免偶然誤差
			MOV		A,R2        ;高8位存30H
			MOV		@R0,A
			INC		R0			;調整指針
			MOV		A,R3		
			MOV		@R0,A       ;低4位存31H
			INC		R0			;調整指針
			MOV		A,R6		;調整通道指針,指向下一個通道
			ADD		A,#10H
			MOV		R6,A        ;修改通道號,加1
			DJNZ	R7,ADCN1	;直到所有通道全部轉換完畢
			POP		PSW			;還原工作區
			RET
				
			
		
;//********************;采樣轉換1個通道***********************//		
;入口參數:通道控制字,在R6中
;返回值  :高八位在R2中,低4位在R3中
;//**********************************************************//		
ADCS:		CLR		CLK           
			CLR		CS				;片選信號CS低電平開始采樣轉換
			MOV		R5,#8
			MOV		A,R6			;取轉換結果的同時,送下一個通道的控制字,接收一個字節數據,發送一個字節控制字
ADCS1:		MOV		C,DOUT
			RLC		A
			MOV		DIN,C
			SETB	CLK
			CLR		CLK
			DJNZ	R5,ADCS1
			MOV		R2,A            ;高8位存R2
			MOV		A,#00
			MOV		R5,#4
ADCS2:		MOV		C,DOUT
			RLC		A
			SETB	CLK
			CLR		CLK
			DJNZ	R5,ADCS2        ;取低4位
			SWAP	A
			MOV		R3,A            ;低4位存R3
			SETB	CS              ;對一個通道的轉換結束,關閉TLC2543
			RET			


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;RS232初始化
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
INIT_RS232:
			MOV		SCON,#50H
			MOV		TMOD,#20H
			MOV		TH1,#0FDH
			MOV		TL1,#0FDH
			SETB	TR1
			SETB	TI          ;初始化成發送數據結束,可以繼續發送數據
			RET
;----------------------------------------------------------------------
;****2、************傳送一個字符數據
TX_CHAR:
			JNB		TI,$
			CLR		TI
			MOV		SBUF,A
			RET
;----------------------------------------------------------------------




;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;ETK6201顯示程序,使用RS1=1,RS0=0的1區 2003/4/19
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DISPLAY:  PUSH ACC             ;保存ACC
          PUSH PSW
          CLR RS1
          SETB RS0             ;使用第一區工作寄存器
          MOV  P1,#0FFH		   ;初始化顯示端口
          CLR	DISCLK		   ;準備
          MOV	A,#COMMAND2	   ;寫2號命令字
          ACALL	DSOUT
          SETB	DISSTB		   ;關閉ETK6201
          ACALL	DS1MS		   ;延時 
          MOV	A,#COMMAND3	   ;寫3號命令字
          ACALL	DSOUT
          MOV DPTR,#XSTAB    
          MOV A,DISBUF1        ;取得數據
          MOVC A,@A+DPTR       ;提取字模
          ACALL DSOUT          ;調用送出子程序
			 MOV	A,#00H
			 ACALL	DSOUT			 ;無用的顯示區域填充0
          MOV A,DISBUF2
          MOVC A,@A+DPTR       ;提取字模
          ACALL DSOUT          ;送出
			 MOV	A,#00H
			 ACALL	DSOUT			 ;無用的顯示區域填充0
          MOV A,DISBUF3
          MOVC A,@A+DPTR       ;提取字模
          ACALL DSOUT          ;送出
			 MOV	A,#00H
			 ACALL	DSOUT			 ;無用的顯示區域填充0
          MOV A,DISBUF4
          MOVC A,@A+DPTR       ;提取字模
          ACALL DSOUT          ;送出
			 MOV	A,#00H
			 ACALL	DSOUT			 ;無用的顯示區域填充0
          SETB	DISSTB		   ;關閉ETK6201
          ACALL	DS1MS		   ;延時 
          MOV	A,#COMMAND1	   ;寫1號命令字
          ACALL	DSOUT
          SETB	DISSTB		   ;關閉ETK6201
          ACALL	DS1MS		   ;延時 
          MOV	A,#COMMAND4	   ;寫4號命令字
          ACALL	DSOUT
          SETB	DISSTB		   ;關閉ETK6201
          POP PSW
          POP ACC              ;出棧
          RET			

;---送出循環----------
DSOUT:    CLR	DISSTB		   ;啟動ETK6201
		    MOV R0,#8            ;傳送一個字節8位
DSLOOP:   RRC A                ;右移
          MOV  DISDIN,C         ;送數據到數據口
          CLR  DISCLK
			 NOP
			 NOP
          SETB DISCLK           ;送一時鐘
          DJNZ R0,DSLOOP
          RET         
;---顯示延時---------- 
DS1MS:    MOV R1,#24
DS1LO:    MOV R2,#100
          DJNZ R2,$
          DJNZ R1,DS1LO
          RET                  ;延時返回



;COMM:	  CLR	EA
;		  CLR	TI			   ;清除發送標志,準備下一次發送	
;		  SETB	EA
;		  RETI				   ;是否用查詢方式就不用使用中斷了?
		  
          			
 


DEALY10MS:PUSH	PSW
		  SETB  RS1
		  SETB	RS0			   ;使用第三區工作寄存器
		  MOV R2,#50H
DS1L00:   MOV R3,#0FFH
          DJNZ R3,$
          DJNZ R2,DS1L00
          POP	PSW				;還原寄存器區
          RET                  ;延時返回	
          
          
;顯示字表(共陰)
XSTAB:    DB  7eH,30H,6dH,79H    ;"0","1","2","3"
          DB  33H,5bH,5fH,70H    ;"4","5","6","7"
          DB  7FH,7bH,77H,1fH    ;"8","9","A","B" 
          DB  0dH,3dH,4fH,47H    ;"C","D","E","F"
          DB  00H,5bH,3eH,01H	   ;" ","s","U","Z"
           
;	{'0',0x7e},
;	{'1',0x30},
;	{'2',0x6d},
;	{'3',0x79},
;	{'4',0x33},
;	{'5',0x5b},
;	{'6',0x5f},                                                     
;	{'7',0x70},
;	{'8',0x7f},
;	{'9',0x7b},
;	{' ',0x00},
;	{'a',0x77},
;	{'b',0x1f},
;	{'c',0x0d},
;	{'d',0x3d},
;	{'e',0x4f},
;	{'f',0x47},
;	{'s',0x5b},
;	{'u',0x3e},
;   {'z',0x01} /*中線*/          
          
          
END          		

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人激情电影免费在线观看| 精品对白一区国产伦| 中文字幕精品一区二区精品绿巨人| 亚洲一二三四区| av高清不卡在线| 国产精品国产三级国产a| 欧美日韩精品一区视频| 国产精品一区二区免费不卡| 成人污污视频在线观看| 欧美性感一类影片在线播放| 精品视频一区 二区 三区| 亚洲精品中文在线| 亚洲国产精品一区二区久久恐怖片| 一区二区三区免费看视频| 97久久精品人人做人人爽| 亚洲卡通动漫在线| 欧美色图激情小说| 日本va欧美va瓶| 精品国产伦一区二区三区观看方式| 日本aⅴ亚洲精品中文乱码| 欧美大片一区二区| 蜜臀久久久久久久| 日韩免费视频一区| 成人免费av资源| 午夜天堂影视香蕉久久| 日韩欧美一区在线观看| 国产成人免费视频精品含羞草妖精| 国产精品色在线观看| 欧美日韩精品一区二区三区蜜桃| 久久99精品久久久久久| 中文字幕一区二区三中文字幕| 欧美日韩你懂得| 波多野结衣在线一区| 青青草国产成人99久久| 一区二区中文字幕在线| 精品精品国产高清一毛片一天堂| 99久久夜色精品国产网站| 裸体健美xxxx欧美裸体表演| 中文字幕一区二区三区不卡| 精品三级av在线| 欧美久久高跟鞋激| 色琪琪一区二区三区亚洲区| 国产精品一区三区| 男女男精品网站| 亚洲国产中文字幕| 亚洲老妇xxxxxx| 亚洲综合视频网| 亚洲激情五月婷婷| 亚洲色图都市小说| 亚洲欧洲日本在线| 国产精品久久久久久久久久免费看| 精品噜噜噜噜久久久久久久久试看 | 午夜精品福利一区二区三区蜜桃| 欧美国产在线观看| 中文字幕免费不卡在线| 久久久久久久一区| 国产精品嫩草久久久久| 国产日韩欧美麻豆| 国产精品久久777777| 亚洲色图色小说| 亚洲成人免费影院| 日本最新不卡在线| 国产制服丝袜一区| 成人自拍视频在线| 91免费国产在线观看| 在线免费精品视频| 欧美电影免费观看完整版| 精品欧美乱码久久久久久| 久久精品视频一区二区| 1024国产精品| 日本成人在线网站| 成人看片黄a免费看在线| 91福利在线播放| 精品福利av导航| 亚洲男女毛片无遮挡| 日本中文字幕一区二区视频| 国产酒店精品激情| 欧美自拍偷拍午夜视频| 精品精品国产高清一毛片一天堂| 国产精品成人免费在线| 青娱乐精品视频在线| 99久久亚洲一区二区三区青草| 欧美一级国产精品| 日韩一区欧美小说| 国产乱人伦偷精品视频不卡| 欧美日韩性生活| 亚洲免费伊人电影| 国产成人在线免费观看| 欧美群妇大交群中文字幕| 国产精品系列在线| 国产精品一区免费视频| 欧美刺激脚交jootjob| 亚洲在线成人精品| fc2成人免费人成在线观看播放 | 美女视频黄a大片欧美| 91色综合久久久久婷婷| 国产精品久久一级| 国产一区二区按摩在线观看| 91精品国产综合久久福利| 亚洲一区欧美一区| 色94色欧美sute亚洲13| 亚洲视频在线观看一区| 99久精品国产| 亚洲在线免费播放| 欧美人与禽zozo性伦| 天堂久久一区二区三区| 精品日韩一区二区三区| 国产丶欧美丶日本不卡视频| 在线观看国产91| 精品福利av导航| 三级影片在线观看欧美日韩一区二区 | 日韩欧美国产电影| 日本中文一区二区三区| 日韩欧美一区二区在线视频| 另类欧美日韩国产在线| 国产女主播视频一区二区| 国产**成人网毛片九色 | 国产91精品露脸国语对白| 国产精品美女久久久久久久久久久| 国产一区二区三区综合| 国产精品久久久久7777按摩| 91麻豆国产自产在线观看| 亚洲精品国产成人久久av盗摄| 欧美色图天堂网| 捆绑紧缚一区二区三区视频| 国产欧美va欧美不卡在线| 欧美三级午夜理伦三级中视频| 蜜臀久久99精品久久久久宅男| 中日韩免费视频中文字幕| 欧美三级在线视频| 97精品久久久久中文字幕| 青青青爽久久午夜综合久久午夜| 国产日韩三级在线| 欧美精品丝袜中出| 成人综合在线视频| 日韩vs国产vs欧美| 亚洲精品午夜久久久| 久久久不卡网国产精品二区| 欧美丰满少妇xxxxx高潮对白| 国产精品一二三四五| 日韩电影一区二区三区四区| 亚洲欧洲成人自拍| 国产午夜精品一区二区| 日韩一区二区三区在线视频| 欧美在线观看你懂的| 91蜜桃在线观看| 欧美亚洲动漫精品| 99re66热这里只有精品3直播 | 加勒比av一区二区| 免费精品视频在线| 免费人成在线不卡| 日韩—二三区免费观看av| 日韩av一级片| 国产综合色在线| 国产a级毛片一区| 在线亚洲欧美专区二区| www.欧美日韩| 色综合久久88色综合天天| 丰满亚洲少妇av| 色伊人久久综合中文字幕| 色婷婷综合久久久久中文| 91黄色免费版| 欧美日韩三级一区二区| 91精品国产入口| 久久亚洲精华国产精华液| 国产精品你懂的| 日本在线观看不卡视频| 国产麻豆视频一区| 色噜噜夜夜夜综合网| 日韩午夜av电影| 成人欧美一区二区三区1314| 亚洲成人av中文| 丁香一区二区三区| 欧美色视频一区| 国产日韩欧美麻豆| 美日韩一区二区| 免费人成精品欧美精品| 国产91丝袜在线播放0| 欧美日韩国产一级二级| 中文字幕一区二区在线观看| 日本午夜一区二区| 欧美在线高清视频| 国产精品天美传媒| 国产伦理精品不卡| 日韩一区二区三区视频在线 | 日韩欧美一级精品久久| 伊人色综合久久天天人手人婷| 国产成人aaaa| 久久夜色精品一区| 美脚の诱脚舐め脚责91| 欧美性一二三区| 亚洲成人在线网站| 欧美伊人精品成人久久综合97| 亚洲人123区| 91在线看国产| 亚洲黄色录像片| 在线观看欧美精品| 午夜精品福利一区二区三区av | 日本高清不卡一区| 91精品国产91综合久久蜜臀|