⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 can.txt

📁 用c语言编写的can总线的驱动程序
💻 TXT
📖 第 1 页 / 共 3 页
字号:
SACL 		Ta
LACC 		T 				;ACC = T
SUB 			Tc 				;ACC = T-Tb
SACL 		Tb 				;ACC = Ta = T-Tb <C>
B 			LOAD_COMPARES
;Sector 6 calculations - a,b,c --> a,c,b & dx <--> dy
SECTOR_SR6
LACC 		T 				;Acc = T
SUB 			dx 				;Acc = T-dx
SUB 			dy 				;Acc = T-dx-dy
SFR 							;Acc = Ta = 1/2(T-dx-dy) <A>
SACL 		Ta
ADD 			dy 				;Acc = Tc = dx+Ta <B>
SACL 		Tc
LACC 		T 				;ACC = T
SUB 			Ta 				;ACC = T-Ta
SACL 		Tb 				;ACC = Tb = T-Ta <C>
;Transfer new Compare values for this PWM period
LOAD_COMPARES 
POINT_B0
MAR 			*, AR1
LACC 		Ta
SACL 		*,0,AR2 			;Load Compare2 Register with Ta
LACC 		Tb
SACL 		*,0,AR3 			;Load Compare3 Register with Tb
LACC 		Tc
SACL 		*,0,AR1 			;Load Compare4 Register with Tc
;Receive Frequency target from CAN bus.
CAN_RD 
LDP 			#DP_CAN
W_FLAG 
BIT 			CANIFR,7 		;wait for mailbox 0 interrupt flag
BCND		CAN_RD_END,NTC
W_RA 	
BIT 			CANRCR,11 		;Wait for receive acknowledge
BCND 		CAN_RD_END,NTC
SPLK 		#0010h,CANRCR 	;reset RA and CANIFR
LDP 			#DP_CAN2
LACL 		CANMBX0A 		;Load data in Accu
POINT_B0
SUB 			FREQ_TRGT
BCND 		CAN_RD_END,EQ 	;If the value doesn't change
LDP 			#DP_CAN2
LACL 		CANMBX0A 		;Freq_trgt is not updated
POINT_B0
SACL 		FREQ_TRGT 		;Change Freq_trg
CAN_RD_END:
;Adjust frequency demand from RT debugger
FREQ_DMD
POINT_B0
LACC 		FREQ_TRGT
SUB 			FREQ_SETPT
BCND 		FD_END, EQ
LACC 		RMP_DLY_CNT
ADD 			#1
SACL 		RMP_DLY_CNT
SUB 			#RMP_DLY_MAX
BCND 		FD_END2, LT
CHNG_FREQ
LACC 		FREQ_TRGT
SUB 			FREQ_SETPT
BCND 		INC_FREQ, GT
DEC_FREQ 
LACC 		FREQ_SETPT
SUB 			#1
SACL 		FREQ_SETPT
BCND		FD_END, GEQ
SPLK 		#1, FREQ_SETPT
B 			FD_END
INC_FREQ 
LACC 		FREQ_SETPT 		;If max then Inc Frequency
ADD 			#1
SACL 		FREQ_SETPT
SUB 			#2047
BCND 		FD_END, LEQ
SPLK 		#2047, FREQ_SETPT
FD_END
SPLK 		#0, RMP_DLY_CNT
CLRC 		INTM
RET
;Sector routine jump table - used with BACC inst.
SECTOR_TBL
SR0 		.word 	SECTOR_SR1
SR1 		.word 	SECTOR_SR2
SR2 		.word 	SECTOR_SR3
SR3 		.word 	SECTOR_SR4
SR4 		.word 	SECTOR_SR5
SR5 		.word 	SECTOR_SR6
;Routine Name: m S _ D E L A Y (1mS version) Routine Type: SR
;Description: Produces a multiple of 1mS delays using the RPT instruction.
;The Delay produced is based on the value loaded in mSEC.
;i.e. Delay = mSEC x 1mS
mS_DELAY
POINT_B0
LACC 	#25000
SACL 	GPR0
LACC 	mSEC
mS_LP
RPT 		GPR0 				;25,000 cycles = 1 mS @ 25MHz
NOP 							;1 cycle
SUB 		#1 					;1 cycle
BCND 	mS_LP,GT 			;4 cycles
RET 							;4 cycles
;LED display table - used to indicate speed setting
LED_TABLE
.word 00080h
.word 00040h
.word 00020h
.word 00010h
.word 00008h
.word 00004h
.word 00002h
.word 00001h
.word 00001h
;No. Samples 256 Angle Range 60
;SINVAL 					;Index 	Angle 	Sin(Angle)
STABLE 	.word 0 					;	0 		0 		0.00
.word 134				;	1 		0.23 	0.00
.word 268				;	2 		0.47 	0.01
.word 402				;	3 		0.70 	0.01
.word 536				;	4 		0.94 	0.02
.word 670				;	5 		1.17	0.02
.word 804				;	6 		1.41 	0.02
.word 938				;	7 		1.64 	0.03
.word 1072 				;	8 		1.88 	0.03
.word 1206 				;	9 		2.11 	0.04
			.word 1340 				;	10 		2.34 	0.04
			.word 1474 				;	11 		2.58 	0.04
			.word 1608 				;	12 		2.81 	0.05
			.word 1742 				;	13 		3.05 	0.05
			.word 1876 				;	14 		3.28 	0.06
			.word 2009 				;	15 		3.52 	0.06
			.word 2143 				;	16 		3.75 	0.07
			.word 2277 				;	17 		3.98 	0.07
			.word 2411 				;	18 		4.22 	0.07
			.word 2544 				;	19 		4.45 	0.08
			.word 2678 				;	20 		4.69 	0.08
			.word 2811 				;	21 		4.92 	0.09
			.word 4144 				;	31 		7.27 	0.13
			.word 4277 				;	32 		7.50 	0.13
			.word 4410 				;	33 		7.73 	0.13
			.word 4543 				;	34 		7.97 	0.14
			.word 4675 				;	35 		8.20 	0.14
			.word 4808 				;	36 		8.44 	0.15
			.word 4941 				;	37 		8.67 	0.15
			.word 5073 				;	38 		8.91 	0.15
			.word 5205 				;	39 		9.14 	0.16
			.word 5338 				;	40 		9.38 	0.16
			.word 5470 				;	41 		9.61 	0.17
			.word 5602 				;	42 		9.84 	0.17
			.word 5734 				;	43 		10.08	 0.17
			.word 5866 				;	44 		10.31	 0.18
			.word 5998 				;	45 		10.55	 0.18
			.word 6130 				;	46 		10.78	 0.19
			.word 6261 				;	47 		11.02	 0.19
			.word 6393 				;	48 		11.25	 0.20
			.word 6524 				;	49 		11.48	 0.20
			.word 6655 				;	50 		11.72	 0.20
			.word 6787 				;	51 		11.95	 0.21
			.word 6918 				;	52 		12.19	 0.21
			.word 7049 				;	53 		12.42	 0.22
			.word 7180 				;	54 		12.66	 0.22
			.word 7310 				;	55 		12.89	 0.22
			.word 7441 				;	56 		13.13	 0.23
			.word 7571 				;	57 		13.36	 0.23
			.word 7702 				;	58 		13.59	 0.24
			.word 7832 				;	59 		13.83	 0.24
			.word 7962 				;	60 		14.06	 0.24
			.word 8092 				;	61 		14.30	 0.25
			.word 8222 				;	62 		14.53	 0.25
			.word 8351 				;	63 		14.77	 0.25
			.word 8481 				;	64 		15.00	 0.26
			.word 8610 				;	65 		15.23	 0.26
			.word 8740 				;	66 		15.47	 0.27
			.word 8869 				;	67 		15.70	 0.27
			.word 8998 				;	68 		15.94	 0.27
			.word 9127 				;	69 		16.17	 0.28
			.word 9255 				;	70 		16.41	 0.28
			.word 9384 				;	71 		16.64	 0.29
			.word 9512 				;	72 		16.88	 0.29
			.word 9640 				;	73 		17.11	 0.29
			.word 9768 				;	74 		17.34	 0.30
			.word 9896 				;	75 		17.58	 0.30
			.word 10024				;	76		17.81 	 0.31
			.word 10151				;	77		18.05 	 0.31
			.word 10279 			;	78 		18.28 	 0.31
			.word 10406 			;	79 		18.52 	 0.32
			.word 10533 			;	80 		18.75 	 0.32
			.word 10660 			;	81 		18.98 	 0.33
			.word 10786 			;	82 		19.22 	 0.33
			.word 10913 			;	83 		19.45 	 0.33
			.word 11039 			;	84 		19.69 	 0.34
			.word 11165 			;	85 		19.92 	 0.34
			.word 11291 			;	86 		20.16 	 0.34
			.word 11417 			;	87 		20.39 	 0.35
			.word 11543 			;	88 		20.63 	 0.35
			.word 11668 			;	89 		20.86 	 0.36
			.word 11793 			;	90 		21.09 	 0.36
			.word 11918 			;	91 		21.33 	 0.36
			.word 12043 			;	92 		21.56 	 0.37
			.word 12167 			;	93 		21.80 	 0.37
			.word 12292 			;	94 		22.03 	 0.38
			.word 12416 			;	95 		22.27 	 0.38
			.word 12540 			;	96 		22.50 	 0.38
			.word 12664 			;	97 		22.73 	 0.39
			.word 12787 			;	98 		22.97 	 0.39
			.word 12910 			;	99 		23.20 	 0.39
			.word 13033 			;	100		23.44 	 0.40
			.word 13156 			;	101		23.67 	 0.40
			.word 13279 			;	102		23.91 	 0.41
			.word 13401 			;	103		24.14 	 0.41
			.word 13524 			;	104		24.38 	 0.41
			.word 13646 			;	105		24.61 	 0.42
			.word 13767 			;	106		24.84 	 0.42
			.word 13889 			;	107		25.08 	 0.42
			.word 14010 			;	108		25.31 	 0.43
			.word 14131 			;	109		25.55 	 0.43
			.word 14252 			;	110		25.78 	 0.43
			.word 14373 			;	111		26.02 	 0.44
			.word 14493 			;	112		26.25 	 0.44
			.word 14613 			;	113		26.48 	 0.45
			.word 14733 			;	114		26.72 	 0.45
			.word 14852 			;	115		26.95 	 0.45
			.word 14972 			;	116		27.19 	 0.46
			.word 15091 			;	117		27.42 	 0.46
			.word 15210 			;	118		27.66 	 0.46
			.word 15328 			;	119		27.89 	 0.47
			.word 15447 			;	120		28.13 	 0.47
			.word 15565 			;	121		28.36 	 0.48
			.word 15683 			;	122		28.59 	 0.48
			.word 15800 			;	123		28.83 	 0.48
			.word 15917 			;	124		29.06 	 0.49
			.word 16035 			;	125		29.30 	 0.49
			.word 16151 			;	126		29.53 	 0.49
			.word 16268 			;	127		29.77 	 0.50
			.word 16384 			;	128		30.00 	 0.50
			.word 16500 			;	129		30.23 	 0.50
			.word 16616 			;	130		30.47 	 0.51
			.word 16731 			;	131		30.70 	 0.51
			.word 16846 			;	132		30.94 	 0.51
			.word 16961 			;	133		31.17 	 0.52
			.word 17075 			;	134		31.41 	 0.52
			.word 17190 			;	135		31.64 	 0.52
			.word 17304 			;	136		31.88 	 0.53
			.word 17417 			;	137		32.11 	 0.53
			.word 17531 			;	138		32.34 	 0.53
			.word 17644 			;	139		32.58 	 0.54
			.word 17757 			;	140		32.81 	 0.54
			.word 17869 			;	141		33.05 	 0.55
			.word 17981 			;	142		33.28 	 0.55
			.word 18093 			;	143		33.52 	 0.55
			.word 18205 			;	144		33.75 	 0.56
			.word 18316 			;	145		33.98 	 0.56
			.word 18427 			;	146		34.22 	 0.56
			.word 18538 			;	147		34.45 	 0.57
			.word 18648 			;	148		34.69 	 0.57
			.word 18758 			;	149		34.92 	 0.57
			.word 18868 			;	150		35.16 	 0.58
			.word 18978 			;	151		35.39 	 0.58
			.word 19087 			;	152		35.63 	 0.58
			.word 19195 			;	153		35.86 	 0.59
			.word 19304 			;	154		36.09 	 0.59
			.word 19412 			;	155		36.33 	 0.59
			.word 19520 			;	156		36.56 	 0.60
			.word 19627 			;	157		36.80 	 0.60
			.word 19735 			;	158		37.03 	 0.60
			.word 19841 			;	159		37.27 	 0.61
			.word 19948 			;	160		37.50 	 0.61
			.word 20054 			;	161		37.73 	 0.61
			.word 20160 			;	162		37.97 	 0.62
			.word 20265 			;	163		38.20 	 0.62
			.word 20371 			;	164		38.44 	 0.62
			.word 20475 			;	165		38.67 	 0.62
			.word 20580 			;	166		38.91 	 0.63
			.word 20684 			;	167		39.14 	 0.63
			.word 20788 			;	168		39.38 	 0.63
			.word 20891 			;	169		39.61 	 0.64
			.word 20994 			;	170		39.84 	 0.64
			.word 21097 			;	171		40.08 	 0.64
			.word 21199 			;	172		40.31 	 0.65
			.word 21301 			;	173		40.55 	 0.65
			.word 21403 			;	174		40.78 	 0.65
			.word 21504 			;	175		41.02 	 0.66
			.word 21605 			;	176		41.25 	 0.66
			.word 21706 			;	177		41.48 	 0.66
			.word 21806 			;	178		41.72 	 0.67
			.word 22006 			;	180		42.19 	 0.67
			.word 22105 			;	181		42.42 	 0.67
			.word 22204 			;	182		42.66 	 0.68
			.word 22302 			;	183		42.89 	 0.68
			.word 22400 			;	184		43.13 	 0.68
			.word 22595 			;	186		43.59 	 0.69
			.word 22692 			;	187		43.83 	 0.69
			.word 22788 			;	188		44.06 	 0.70
			.word 22884 			;	189		44.30 	 0.70
			.word 22980 			;	190		44.53 	 0.70
			.word 23075 			;	191		44.77 	 0.70
			.word 23170 			;	192		45.00 	 0.71
			.word 23265 			;	193		45.23 	 0.71
			.word 23359 			;	194		45.47 	 0.71
			.word 23453 			;	195		45.70 	 0.72
			.word 23546 			;	196		45.94 	 0.72
			.word 23640 			;	197		46.17 	 0.72
			.word 23732 			;	198		46.41 	 0.72
			.word 23824 			;	199		46.64 	 0.73
			.word 23916 			;	200		46.88 	 0.73
			.word 24008 			;	201		47.11 	 0.73
			.word 24099 			;	202		47.34 	 0.74
			.word 24189 			;	203		47.58 	 0.74
			.word 24369 			;	205		48.05 	 0.74
			.word 24459 			;	206		48.28 	 0.75
			.word 24548 			;	207		48.52 	 0.75
			.word 24636 			;	208		48.75 	 0.75
			.word 24724 			;	209		48.98 	 0.75
			.word 24812 			;	210		49.22 	 0.76
			.word 24986 			;	212		49.69 	 0.76
			.word 25073 			;	213		49.92 	 0.77
			.word 25159 			;	214		50.16 	 0.77
			.word 25245 			;	215		50.39 	 0.77
			.word 25330 			;	216		50.63 	 0.77
			.word 25415 			;	217		50.86 	 0.78
			.word 25499 			;	218		51.09 	 0.78
			.word 25583 			;	219		51.33 	 0.78
			.word 25667 			;	220		51.56 	 0.78
			.word 25750 			;	221		51.80 	 0.79
			.word 25833 			;	222		52.03 	 0.79
			.word 25915 			;	223		52.27 	 0.79
			.word 25997 			;	224		52.50 	 0.79
			.word 26078 			;	225		52.73 	 0.80
			.word 26159 			;	226		52.97 	 0.80
			.word 26239 			;	227		53.20 	 0.80
			.word 26320 			;	228		53.44 	 0.80
			.word 26399 			;	229		53.67 	 0.81
			.word 26478 			;	230		53.91 	 0.81
			.word 26557 			;	231		54.14 	 0.81
			.word 26635 			;	232		54.38 	 0.81
			.word 26713 			;	233		54.61 	 0.82
			.word 26791 			;	234		54.84 	 0.82
			.word 26868 			;	235		55.08 	 0.82
			.word 26944 			;	236		55.31 	 0.82
			.word 27020 			;	237		55.55 	 0.82
			.word 27096 			;	238		55.78 	 0.83
			.word 27171 			;	239		56.02 	 0.83
			.word 27246 			;	240		56.25 	 0.83
			.word 27320 			;	241		56.48 	 0.83
			.word 27394 			;	242		56.72 	 0.84
			.word 27467 			;	243		56.95 	 0.84
			.word 27540 			;	244		57.19 	 0.84
			.word 27612 			;	245		57.42 	 0.84
			.word 27684 			;	246		57.66 	 0.84
			.word 27756 			;	247		57.89 	 0.85
			.word 27827 			;	248		58.13 	 0.85
			.word 27897 			;	249		58.36 	 0.85
			.word 27967 			;	250		58.59 	 0.85
			.word 28037 			;	251		58.83 	 0.86
			.word 28106 			;	252		59.06 	 0.86
			.word 28175 			;	253		59.30 	 0.86
			.word 28243 			;	254		59.53 	 0.86
			.word 28311 			;	255		59.77 	 0.86

;I S R - PHANTOM
;Description: Dummy ISR, used to trap spurious interrupts.
PHANTOM 		B 		PHANTOM


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -