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

📄 d_motor.asm

📁 C5402汇编编写的对直流电机和步进电机进行控制的程序。
💻 ASM
字号:

	.mmregs
	.global _c_int00
	
	.ref    _Motor_init
	.ref    _DCM_CNRTL

SPSA1 	.set  0x0048
SPSD1	.set  0x0049

SPCR1   .set  0x0000
SPCR2   .set  0x0001
PCR     .set  0x000e
	
	.text
_c_int00:	
;-------------------------------------------
;                 初始化DSP
;-------------------------------------------
      	; 关中断		
   		SSBX  	INTM
   		RSBX    CPL
   		NOP
   		NOP
   		; 设置堆栈
   		STM     #0x0300,SP
   		; 设置中断屏蔽寄存器,开串口0收中断和中断2
   		STM   	#08h,IMR	
   		; 清中断标志
   		STM 	0,IFR	
   		; 设置DP指针值,用于DP寻址高9位
   		LD    	#0h,DP
   		; 设置软件等待状态寄存器和块转移控制寄存器		
        STM   	7fffh,SWWSR	
        STM   	800h,BSCR	
        ; 设置中断向量表首地址
        LDM   	PMST,A		
        AND   	#7fh,0,A,A	
        OR    	#0080h,0,A,A
        STLM 	A,PMST	
        
        ;将串口1配置为通用IO口
        STM     #SPCR1,SPSA1
        ANDM    #0xfffe,SPSD1
        STM     #SPCR2,SPSA1
        ANDM    #0xfffe,SPSD1
        RPT     #0x1ff
        NOP
        STM     #PCR,SPSA1
        STM     #0x3f00,SPSD1
        	
        ;设置时钟模式寄存器,根据需要倍频
        STM   	0h,CLKMD	
cmode:	LDM   	CLKMD,A		
        AND   	#1h,0,A,A	
        BC    	cmode,ANEQ
        STM   	1207h,CLKMD	
        
        ;设置定时器寄存器
        STM		#0x13FF,PRD                           		; load timer period
       	STM     #0x13FF,TIM
       	STM		#0x3F,TCR   
       	STM     #0x2f,TCR 
       	
       	RSBX    INTM
       	
       	;进入直流电机控制程序
       	CALL    _Motor_init
motor_cntrl:
		CALL    _DCM_CNRTL
		NOP
		B       motor_cntrl
       	

⌨️ 快捷键说明

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