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

📄 tc1_timer.asm

📁 范例程序 SONiX
💻 ASM
字号:
chip	sn8p2758

.data
	acc_buf		ds	1
	pflag_buf	ds	1
	TC1_buf		ds	1

.code

	org	00h
	jmp	main
	org	08h
	jmp	isr	

	org	10h
//============================================================================
//	timer TC1 --> internal clock and auto re-load
//============================================================================

main:
	mov	a,#00h
	b0mov	TC1_buf,a

	b0bclr	ftc1enb					
	mov	a,#20h		//Fcpu/64	
	b0mov	tc1m,a			
											
	mov	a,#64h		//10ms	interrupt Once 					
	b0mov	tc1c,a	
	b0mov	tc1r,a	
//=============================================================================
	b0bset	faload1		//enable auto re-load
//=============================================================================				
					
	b0bset	ftc1enb		// Enable Tc1 timer
	b0bset	ftc1ien  	// Enable Tc1 interrupt
	b0bclr	ftc1irq		// Clean Tc1 interrupt request flag
	b0bset	fgie		// all interrupt operation		
main10:		
//==================================================================
//	
//	User code 
//
//==================================================================								

	jmp	main10
	
//===============================================================================================
//    TC1 set 10ms interval time for TC1 interrupt.   X'tal:4M  Fcpu=Fosc/4  TC1RATE=010 (Fcpu/64) 
//===============================================================================================
//
//	TC1 initial value = 256-(TC1 interrupt interval time*clocl)
//			  = 256-(10ms*4MHz /4 /64)
//			  = 256-(0.01*4*1000000/4/64)
//			  = 100
//			  = 64H
//

isr:

	mov	acc_buf,a			// Push ACC to buffer
	mov	a,pflag
	b0mov	pflag_buf,a			// Push PFLAG to buffer
isr_adc:
	b0bts1	ftc1ien				// Check tc1ien
	jmp	isr90				
	b0bts1	ftc1irq				// Check tc1irp
	jmp	isr90			
	b0bclr	ft0irq
	mov	a,TC1_buf
	add	a,#01h				// 10ms add one time 
	b0mov	TC1_buf,a
isr90:
	mov	a,pflag_buf
	b0mov	pflag,a				// Pop pflag_buf to pflag
	mov	a,acc_buf			// Pop acc_buf to acc
	reti




















⌨️ 快捷键说明

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