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

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

?? sja_pelifunc.asm

?? 591單片機CAN模塊A51DEMO程序
?? ASM
?? 第 1 頁 / 共 2 頁
字號:
	MOV		R7,#4
	MOV     	REG_CANADR,@R0  ;指針指向模式寄存器
        INC             R0
SJASETAMR3:
	MOV		A,@R0
	MOV		REG_CANDAT,A
	DEC             REG_CANADR
        MOV             A,REG_CANDAT
	XRL		A,@R0
	JZ		SJASETAMR4
	DJNZ		R6,SJASETAMR3
	AJMP		SJASETAMR5
SJASETAMR4:
	INC		DPTR
	INC		R0
	DJNZ		R7,SJASETAMR3
	CLR		F0
SJASETAMR5:
	JB		F0,SJASETAMR6
	MOV		R7,#SJA_OK 
	RET
SJASETAMR6:
    	MOV		R7,#SJA_SETAMR_ERR
	RET

;/*
;***********************************************************************************************************************
;*子程序:  		SJASetBandRateStandard
;;*應用資源:	R7,R6,R5,ACC,F0,DPTR,CY
;*參數說明:  	R7		  標準常用波特率(Kbps)          
;*				0					20
;*				1					40
;*				2					50
;*				3					80
;*				4					100
;*				5					125
;*				6					200
;*				7					250
;*				8					400
;*				9					500
;*				10					666
;*				11					800
;*				12					1000		  
;*返回值:		R7
;*           	SJA_OK				  ; 設置總線定時器成功
;*			 	SJA_SETBTR_ERR		  ; 設置總線定時器錯
;*			 	SJA_NOBTRSIZE		  ;波特率不能設為此值
;;*			 	SJA_NOTRSTMODE	  ; CAN591不在復位模式
;*說明:     該子程序用于設定在系統晶體為12MHZ時,常用的標準波特率的值。
;*			參數BandRateSize只能為0~12,其它的值會返回SJA_NOBTRSIZE錯誤
;*			本子程序只能用于復位模式
;***********************************************************************************************************************
;*/
SJASetBandRateStandard:
	LCALL	 SJATestRstMode
	JNB	 F0,SJASETBTR1
   	MOV	 R7,#SJA_NOTRSTMODE
	RET
SJASETBTR1:
	MOV      A,R7          				;判斷波特率的值是否存在
    	CLR      CY
    	SUBB     A,#13        				;
    	JC       SJASETBTR2			        ;輸入的值大于12則不正確 
	MOV	 R7,#SJA_NOBTRSIZE	  
    	RET
SJASETBTR2:
    	MOV      A,R7 
    	RL       A
    	MOV      DPTR,#BANDRATE_TAB			;查表找出相應的預設第一個值
    	MOVC     A,@A+DPTR
    	MOV      R5,A           			;將數據保存
    	MOV      A,R7          				;找出第二個值 
    	RL       A
    	INC      A
    	MOVC     A,@A+DPTR
    	MOV      R6,A           			;保存值
    	MOV      REG_CANADR,#REG_CAN_BTR0   
    	MOV      REG_CANDAT,R5                           ;裝入波特率預設值,同步跳轉寬度、位寬度
    	MOV      A,REG_CANDAT        
    	XRL      A,R5          ;判斷寫入是否正確
    	JNZ      SJASETBTR3		            ;不正確 
    	MOV      REG_CANADR,#REG_CAN_BTR1
    	MOV      REG_CANDAT,R6
    	MOV      A,REG_CANDAT
    	XRL      A,R6          ;判斷寫入是否正確
    	JNZ      SJASETBTR3
	MOV	 R7,#SJA_OK
	RET
SJASETBTR3:
	MOV		 R7,#SJA_SETBTR_ERR
    	RET 


