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

📄 da.asm

📁 TMS320LF2407键盘与DA转换综合控制源码 键盘0
💻 ASM
📖 第 1 页 / 共 2 页
字号:
;/*****************************************************************************/
;press the key 0 and the DA creates square wave !
;press the key 1 and the DA creates triangle wave !
;press the key 2 and the DA creates sine wave !
;press the key 3 and the DA creates sawtooth wave !
;the key value is from:0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f
;the address of the key is from 00H to 0FH.
;read the key value from 0100H.
;tlc7226 has foure output ports:OUTA-0300H,OUTB-0301H,OUTC-0302H,OUTD-0303H.
;the leds dislay the value as:0,1,2,3,4,5,6,7,8,9,-,E,H,L,,P,NULL     */
;/*****************************************************************************/
					.include  	"F2407REGS.H" 		;引用头部文件
					.bss k,1             ;100
       					.bss I,1             ;101     电流幅值    Q10
       					.bss sine,1           ;102    查表所得的正弦值   Q15
       
       					.bss ia,1             ;103     瞬时电流  Q11
       					.bss ib,1          
      					.bss count,1          ;104     查表的指针
      					.bss  dax,1           ;105    数模转换系数      Q15 
table         
 .word 0H,0c9H,0192H,025bH,0324H,03eeH,04b7H,0580H,0649H,0712H
  .word 07dbH,08a4H,096cH,0a35H,0afeH,0bc6H,0c8eH,0d57H,0e1fH,0ee7H
  .word 0fafH,01076H,0113eH,01205H,012ccH,01393H,0145aH,01521H,015e7H,016adH
  .word 01773H,01839H,018feH,019c4H,01a89H,01b4dH,01c12H,01cd6H,01d9aH,01e5eH
  .word 01f21H,01fe4H,020a7H,02169H,0222bH,022edH,023afH,02470H,02531H,025f1H
  .word 026b1H,02771H,02830H,028efH,029adH,02a6bH,02b29H,02be6H,02ca3H,02d60H
  .word 02e1cH,02ed7H,02f92H,0304dH,03107H,031c1H,0327aH,03332H,033ebH,034a2H
  .word 0355aH,03610H,036c6H,0377cH,03831H,038e6H,0399aH,03a4dH,03b00H,03bb2H
  .word 03c64H,03d15H,03dc6H,03e76H,03f25H,03fd4H,04082H,04130H,041dcH,04289H
  .word 04334H,043dfH,0448aH,04533H,045dcH,04684H,0472cH,047d3H,04879H,0491fH
  .word 049c4H,04a68H,04b0bH,04baeH,04c50H,04cf1H,04d91H,04e31H,04ed0H,04f6eH
  .word 0500cH,050a8H,05144H,051dfH,0527aH,05313H,053acH,05444H,054dbH,05571H
  .word 05607H,0569bH,0572fH,057c2H,05854H,058e5H,05976H,05a05H,05a94H,05b22H
  .word 05baeH,05c3aH,05cc6H,05d50H,05dd9H,05e61H,05ee9H,05f70H,05ff5H,0607aH
  .word 060feH,06181H,06202H,06283H,06303H,06383H,06401H,0647eH,064faH,06575H
  .word 065efH,06669H,066e1H,06758H,067ceH,06844H,068b8H,0692bH,0699dH,06a0eH
  .word 06a7fH,06aeeH,06b5cH,06bc9H,06c35H,06ca0H,06d0aH,06d73H,06ddbH,06e41H
  .word 06ea7H,06f0cH,06f6fH,06fd2H,07033H,07093H,070f3H,07151H,071aeH,0720aH
  .word 07265H,072beH,07317H,0736eH,073c5H,0741aH,0746eH,074c1H,07513H,07564H
  .word 075b4H,07602H,07650H,0769cH,076e7H,07731H,0777aH,077c1H,07808H,0784dH
  .word 07891H,078d4H,07916H,07957H,07996H,079d5H,07a12H,07a4eH,07a88H,07ac2H
  .word 07afaH,07b32H,07b68H,07b9cH,07bd0H,07c03H,07c34H,07c64H,07c93H,07cc0H
  .word 07cedH,07d18H,07d42H,07d6bH,07d92H,07db9H,07ddeH,07e02H,07e25H,07e46H
  .word 07e67H,07e86H,07ea3H,07ec0H,07edcH,07ef6H,07f0fH,07f26H,07f3dH,07f52H
  .word 07f66H,07f79H,07f8bH,07f9bH,07faaH,07fb8H,07fc5H,07fd0H,07fdaH,07fe3H
  .word 07febH,07ff2H,07ff7H,07ffbH,07ffeH,07fffH,07fffH,07fffH,07ffcH,07ff9H
  .word 07ff4H,07feeH,07fe7H,07fdfH,07fd5H,07fcbH,07fbfH,07fb1H,07fa3H,07f93H
  .word 07f82H,07f70H,07f5cH,07f48H,07f32H,07f1bH,07f02H,07ee9H,07eceH,07eb2H
  .word 07e95H,07e76H,07e57H,07e36H,07e13H,07df0H,07dccH,07da6H,07d7fH,07d57H
  .word 07d2dH,07d03H,07cd7H,07caaH,07c7bH,07c4cH,07c1bH,07be9H,07bb6H,07b82H
  .word 07b4dH,07b16H,07adeH,07aa5H,07a6bH,07a30H,079f3H,079b5H,07977H,07937H
  .word 078f5H,078b3H,0786fH,0782bH,077e5H,0779eH,07755H,0770cH,076c2H,07676H
  .word 07629H,075dbH,0758cH,0753cH,074eaH,07498H,07444H,073f0H,0739aH,07343H
  .word 072ebH,07292H,07237H,071dcH,0717fH,07122H,070c3H,07063H,07002H,06fa1H
  .word 06f3eH,06ed9H,06e74H,06e0eH,06da7H,06d3eH,06cd5H,06c6bH,06bffH,06b92H
  .word 06b25H,06ab6H,06a47H,069d6H,06964H,068f2H,0687eH,06809H,06793H,0671dH
  .word 066a5H,0662cH,065b2H,06538H,064bcH,0643fH,063c2H,06343H,062c4H,06243H
  .word 061c2H,0613fH,060bcH,06038H,05fb2H,05f2cH,05ea5H,05e1dH,05d94H,05d0bH
  .word 05c80H,05bf5H,05b68H,05adbH,05a4dH,059bdH,0592eH,0589dH,0580bH,05779H
  .word 056e5H,05651H,055bcH,05526H,0548fH,053f8H,05360H,052c7H,0522dH,05192H
  .word 050f6H,0505aH,04fbdH,04f1fH,04e81H,04de1H,04d41H,04ca0H,04bffH,04b5dH
  .word 04abaH,04a16H,04971H,048ccH,04826H,04780H,046d8H,04630H,04588H,044deH
  .word 04435H,0438aH,042dfH,04233H,04186H,040d9H,0402bH,03f7dH,03eceH,03e1eH
  .word 03d6eH,03cbdH,03c0bH,03b59H,03aa7H,039f4H,03940H,0388bH,037d7H,03721H
  .word 0366bH,035b5H,034feH,03447H,0338fH,032d6H,0321dH,03164H,030aaH,02ff0H
  .word 02f35H,02e79H,02dbeH,02d01H,02c45H,02b88H,02acaH,02a0cH,0294eH,0288fH
  .word 027d0H,02711H,02651H,02591H,024d0H,0240fH,0234eH,0228cH,021caH,02108H
  .word 02046H,01f83H,01ebfH,01dfcH,01d38H,01c74H,01bb0H,01aebH,01a26H,01961H
  .word 0189cH,017d6H,01710H,0164aH,01584H,014bdH,013f7H,01330H,01269H,011a1H
  .word 010daH,01012H,0f4bH,0e83H,0dbbH,0cf3H,0c2aH,0b62H,0a99H,09d1H
  .word 0908H,083fH,0776H,06adH,05e4H,051bH,0452H,0389H,02c0H,01f7H
  .word 012dH,064H,0ff9cH,0fed3H,0fe09H,0fd40H,0fc77H,0fbaeH,0fae5H,0fa1cH
  .word 0f953H,0f88aH,0f7c1H,0f6f8H,0f62fH,0f567H,0f49eH,0f3d6H,0f30dH,0f245H
  .word 0f17dH,0f0b5H,0efeeH,0ef26H,0ee5fH,0ed97H,0ecd0H,0ec09H,0eb43H,0ea7cH
  .word 0e9b6H,0e8f0H,0e82aH,0e764H,0e69fH,0e5daH,0e515H,0e450H,0e38cH,0e2c8H
  .word 0e204H,0e141H,0e07dH,0dfbaH,0def8H,0de36H,0dd74H,0dcb2H,0dbf1H,0db30H
  .word 0da6fH,0d9afH,0d8efH,0d830H,0d771H,0d6b2H,0d5f4H,0d536H,0d478H,0d3bbH
  .word 0d2ffH,0d242H,0d187H,0d0cbH,0d011H,0cf56H,0ce9cH,0cde3H,0cd2aH,0cc71H
  .word 0cbb9H,0cb02H,0ca4bH,0c995H,0c8dfH,0c829H,0c775H,0c6c0H,0c60dH,0c559H
  .word 0c4a7H,0c3f5H,0c343H,0c292H,0c1e2H,0c132H,0c083H,0bfd5H,0bf27H,0be7aH
  .word 0bdcdH,0bd21H,0bc76H,0bbcbH,0bb22H,0ba78H,0b9d0H,0b928H,0b880H,0b7daH
  .word 0b734H,0b68fH,0b5eaH,0b546H,0b4a3H,0b401H,0b360H,0b2bfH,0b21fH,0b17fH
  .word 0b0e1H,0b043H,0afa6H,0af0aH,0ae6eH,0add3H,0ad39H,0aca0H,0ac08H,0ab71H
  .word 0aadaH,0aa44H,0a9afH,0a91bH,0a887H,0a7f5H,0a763H,0a6d2H,0a643H,0a5b3H
  .word 0a525H,0a498H,0a40bH,0a380H,0a2f5H,0a26cH,0a1e3H,0a15bH,0a0d4H,0a04eH
  .word 09fc8H,09f44H,09ec1H,09e3eH,09dbdH,09d3cH,09cbdH,09c3eH,09bc1H,09b44H
  .word 09ac8H,09a4eH,099d4H,0995bH,098e3H,0986dH,097f7H,09782H,0970eH,0969cH
  .word 0962aH,095b9H,0954aH,094dbH,0946eH,09401H,09395H,0932bH,092c2H,09259H
  .word 091f2H,0918cH,09127H,090c2H,0905fH,08ffeH,08f9dH,08f3dH,08edeH,08e81H
  .word 08e24H,08dc9H,08d6eH,08d15H,08cbdH,08c66H,08c10H,08bbcH,08b68H,08b16H
  .word 08ac4H,08a74H,08a25H,089d7H,0898aH,0893eH,088f4H,088abH,08862H,0881bH
  .word 087d5H,08791H,0874dH,0870bH,086c9H,08689H,0864bH,0860dH,085d0H,08595H
  .word 0855bH,08522H,084eaH,084b3H,0847eH,0844aH,08417H,083e5H,083b4H,08385H
  .word 08356H,08329H,082fdH,082d3H,082a9H,08281H,0825aH,08234H,08210H,081edH
  .word 081caH,081a9H,0818aH,0816bH,0814eH,08132H,08117H,080feH,080e5H,080ceH
  .word 080b8H,080a4H,08090H,0807eH,0806dH,0805dH,0804fH,08041H,08035H,0802bH
  .word 08021H,08019H,08012H,0800cH,08007H,08004H,08001H,08001H,08001H,08002H
  .word 08005H,08009H,0800eH,08015H,0801dH,08026H,08030H,0803bH,08048H,08056H
  .word 08065H,08075H,08087H,0809aH,080aeH,080c3H,080daH,080f1H,0810aH,08124H
  .word 08140H,0815dH,0817aH,08199H,081baH,081dbH,081feH,08222H,08247H,0826eH
  .word 08295H,082beH,082e8H,08313H,08340H,0836dH,0839cH,083ccH,083fdH,08430H
  .word 08464H,08498H,084ceH,08506H,0853eH,08578H,085b2H,085eeH,0862bH,0866aH
  .word 086a9H,086eaH,0872cH,0876fH,087b3H,087f8H,0883fH,08886H,088cfH,08919H
  .word 08964H,089b0H,089feH,08a4cH,08a9cH,08aedH,08b3fH,08b92H,08be6H,08c3bH
  .word 08c92H,08ce9H,08d42H,08d9bH,08df6H,08e52H,08eafH,08f0dH,08f6dH,08fcdH
  .word 0902eH,09091H,090f4H,09159H,091bfH,09225H,0928dH,092f6H,09360H,093cbH
  .word 09437H,094a4H,09512H,09581H,095f2H,09663H,096d5H,09748H,097bcH,09832H
  .word 098a8H,0991fH,09997H,09a11H,09a8bH,09b06H,09b82H,09bffH,09c7dH,09cfdH
  .word 09d7dH,09dfeH,09e7fH,09f02H,09f86H,0a00bH,0a090H,0a117H,0a19fH,0a227H
  .word 0a2b0H,0a33aH,0a3c6H,0a452H,0a4deH,0a56cH,0a5fbH,0a68aH,0a71bH,0a7acH
  .word 0a83eH,0a8d1H,0a965H,0a9f9H,0aa8fH,0ab25H,0abbcH,0ac54H,0acedH,0ad86H
  .word 0ae21H,0aebcH,0af58H,0aff4H,0b092H,0b130H,0b1cfH,0b26fH,0b30fH,0b3b0H
  .word 0b452H,0b4f5H,0b598H,0b63cH,0b6e1H,0b787H,0b82dH,0b8d4H,0b97cH,0ba24H
  .word 0bacdH,0bb76H,0bc21H,0bcccH,0bd77H,0be24H,0bed0H,0bf7eH,0c02cH,0c0dbH
  .word 0c18aH,0c23aH,0c2ebH,0c39cH,0c44eH,0c500H,0c5b3H,0c666H,0c71aH,0c7cfH
  .word 0c884H,0c93aH,0c9f0H,0caa6H,0cb5eH,0cc15H,0ccceH,0cd86H,0ce3fH,0cef9H
  .word 0cfb3H,0d06eH,0d129H,0d1e4H,0d2a0H,0d35dH,0d41aH,0d4d7H,0d595H,0d653H
  .word 0d711H,0d7d0H,0d88fH,0d94fH,0da0fH,0dacfH,0db90H,0dc51H,0dd13H,0ddd5H
  .word 0de97H,0df59H,0e01cH,0e0dfH,0e1a2H,0e266H,0e32aH,0e3eeH,0e4b3H,0e577H
  .word 0e63cH,0e702H,0e7c7H,0e88dH,0e953H,0ea19H,0eadfH,0eba6H,0ec6dH,0ed34H
  .word 0edfbH,0eec2H,0ef8aH,0f051H,0f119H,0f1e1H,0f2a9H,0f372H,0f43aH,0f502H
  .word 0f5cbH,0f694H,0f75cH,0f825H,0f8eeH,0f9b7H,0fa80H,0fb49H,0fc12H,0fcdcH
  .word 0fda5H,0fe6eH,0ff37H,00H

					.def      	_c_int0
