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

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

?? memory.asm

?? 無限沖擊響應濾波器( llR )算法 由于系統對序列施加的算法
?? ASM
字號:
*********************************************************************************
*  MEMORY.ASM	v1.00								                            *
*  版權(c) 	2003-		北京合眾達電子技術有限責任公司			                *
*  設計者:	段立鋒								                                *
*********************************************************************************
		.file	"memory.asm"
		.c_mode
		.mmregs
		

		.copy	"vc54x.inc"	; VC5402 Memory-Mapped	Register Declaration
		.copy   "dec5416.inc" ; SEED DEC5416 Memory-Mapped Register Declaration
                       
		.def	_flash_erase
		.def	_flash_writes
		.def	_flash_writem
		.def	_flash_reads
		.def	_flash_readm
		.def    _progm_readm
		.def    _progm_writem
		
		.text

*********************************************************************************
*	FLASH的操作																	*
*********************************************************************************
*********************************************************************************
*																				*
* 函數定義:uint _flash_erase(uint addr, uint type)		   						*
* 功    能:Flash扇區/塊/整片擦除操作											*
*																				*
* 入口參數:A	  ---- 地址addr													*
*		       扇區擦除:Amsb~A11,每個扇區2K   								*
*		       塊擦除  :Amsb~A15,每個塊32K									*
*		       整片擦除:5555H													*
*		       Amsb:	A16,Flash用SST39VF200時								*
*		       			A17,Flash用SST39VF400時(缺省)						*
*		      			A18,Flash用SST39VF800時								*
*		       Flash定位在程序儲存空間0x4000000~401FFFFH                       *
*											   ~403FFFFH(缺省)   				*
*											   ~407FFFFH		                *
*		       地址addr為從A11開始的偏移地址,而非Flash的絕對地址					*
*          	   (SP+n) ---- 操作類型type,如果是.far_mode模式則n為2,否則n為1	*
*		       扇區擦除:30H													*
*		       塊擦除:  50H													*
*		       整片擦除:10H													*
* 出口參數:A	  ---- 擦除標志													*
*		       未擦干凈:00H													*
*		       已擦干凈:01H													*
* 資源使用:B,AR0																*
*																				*
*********************************************************************************
_flash_erase:	PSHM SWWSR            ;保存當前的系統等待時間
				LDM SWWSR,B
				OR #03FH,B          ;設置系統為14個等待
				STLM B,SWWSR
				
				PSHM    AH
				PSHM	AL			; 保存地址
				STM	#Flash_base,AH
				STM	#Flash_5555,AL
				STM	#Flash_UL1,BL
				WRITA	*(BL)			; AAH -> (405555H)
				STM	#Flash_2AAA,AL
				STM	#Flash_UL2,BL
				WRITA	*(BL)			; 55H -> (402AAAH)
				STM	#Flash_5555,AL
				STM	#Flash_ERASE,BL
				WRITA	*(BL)			; 80H -> (405555H)
				STM	#Flash_5555,AL
				STM	#Flash_UL1,BL
				WRITA	*(BL)			; AAH -> (405555H)
				STM	#Flash_2AAA,AL
				STM	#Flash_UL2,BL
				WRITA	*(BL)			; 55H -> (82AAAH)
	
				POPM	AL			; 恢復地址
				POPM    AH
				NOP
				NOP
				NOP
				.if	__far_mode
				WRITA	3H			; type -> (addr)
				.else
				WRITA	2H
				.endif
		