BANDRATE_TAB:
    DB 0D7H,     0FFH                     ;20KBPS的預設值1
    DB 0CBH,     0FFH                     ;40KBPS的預設值1
    DB 047H,     02FH                     ;50KBPS的預設值
    DB 0C5H,     0FFH                     ;80KBPS的預設值1
    DB 0C9H,     0A7H                     ;100KBPS的預設值1
    DB 045H,      2BH                     ;125KBPS的預設值1
    DB  04H,     0A7H                     ;200KBPS的預設值1
    DB  01H,     01CH                     ;250KBPS的預設值
    DB  02H,     025H                     ;400KBPS的預設值1
    DB 01H,      045H                     ;500KBPS的預設值1
    DB 080H,     0b6H                     ;666KBPS的預設值
    DB 00H,      016H                     ;800KBPS的預設值
    DB 01H,      012H                     ;1000KBPS的預設值1



;/*
;***********************************************************************************************************************
;*子程序:  		SJAWriteDataToTxBuf
;;*應用資源:     R7,R6,,R1,R0,ACC,F0
;;*參數說明:     R0 ;存放要發送的數據緩沖區的首址
;;*		R1 ;信息的報文描述符結構的的首地址
;;*返回值:		R7 ;
;*           	0		  ; 表示將數據成功的寫到到CAN591的發送緩沖區
;*		SJA_TXBUFLOCK	  ; CAN591發送緩沖區鎖定
;*           	SJA_WTXBUF_ERR    ; 表示寫數據失敗
;*
;*說明:     該子程序用于將要發送到總線的特定幀格式的數據寫入CAN591的發送緩沖區
;***********************************************************************************************************************
;*/
SJAWriteDataToTxBuf:
	MOV	A,REG_CANSTA
	JB	ACC.2,SJAWriteDATA
	MOV	R7,#SJA_TXBUFLOCK
    	RET
SJAWriteDATA:
	MOV	A,@R1
	JB	ACC.6,SJAWriteDTB0			;遠程幀
	JB	ACC.7,SJAWriteDTB1			;擴展幀
	;;;以下是標準幀、數據幀
	MOV	REG_CANADR,#REG_CAN_TXFMINFO
	MOV     R7,#03
	MOV     A,@R1
	ANL     A,#0FH
	MOV     R6,A
SJAWrite0: 
	MOV     A,@R1
	MOV 	REG_CANDAT,A
	INC	R1
        DJNZ	R7,SJAWrite0
SJAWrite1:
    	MOV     A,R6
	JZ	SJAWriteQuit
SJAWrite2:
	MOV     A,@R0
	MOV     REG_CANDAT,A
	INC     R0
	DJNZ    R6,SJAWrite2
SJAWriteQuit:
	RET
SJAWriteDTB0:
	AJMP	SJAWriteDTB3
;;以下是擴展幀、數據幀    
SJAWriteDTB1:
	MOV	REG_CANADR,#REG_CAN_TXFMINFO
	MOV     R7,#05
	MOV     A,@R1
	ANL     A,#0FH
	MOV     R6,A
SJAWrite3: 
	MOV     A,@R1
	MOV	REG_CANDAT,A
	INC	R1
    	DJNZ	R7,SJAWrite3
SJAWrite4:
	MOV     A,R6
	JZ	SJAWriteQuit
SJAWrite5:
	MOV     A,@R0
	MOV     REG_CANDAT,A
	INC     R0
	DJNZ    R6,SJAWrite5	
	RET
;;遠程幀
SJAWriteDTB3:	
	JB	ACC.7,SJAWriteDTB4			;擴展幀
	;;以下是遠程幀、標準幀
	MOV	REG_CANADR,#REG_CAN_TXFMINFO
	MOV     R7,#03
SJAWrite6: 
	MOV	REG_CANDAT,@R1
	INC	R1
    	DJNZ	R7,SJAWrite6
	RET
	;;以下是遠程幀、擴展幀
SJAWriteDTB4:
	MOV	REG_CANADR,#REG_CAN_TXFMINFO
	MOV     R7,#05
SJAWrite7: 
	MOV     A,@R1
	MOV	REG_CANDAT,A
	INC	R1
    	DJNZ	R7,SJAWrite7
	RET	
	