;(1)建立中断向量表
					.sect	".vectors"	;定义主向量段	
RSVECT			B    _c_int0				;PM 0	复位向量1
INT1	  		B    GISR1				;PM 2	中断优先级 14
INT2	  		B    PHANTOM				;PM 4	中断优先级2	5
INT3	  		B    PHANTOM				;PM 6	中断优先级 36
INT4	  		B    PHANTOM				;PM 8	中断优先级 47
INT5	  		B    GISR5				;PM A	中断优先级 58		
INT6	  		B    PHANTOM				;PM C	中断优先级 69
RESERVED  		B    PHANTOM			    	;PM E	 (保留位)10
SW_INT8   		B    PHANTOM				;PM 10  	 用户定义软件中断	
INT9	  		B    PHANTOM
INT10	  		B    PHANTOM
INT11	  		B    PHANTOM
INT12	  		B    PHANTOM
INT13	  		B    PHANTOM
INT14	  		B    PHANTOM
INT15	  		B    PHANTOM
INT16	  		B    PHANTOM
INT17	  		B    PHANTOM
INT18	  		B    PHANTOM
INT19	  		B    PHANTOM
INT20	  		B    PHANTOM
INT21	  		B    PHANTOM
INT22	  		B    PHANTOM
INT23	  		B    PHANTOM
INT24	  		B    PHANTOM
INT25	  		B    PHANTOM
INT26	  		B    PHANTOM
INT27	  		B    PHANTOM
INT28	  		B    PHANTOM
INT29	  		B    PHANTOM
INT30	  		B    PHANTOM		
SW_INT31  		B    PHANTOM				;PM 3E  	用户定义软件中断	 
					
		;中断子向量入口定义pvecs
			.sect	".pvecs"				;定义子向量段
PVECTORS	B	PHANTOM	;0	
			B	XINT1_ISR;2
			B	PHANTOM ;4
			B	PHANTOM	;6	
			B	PHANTOM ;8
			B	PHANTOM ;A
			B	PHANTOM	;C	
			B	PHANTOM ; 
			
			B	PHANTOM
			B	PHANTOM		
			B	PHANTOM
			B	PHANTOM
			B	PHANTOM		
			B	PHANTOM
			B	PHANTOM
			B	PHANTOM
			
			B	PHANTOM	;0	
			B	PHANTOM ;2
			B	PHANTOM ;4
			B	PHANTOM	;6	
			B	PHANTOM ;8
			B	PHANTOM ;A
			B	PHANTOM	;C	
			B	PHANTOM ; 
			
			B	PHANTOM
			B	PHANTOM		
			B	PHANTOM
			B	PHANTOM
			B	PHANTOM		
			B	PHANTOM
			B	PHANTOM
			B	PHANTOM		
			
			B	PHANTOM
			B	PHANTOM
			B	PHANTOM		
			B	PHANTOM
			B	PHANTOM
			B	PHANTOM		
			B	PHANTOM				
			B	PHANTOM	 ;

			B	PHANTOM		
			B	PHANTOM		
;---------------------------------------------------------------------------------------------------------------------
;(2)主程序
			.text
