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

📄 led.asm

📁 2407asm文件夹包括第8~13章的汇编语言代码及使用说明。有如下子文件夹: &#61548 第8章数字输入输出模块(led); &#61548 第8章数字输入输出模块(LED+KEY);
💻 ASM
字号:
IOSFT_REG	.usect	 	".data0",1			;要显示的数据寄存器		
			.include  	"F2407REGS.H"		;引用头部文件 
	    	.def  	_c_int0

    		.text
_c_int0:   							;相当于主程序的入口
			CALL	SYSINIT 		;调系统初始化程序
			LDP		#DP_PF2			;指向7080h~7100h区
			LACL	MCRA
			AND		#000FFH			;IOPB口配置为一般I/O功能
			SACL	MCRA
			LACL	MCRA
			AND		#0FF00H			;IOPA 配置为一般I/O功能
			SACL	MCRA 
			LACL	PBDATDIR
			OR		#0FF00H			;IOPB口设置为输出方式
			SACL	PBDATDIR	        
		    LACL	PADATDIR
			OR		#0FF00H			 
			SACL	PADATDIR		;IOPA 设置为输出方式
			LDP		#5H				;指向0280h~0300h区
			SPLK	#80H,IOSFT_REG	;给显示的数据赋初值
LOOP:		LDP		#DP_PF2		
			LACL	PADATDIR
			AND		#0FFC7H			;138 select ch0,ledclk==1  
			SACL	PADATDIR		;开74HC273片选信号
			LDP		#5H
			LACL	IOSFT_REG
			LDP		#DP_PF2	  
			OR     	#0FF00H
			SACL	PBDATDIR		;送要显示的数据到IOPB口
		    LACL	PADATDIR
	        OR		#0038H           ;138 select ch7,ledclk=0
			SACL	PADATDIR		;关74HC273片选信号
	        CALL	DELAY			;调延时程序
			LDP		#5H
			LACL	IOSFT_REG
			BIT		IOSFT_REG,BIT0	;判是否循环完一次,即已点亮第8个发光二极管
			ROR						;左移一位
			SACL	IOSFT_REG
			
			BCND	LOOP1,TC
			B		WAIT
LOOP1:		LDP		#5H
			SPLK	#80H,IOSFT_REG	;如循环完一次则显示数据赋初值
WAIT:		NOP
			B		LOOP
;(2)	系统初始化程序
SYSINIT:
			SETC 	INTM
    	    CLRC 	SXM
    		CLRC 	OVM
			CLRC 	CNF				;B0 被配置为数据存储空间
   	 		LDP 	#0E0H
			SPLK 	#81FEH,SCSR1  	;CLKIN=6 M,CLKOUT=24 M 
   	 		SPLK	#0E8H,WDCR		;不使能WDT
			LDP		#0
			SPLK	#0000H,IMR		;不使能
			SPLK	#0FFFFH,IFR		;清全部中断标志
			RET
;(3)	软件延时程序
DELAY:
			MAR 	*,AR4
			LAR		AR4,#0FFFEH
			LAR		AR0,#00H
DELAY1:		SBRK	#1
			NOP
			CMPR	00
			BCND	DELAY1,NTC
 			RET

⌨️ 快捷键说明

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