erase_poll:		READA	*(BL)
				BITF	*(BL),#Polling_Bit
				NOP
				NOP
				BC	erase_poll,NTC		; 查詢擦除是否完成?
				
				;STM	#00H,AH
				.if	__far_mode
				CMPM	3H,#Flash_SE
				BC	verify_SE,TC		; 扇區擦除時,轉verify_SE
				CMPM	3H,#Flash_BE
				BC	verify_BE,TC		; 塊擦除時,轉verify_BE
				CMPM	3H,#Flash_CE
				BC	verify_CE,TC		; 整片擦除時,轉verify_CE
				POPM SWWSR
				LD	#0,A			; 不是上述3種擦除操作,則置未擦除干凈標志,返回
				FRET
				.else		
				CMPM	2H,#Flash_SE
				BC	verify_SE,TC		; 扇區擦除時,轉verify_SE
				CMPM	2H,#Flash_BE
				BC	verify_BE,TC		; 塊擦除時,轉verify_BE
				CMPM	2H,#Flash_CE
				BC	verify_CE,TC		; 整片擦除時,轉verify_CE
				POPM SWWSR
				LD	#0,A			; 不是上述3種擦除操作,則置未擦除干凈標志,返回
				RET
				.endif
		
verify_SE:		;SFTL	A,Flash_SBIT
				;OR	#Flash_base,16,A		; A = 被擦除扇區的起始地址
				BD	verify_erase
				LD	#Flash_SSIZE,B		; B = 扇區大小
		
verify_BE:		;SFTL	A,Flash_BBIT
				;OR	#Flash_base,16,A		; A = 被擦除塊的起始地址
				BD	verify_erase
				LD	#Flash_BSIZE,B		; B = 塊大小

verify_CE:		LD	#Flash_base,16,A	; A = Flash起始地址
				LD	#Flash_CSIZE,4,B	; B = Flash大小

verify_erase:	READA	*(AR0)
				CMPM	*(AR0),#Flash_BLANK
				BCD	erase_end,NTC
				XC	1,NTC
				LD	#0,A			; 置未擦除干凈標志
				ADD	#ONE,A
				SUB	#ONE,B
				BC	verify_erase,BNEQ
				LD	#1,A			; 置擦除干凈標志,返回
erase_end:		POPM SWWSR
				.if	__far_mode
				FRET
				.else
				RET
				.endif
		
*********************************************************************************
*										*
* 函數定義:uint _flash_writes(ulong addr, uint data)		   		*
* 功    能:將數據data寫入addr所指定的Flash單元					*
*										*
* 入口參數:A	  ---- 地址addr,Amsb~A0					*
*		       Amsb:	A16,Flash用SST39VF200時				*
*		       		A17,Flash用SST39VF400時(缺省)			*
*		      		A18,Flash用SST39VF800時				*
*		       Flash定位在程序儲存空間80000H~9FFFFH/BFFFFH(缺省)/FFFFFH	*
*		       地址addr為從0開始的偏移地址,而非Flash的絕對地址		*
*          (SP+n) ---- 數據data,如果是.far_mode模式則n為2,否則n為1		*
* 出口參數:A	  ---- 寫入標志							*
*		       未寫入:00H						*
*		       已寫入:01H						*
* 資源使用:B									*
*										*
*********************************************************************************
_flash_writes:	PSHM SWWSR            ;保存當前的系統等待時間
				LDM SWWSR,B
				OR #03FH,B          ;設置系統為14個等待
				STLM B,SWWSR
				
				PSHM	AL
				PSHM	AH			; 保存地址
				STM	#Flash_base,AH
				STM	#Flash_5555,AL
				STM	#Flash_UL1,BL
				WRITA	*(BL)			; AAH -> (85555H)
				STM	#Flash_2AAA,AL
				STM	#Flash_UL2,BL
				WRITA	*(BL)			; 55H -> (82AAAH)
				STM	#Flash_5555,AL
				STM	#Flash_PRG,BL
				WRITA	*(BL)			; A0H -> (85555H)
				
				POPM	AH			; 恢復地址 
				POPM	AL
				OR	#Flash_base,16,A
				.if	__far_mode
				WRITA	3H			; data -> (addr)
				.else
				WRITA	2H
				.endif
		