_c_int0:            
					SETC XF  		    
					CLRC XF
				    SETC 	INTM        ;关总中断
				    CALL	SYSINIT 	;系统初始化程序		
				    CALL    IOPF_INIT
				    CALL    IOPE_INIT 
				  
				    
				    	LDP #0
					SPLK #01H,IFR	
	    			    LDP  #XINT1CR>>7    	      ; Book P45
				   SPLK #8001H,XINT1CR		      ; enable XINT1
		    	           CLRC    INTM     
                                                                       
WAIT:					;CLRC XF 
						NOP
                       	;CALL DELAY                                         
                       	;SETC XF
                    	;CALL DELAY
			B	    WAIT
			;---------------------------------------------------------------------------------------------------------------------
;(3)系统初始化程序
SYSINIT:		
					CLRC 	SXM
					CLRC 	OVM
					CLRC 	CNF
					LDP 	#0E0H
					SPLK	#86FEH,SCSR1	;CLKIN=10M,CLKOUT=10M		
					SPLK	#0E8h,WDCR	
					LDP	#0
					SPLK	#01H,   IMR	 
					SPLK	#0FFFFH, IFR
			        	RET
;---------------------------------------------------------------------------------------------------------------------
IOPF_INIT:		    			; Select lvc16245
					LDP #MCRC>>7  ;允许输出
					LACL MCRC
					AND #0FCFFH
					SACL MCRC     ;IOPF0/IOPF1为IO输出口
					LACL PFDATDIR
					OR   #0302H
					AND #0FFFEH
					SACL PFDATDIR
					RET   
                 
IOPE_INIT:		  				; Set para for Max7219  
					LDP #MCRC>>7 ;IOPE7为output low 
					LACL MCRC
					AND #0FF7EH
					SACL MCRC
					LACL PEDATDIR
					OR #8E00H
					AND #0FF7FH
					SACL PEDATDIR
					RET
					;******************************************************************************
;---------------------------------------------------------------------------------------------------------------------
DELAY:    		
						RPT #200
					NOP
					RPT #200
					NOP  
					RPT #200
					NOP
					RET
;-----------------------	----------------------------------------------------------------------------------------------
;(5)外部中断程序
GISR1:						
                                   	;	保护现场
		LDP		#0E0H
		LACC	PIVR,1				;读取外设中断向量寄存器(PIVR),并左移一位

⌨️ 快捷键说明

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