;/*
;***********************************************************************************************************************
;*子程序:    	 SJAReadDataFromRxBuf
;;*應用資源:     R7,R6,,R1,R0,AC
;;*參數說明:     R0 ;存放要發送的數據緩沖區的首址
;;*		R1 ;信息的報文描述符結構的的首地址
;;*返回值:	 R7 ;
;*           	0		  ; 表示將讀取數據成功
;*		SJA_RXBUFEMPTY	  ; CAN591接收緩沖區為空
;*           	SJA_RRXVUF_ERR    ; CAN591接收數據錯
;*
;*說明:     該子程序用于從CAN591讀取數據
;***********************************************************************************************************************
;*/
SJAReadDataFromRxBuf:
	MOV	A,REG_CANSTA	
	JB	ACC.0,SJAReadData
	MOV	R7,#SJA_RXBUFEMPTY
	RET
SJAReadData:
	MOV	REG_CANADR,#REG_CAN_RXFMINFO
	MOV	A,REG_CANDAT
	JB	ACC.7,SJAReadDataFRB0	;是否為擴展幀
	JB	ACC.6,SJAReadDataFRB1	;是否為遠程幀
	;以下是接收數據幀、標準幀
	MOV	R7,#03
	ANL	A,#0FH
	MOV     R6,A
        MOV	REG_CANADR,#REG_CAN_RXFMINFO
SJAReadData0:
	MOV     A,REG_CANDAT
    	MOV	@R1,A
	INC	R1
	DJNZ	R7,SJAReadData0
SJAReadData1:
	MOV	A,R6
	JZ	SJAReadDataQuit
SJAReadData2:
	MOV     A,REG_CANDAT
    	MOV	@R0,A
	INC	R0
	DJNZ	R6,SJAReadData2
SJAReadDataQuit:
	RET
SJAReadDataFRB0:
	AJMP	SJAReadDataFRB2
;;以下為標準幀遠程幀
SJAReadDataFRB1:
	MOV	R7,#03
        MOV	REG_CANADR,#REG_CAN_RXFMINFO
SJAReadData3:
	MOV     A,REG_CANDAT
	MOV	@R1,A
	INC	R1
	DJNZ	R7,SJAReadData3
	RET
;;以下為擴展幀
SJAReadDataFRB2:
	JB	ACC.6,SJAReadDataFRB3	;是否為遠程幀
;;;以下為擴展幀、數據幀
	MOV	R7,#05
	ANL	A,#0FH
	MOV     R6,A
        MOV	REG_CANADR,#REG_CAN_RXFMINFO
SJAReadData4:
	MOV     A,REG_CANDAT
    	MOV	@R1,A
	INC	R1
	DJNZ	R7,SJAReadData4
SJAReadData5:
	MOV	A,R6
	JZ	SJAReadDataQuit1
SJAReadData6:
	MOV     A,REG_CANDAT
    	MOV	@R0,A
	INC	R0
	DJNZ	R6,SJAReadData6
SJAReadDataQuit1:
	RET
;;;以下為擴展幀\遠程幀
SJAReadDataFRB3:
	MOV	R7,#05
        MOV	REG_CANADR,#REG_CAN_RXFMINFO
SJAReadData7:
	MOV    A,REG_CANDAT
	MOV	@R1,A
	INC	R1
	DJNZ	R7,SJAReadData7
	RET

;/*
;***********************************************************************************************************************
;*子程序:   	SJASystemPrgCMD(unsigned char cmd)
;;*應用資源:	R7,R6,,R1,R0,ACC,CY,DPTR
;;*參數說明:    R7 ;命令字
;;*返回值:	R7 ;	
;*           	0		  ; 表示命令執行成功
;*		SJA_IMPCMD_ERR	  ; 表示命令執行出錯
;*		SJA_NOTHISCMD     ; 沒有此命令
;*
;*說明:     該子程序用于執行CAN591的命令
;***********************************************************************************************************************
;*/
SJASystemPrgCMD:
	MOV	REG_CANADR,#REG_CAN_CMR
	MOV	A,R7
	CLR	CY
	CJNE	A,#12H,SJASystemPrgCMD0
	MOV	REG_CANDAT,A
	CLR     A
	MOV	R7,A
	RET