write_poll:		READA	*(BL)
				NOP
				NOP
				.if	__far_mode
				XOR	3H,B			; data ^ B
				.else
				XOR	2H,B
				.endif
				NOP
				NOP
				NOP	
				BITF	*(BL),#Polling_Bit
				BC	write_poll,TC		; 查詢寫操作是否完成?
				
			    READA	*(BL)
			    .if	__far_mode
				XOR	3H,B			; data ^ B
				.else
				XOR	2H,B
				.endif
				NOP
				NOP
				NOP
				STM	#ZERO,BH		; 驗證寫操作
				LD	#1,A			; 正確,A = 1
				XC	1,BNEQ
				LD	#0,A			; 錯誤,A = 0
				NOP
				NOP
				NOP
				POPM SWWSR
				.if	__far_mode
				FRET
				.else
				RET
				.endif
		
*********************************************************************************
*										*
* 函數定義:uint _flash_writem(ulong addr, uint * ptr, uint length)   		*
* 功    能:將ptr所指向的數據緩沖區中的length個數據寫入addr所指定的Flash單元	*
*										*
* 入口參數:A	  ---- 地址addr,Amsb~A0					*
*		       Amsb:	A16,Flash用SST39VF200時				*
*		       		A17,Flash用SST39VF400時(缺省)			*
*		      		A18,Flash用SST39VF800時				*
*		       Flash定位在程序儲存空間80000H~9FFFFH/BFFFFH(缺省)/FFFFFH	*
*		       地址addr為從0開始的偏移地址,而非Flash的絕對地址		*
*          (SP+n) ---- 數據緩沖區起始地址ptr,如果是.far_mode模式則n為2,否則n為1	*
*          (SP+m) ---- 數據長度lrngth,如果是.far_mode模式則m為3,否則m為2	*
* 出口參數:A	  ---- 寫入標志							*
*		       未寫入:00H						*
*		       已寫入:01H						*
* 資源使用:B,AR0								*
*										*
*********************************************************************************
_flash_writem:	PSHM SWWSR            ;保存當前的系統等待時間
				LDM SWWSR,B
				OR #03FH,B          ;設置系統為14個等待
				STLM B,SWWSR
				
				.if	__far_mode
				LDU	2H,B
				.else
				LDU	1H,B
				.endif
				STLM	B,AR0			; AR0 ← 數據起始地址
writem_loop:	PSHM	AL			; 保存地址
				PSHM	AH
				.if	__far_mode
				FRAME	-2
				LDU	*AR0+,B			; 取數據
				STL	B,0H			; 傳遞數據
				FCALL	_flash_writes
				RC	AEQ			; 未寫入,則A = 0,返回
				FRAME	2
				POPM	AH
				POPM	AL
				ADD	#ONE,A			; Flash地址+1
				ADDM	#-1,3H
				CMPM	3H,#ZERO
				.else
				FRAME	-1
				LDU	*AR0+,B			; 取數據
				STL	B,0H			; 傳遞數據
				CALL	_flash_writes
				RC	AEQ			; 未寫入,則A = 0,返回
				FRAME	1
				POPM	AH
				POPM	AL
				ADD	#ONE,A			; Flash地址+1
				ADDM	#-1,2H
				CMPM	2H,#ZERO
				.endif
				BC	writem_loop,NTC
				LD	#1,A			; 已寫入,則A = 1,返回
				
				POPM SWWSR
				.if	__far_mode
				FRET
				.else
				RET
				.endif
		
*********************************************************************************
*										*
* 函數定義:uint _flash_reads(ulong addr)			   		*
* 功    能:從addr指定的Flash單元中讀出一個數據					*
*										*
* 入口參數:A	  ---- 地址addr,Amsb~A0					*
*		       Amsb:	A16,Flash用SST39VF200時				*
*		       		A17,Flash用SST39VF400時(缺省)			*
*		      		A18,Flash用SST39VF800時				*
*		       Flash定位在程序儲存空間80000H~9FFFFH/BFFFFH(缺省)/FFFFFH	*
*		       地址addr為從0開始的偏移地址,而非Flash的絕對地址		*
* 出口參數:A	  ---- 讀出數據							*
* 資源使用:A									*
*										*
*********************************************************************************
_flash_reads:	PSHM SWWSR            ;保存當前的系統等待時間
				LDM SWWSR,B
				OR #03FH,B          ;設置系統為14個等待
				STLM B,SWWSR
				
				OR	#Flash_base,16,A
				READA	*(AL)
				POPM SWWSR
				
				.if	__far_mode
				FRET
				.else
				RET
				.endif
		
*********************************************************************************
*										*
* 函數定義:void _flash_readm(ulong addr, uint * ptr, uint length)   		*
* 功    能:從addr指定的Flash單元中讀出length數據到ptr所指向的數據緩沖區中		*
*										*
* 入口參數:A	  ---- 地址addr,Amsb~A0					*
*		       Amsb:	A16,Flash用SST39VF200時				*
*		       		A17,Flash用SST39VF400時(缺省)			*
*		      		A18,Flash用SST39VF800時				*
*		       Flash定位在程序儲存空間80000H~9FFFFH/BFFFFH(缺省)/FFFFFH	*
*		       地址addr為從0開始的偏移地址,而非Flash的絕對地址		*
*          (SP+n) ---- 數據緩沖區起始地址ptr,如果是.far_mode模式則n為2,否則n為1	*
*          (SP+m) ---- 數據長度length,如果是.far_mode模式則m為3,否則m為2	*
* 出口參數:A	  ---- 讀出數據							*
* 資源使用:B,AR0								*
*										*
*********************************************************************************
_flash_readm:	PSHM SWWSR            ;保存當前的系統等待時間
				LDM SWWSR,B
				OR #03FH,B          ;設置系統為14個等待
				STLM B,SWWSR
				
				OR	#Flash_base,16,A
				.if	__far_mode
				LDU	2H,B
				.else
				LDU	1H,B
				.endif
				STLM	B,AR0			; AR0 ← 數據起始地址
				
readm_loop:		READA	*AR0+
				ADD	#ONE,A			; Flash地址+1
				.if	__far_mode
				ADDM	#-1,3H
				CMPM	3H,#ZERO
				.else
				ADDM	#-1,2H
				CMPM	2H,#ZERO
				.endif
				BC	readm_loop,NTC
				
				POPM SWWSR
				.if	__far_mode
				FRET
				.else
				RET
				.endif
*************************************************************************************
*																					*
* 函數定義:void _progm_readm(ulong addr, uint * ptr, uint length)   				*
* 功    能:從addr指定的程序空間中讀出length數據到ptr所指向的數據緩沖區中			*
*																					*
* 入口參數:A	  ---- 地址addr,程序空間的地址										*
*          (SP+n) ---- 數據緩沖區起始地址ptr,如果是.far_mode模式則n為2,否則n為1	*
*          (SP+m) ---- 數據長度length,如果是.far_mode模式則m為3,否則m為2			*
* 出口參數:A	  ---- 讀出數據														*
* 資源使用:B,AR0																	*
*																					*
*************************************************************************************
_progm_readm:	.if	__far_mode         ;獲取數據緩沖區的首址
				LDU	2H,B
				.else
				LDU	1H,B
				.endif
				STLM	B,AR0		   ; AR0 ← 數據起始地址
		
preadm_loop:	READA	*AR0+
				ADD	#ONE,A			   ; 程序空間地址+1
				.if	__far_mode
				ADDM	#-1,3H		   ; 數據區長度-1
				CMPM	3H,#ZERO
				.else
				ADDM	#-1,2H
				CMPM	2H,#ZERO     
				.endif
				BC	preadm_loop,NTC    ; 操作是否完成
				
				.if	__far_mode
				FRET
				.else
				RET
				.endif