SJASystemPrgCMD0:
	JC	SJASystemPrgCMD1
    	MOV	R7,#SJA_NOTHISCMD
	RET
SJASystemPrgCMD1:
	MOV	DPTR,#SJACMD_TAB
	MOVC    A,@A+DPTR
	CJNE	A,#0FFH,SJASystemPrgCMD2
	MOV	R7,#SJA_NOTHISCMD
	RET
SJASystemPrgCMD2:
	MOV	REG_CANADR,#REG_CAN_CMR
	MOV	REG_CANDAT,A
	MOV	R7,#00
	RET
SJACMD_TAB:
	DB	0FFH		;無此命令字
	DB	01H		;正常發送
	DB  	02H		;中止發送
	DB	03H		;單次正常發送	
	DB	04H		;釋放接受緩沖區
	DB  	0FFH		;
	DB	0FFH		;
	DB	0FFH		;
	DB  	08H		;清除數據溢出
	DB	0FFH		;
	DB	0FFH		;
	DB  	0FFH		;
	DB	0FFH		;
	DB	0FFH		;
	DB  	0FFH		;
	DB	0FFH		;
	DB	010H		;自我發送請求
	DB	0FFH		;
	DB  	012H		;單次自我發送請求
;/*
;;*******************************************************************************************************************
;*                          PeliCAN 模式 定義結束
;;*******************************************************************************************************************
;;*/
end

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美日韩中文播放| 国产丝袜美腿一区二区三区| 99久久久久免费精品国产| 国产精品18久久久久| 国产精品一区三区| 成人动漫在线一区| 国产福利精品一区| 成人午夜精品一区二区三区| 在线这里只有精品| 久久99在线观看| 国产精品一区二区果冻传媒| 极品瑜伽女神91| 成人一区二区视频| 色婷婷综合久久久中文字幕| 91 com成人网| 久久久九九九九| 国产精品无码永久免费888| 亚洲美女免费在线| 日本在线不卡视频| 99久久国产免费看| 91精品午夜视频| 亚洲三级在线免费观看| 韩日欧美一区二区三区| 欧美久久高跟鞋激| 一区在线播放视频| 日本成人超碰在线观看| 国产精品系列在线播放| 欧美男同性恋视频网站| 国产精品久久久久久户外露出| 欧美aaaaaa午夜精品| 欧美人与z0zoxxxx视频| 亚洲免费观看高清在线观看| 国产一区二区三区久久久 | 欧美午夜在线一二页| 中文字幕av资源一区| 国产成人午夜高潮毛片| 欧美精品一区二区高清在线观看| 亚洲激情在线播放| 国产精品主播直播| 欧美高清在线一区| 成人免费va视频| 亚洲欧美日韩国产手机在线| 国产69精品一区二区亚洲孕妇| 91在线porny国产在线看| 婷婷成人激情在线网| 国产精品久久夜| 日韩美女视频在线| 久久久久久麻豆| 在线免费观看日本一区| 国产成人av电影在线| 一区二区三区四区国产精品| 成人黄色免费短视频| 亚洲自拍偷拍欧美| 日韩欧美国产午夜精品| 国产成人综合网| 国产精品乱码人人做人人爱| 成人午夜短视频| 亚洲成人精品一区二区| 久久综合九色综合97婷婷女人| 99久久综合狠狠综合久久| 亚洲理论在线观看| 久久久久久久久久久久久久久99| 色一区在线观看| 激情欧美日韩一区二区| 性做久久久久久久免费看| 久久久综合视频| 欧美精品18+| 欧美视频一区二区三区四区| 国产一区二区0| 国内精品视频一区二区三区八戒| 亚洲精品视频免费观看| 欧美国产日韩在线观看| 精品免费99久久| 欧美一区二区日韩| 精品视频在线看| 国产女人aaa级久久久级| 成人黄色小视频在线观看| 亚洲电影视频在线| 日韩天堂在线观看| 国产成人免费视频精品含羞草妖精| 精品裸体舞一区二区三区| 久久99精品久久久久久| 一个色在线综合| 国产精品久线在线观看| 欧美精品久久99| 粉嫩aⅴ一区二区三区四区五区 | 肉肉av福利一精品导航| 一区二区三区四区五区视频在线观看| 国产亚洲一二三区| 国产午夜精品一区二区 | 久久99国产精品免费| 日韩电影在线看| 久久99九九99精品| 国产一区免费电影| 国产一区二区三区免费看| 成人午夜电影久久影院| 在线亚洲一区观看| 日韩美女在线视频| 久久精品在线观看| 一区二区三区欧美在线观看| 亚洲超碰精品一区二区| 激情文学综合插| 99久久99精品久久久久久| 欧美体内she精高潮| 精品久久久久99| 亚洲精品国产第一综合99久久 | 99视频在线精品| 欧美日韩一二区| 国产精品免费视频网站| 亚洲成人av一区| av一区二区三区在线| 欧洲av一区二区嗯嗯嗯啊| 精品久久久久久久久久久院品网| 亚洲人成在线播放网站岛国| 免费人成精品欧美精品 | 国产精品麻豆一区二区| 日韩国产欧美在线观看| 成人精品高清在线| 久久只精品国产| 奇米精品一区二区三区在线观看| 91偷拍与自偷拍精品| 日本一区二区不卡视频| 国内久久精品视频| 欧美一区二区免费| 亚洲成人av免费| 欧美日本精品一区二区三区| 日本美女视频一区二区| 成人听书哪个软件好| 丝袜诱惑亚洲看片| 色又黄又爽网站www久久| 美腿丝袜亚洲色图| 成人免费视频在线观看| 欧美一级xxx| 一本到不卡免费一区二区| 久久精品国产精品青草| 国产精品丝袜黑色高跟| 欧美一级二级在线观看| 96av麻豆蜜桃一区二区| 精品一区二区成人精品| 亚洲乱码一区二区三区在线观看| 精品国产青草久久久久福利| 色www精品视频在线观看| 久久99热国产| 日本在线不卡视频| 亚洲综合区在线| 中文字幕一区三区| 中文字幕久久午夜不卡| www激情久久| 久久久久久久综合狠狠综合| 91精品国产高清一区二区三区蜜臀 | 亚洲一二三区在线观看| 久久久噜噜噜久久中文字幕色伊伊 | 国产成人av资源| 奇米影视一区二区三区| 中文字幕视频一区| 91精品国产综合久久精品| 91影视在线播放| 色一情一伦一子一伦一区| 99这里都是精品| 91精彩视频在线观看| 懂色中文一区二区在线播放| 久久精品国产澳门| 精品亚洲porn| 成人a免费在线看| 色综合久久88色综合天天 | 亚洲伊人伊色伊影伊综合网| 久久久亚洲高清| 日韩一卡二卡三卡国产欧美| 99国产精品一区| 91亚洲男人天堂| 一本色道亚洲精品aⅴ| 97se亚洲国产综合自在线观| 99久久精品免费| 欧美精品久久久久久久久老牛影院 | 国产一区二区免费视频| 91久久精品一区二区| 国产欧美精品在线观看| 日韩av电影免费观看高清完整版 | 日韩精品乱码av一区二区| 日本不卡高清视频| 国产乱人伦偷精品视频不卡| av欧美精品.com| 欧美日韩一区不卡| 国产亚洲欧美日韩在线一区| 亚洲靠逼com| 精品国产成人在线影院 | 日韩和欧美一区二区| 国产精品123区| 欧美美女一区二区在线观看| 久久久久久影视| 免费的国产精品| 91麻豆精品国产自产在线观看一区| 国产女人18水真多18精品一级做| 五月天激情小说综合| 日本va欧美va精品发布| 中文字幕一区二区三区av| 最近日韩中文字幕| 捆绑紧缚一区二区三区视频| 欧美亚洲一区三区| 一区二区三区在线视频观看|