*************************************************************************************
*																					*
* 函數定義:void _progm_writem(ulong addr, uint * ptr, uint length)   				*
* 功    能:從ptr所指向的數據緩沖區中將length長的數據寫入addr指定的程序空間中		*
*																					*
* 入口參數:A	  ---- 地址addr,程序空間的地址										*
*          (SP+n) ---- 數據緩沖區起始地址ptr,如果是.far_mode模式則n為2,否則n為1	*
*          (SP+m) ---- 數據長度length,如果是.far_mode模式則m為3,否則m為2			*
* 出口參數:A	  ---- 讀出數據														*
* 資源使用:B,AR0																	*
*																					*
*************************************************************************************						
_progm_writem:	.if	__far_mode         ;獲取數據緩沖區的首址
				LDU	2H,B
				.else
				LDU	1H,B
				.endif
				STLM	B,AR0		   ; AR0 ← 數據起始地址
		
pwritem_loop:	WRITA	*AR0+
				ADD	#ONE,A			   ; 程序空間地址+1
				.if	__far_mode
				ADDM	#-1,3H		   ; 數據區長度-1
				CMPM	3H,#ZERO
				.else
				ADDM	#-1,2H
				CMPM	2H,#ZERO     
				.endif
				BC	pwritem_loop,NTC    ; 操作是否完成
				
				.if	__far_mode
				FRET
				.else
				RET
				.endif
		.end

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
**欧美大码日韩| 日日夜夜精品视频免费| 亚洲一区二区三区激情| 另类小说综合欧美亚洲| 在线一区二区三区| 国产亚洲成aⅴ人片在线观看| 亚洲午夜免费电影| 国产jizzjizz一区二区| 91精品国产一区二区| 亚洲久草在线视频| 成人a区在线观看| 欧美一级精品大片| 亚洲成人自拍网| 一本久道中文字幕精品亚洲嫩| 国产欧美一二三区| 国产精品一区免费视频| 日韩欧美国产一区二区在线播放| 一区二区欧美视频| 成人一道本在线| 欧美国产综合一区二区| 狠狠色丁香九九婷婷综合五月| 欧美精品三级日韩久久| 亚洲一区二区成人在线观看| jlzzjlzz亚洲女人18| 久久综合狠狠综合久久综合88| 青青青伊人色综合久久| 91精品国产欧美一区二区18| 午夜视频在线观看一区二区| 欧美精品777| 午夜欧美2019年伦理| 欧美日韩二区三区| 午夜精品福利在线| 91精品午夜视频| 美腿丝袜亚洲综合| 欧美久久久久免费| 日韩不卡手机在线v区| 在线播放91灌醉迷j高跟美女 | 欧美色综合网站| 亚洲蜜臀av乱码久久精品 | 91精品国产欧美一区二区18| 日韩综合一区二区| 欧美大肚乱孕交hd孕妇| 极品少妇xxxx偷拍精品少妇| 精品欧美久久久| 国产成人av电影在线观看| 国产欧美一区二区精品仙草咪| 成人免费毛片app| 中文字幕在线观看不卡视频| 色婷婷国产精品| 亚洲成人自拍一区| 精品国精品国产| 丰满岳乱妇一区二区三区| 国产精品毛片久久久久久| 91视频一区二区| 亚洲成a天堂v人片| 亚洲一二三级电影| 欧美大胆人体bbbb| 国产自产2019最新不卡| 久久先锋影音av| 99视频超级精品| 一区二区三区四区中文字幕| 欧美精品成人一区二区三区四区| 日韩av不卡在线观看| 久久久久久久久久看片| 波多野结衣精品在线| 亚洲成人av福利| 国产网红主播福利一区二区| 欧美伊人精品成人久久综合97| 久久99精品久久久久久动态图 | 国产日本一区二区| 久久成人综合网| 亚洲免费高清视频在线| 欧美高清视频一二三区| 国产在线乱码一区二区三区| 亚洲日本护士毛茸茸| 欧美高清性hdvideosex| av成人免费在线| 免费欧美在线视频| 中文字幕在线一区二区三区| 91精品中文字幕一区二区三区| 99re这里只有精品首页| 日韩电影在线一区二区三区| 日韩一区在线播放| 欧美va亚洲va在线观看蝴蝶网| 色综合久久久久久久久| 激情另类小说区图片区视频区| 一区二区三区精品视频| 久久免费电影网| 欧美一区欧美二区| 色就色 综合激情| 国产精品123区| 国产不卡在线一区| 亚洲综合一区二区精品导航| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 97久久超碰精品国产| 九九九精品视频| 日韩国产在线一| 一区二区三区在线影院| 国产欧美日本一区二区三区| 日韩欧美国产一区在线观看| 69av一区二区三区| 欧美日韩极品在线观看一区| 色8久久人人97超碰香蕉987| 91视频91自| 99视频精品全部免费在线| 不卡视频免费播放| 国产成人免费av在线| 国v精品久久久网| 国产在线不卡一区| 国产乱码精品一品二品| 国产麻豆精品95视频| 国产一区二三区| 激情伊人五月天久久综合| 精品制服美女丁香| 极品美女销魂一区二区三区免费| 奇米四色…亚洲| 久久99久久久久久久久久久| 蜜臀av性久久久久蜜臀aⅴ流畅 | 国内精品国产成人国产三级粉色 | 午夜国产精品一区| 性欧美大战久久久久久久久| 日韩精品成人一区二区在线| 性欧美大战久久久久久久久| 免费看欧美美女黄的网站| 韩国成人精品a∨在线观看| 国内精品伊人久久久久av一坑| 国产一区二区影院| 国产成人aaa| 91精彩视频在线观看| 欧美三级中文字| 日韩视频一区二区| 久久久久国产精品麻豆| 中文一区在线播放| 一区二区视频在线| 日韩制服丝袜先锋影音| 国产激情视频一区二区三区欧美| k8久久久一区二区三区| 欧美日韩国产电影| 精品sm在线观看| 欧美国产成人在线| 亚洲乱码国产乱码精品精的特点| 午夜影视日本亚洲欧洲精品| 久久精品国产一区二区| 成人听书哪个软件好| 91视视频在线直接观看在线看网页在线看| 在线视频你懂得一区二区三区| 欧美日本在线观看| 久久影院午夜论| 亚洲久本草在线中文字幕| 青青草国产成人99久久| 成人永久aaa| 91精品久久久久久蜜臀| 久久精品一区二区三区不卡 | 国产成人一区在线| 欧美在线视频你懂得| 久久久国产精品午夜一区ai换脸| 亚洲精品日韩专区silk| 久草精品在线观看| 91久久免费观看| 精品成人a区在线观看| 艳妇臀荡乳欲伦亚洲一区| 久久成人羞羞网站| 欧美中文字幕亚洲一区二区va在线| 精品国产一区二区三区忘忧草| 一区二区在线观看视频| 国产精品99久久久| 91精品国产综合久久香蕉麻豆| 中文字幕久久午夜不卡| 免费成人美女在线观看.| 在线观看一区日韩| 国产欧美日韩在线| 蜜桃视频一区二区三区| 日本高清无吗v一区| 国产欧美一区二区三区网站| 另类欧美日韩国产在线| 欧美三级资源在线| 自拍偷拍亚洲激情| 国产精品自在在线| 日韩欧美一区二区不卡| 亚洲成av人在线观看| 97国产一区二区| 国产女同互慰高潮91漫画| 久久国产精品99久久人人澡| 欧美日韩一区视频| 亚洲精品欧美激情| www.欧美色图| 国产日韩视频一区二区三区| 国内精品自线一区二区三区视频| 91精品在线一区二区| 五月激情丁香一区二区三区| 色偷偷一区二区三区| 国产精品国产三级国产有无不卡| 国产精品伊人色| 久久综合色之久久综合| 麻豆久久一区二区| 欧美大白屁股肥臀xxxxxx| 蜜臀av一级做a爰片久久| 日韩欧美国产三级| 国产在线一区二区综合免费视频| 欧美大胆一级视频|