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

📄 main.s

📁 要用到开发工具SD-H08
💻 S
字号:
	.module main.c
	.area text
_main::
; /*-----------------------------------------------------*
; *工 程 名:Prgframe.prj                                 *
; *硬件连接:PTA.1接指示灯                                *
; *程序描述:指示灯PTA.1闪烁                              *
; *目    的:第一个freescale(Motorola) HC08系列MCU程序框架*
; *说    明:提供Motorola MCU的编程框架,供教学入门使用   *
; *注    意:如果延时不够长的话,会发觉灯不会闪烁,而是一 *
; *         直亮,这是由于人的视觉的引起的。             *
; *--------《嵌入式应用技术基础教程》教学实例-----------*/
; /*[头文件]*/
; #include "GP32C.h"                //映像寄存器地址头文件
; /*[指示灯所接引脚定义]*/
; #define  Light_P     PTA         //灯(Light)接在PTA口
; #define  Light_D     DDRA        //相应的方向寄存器
; #define  Light_Pin   1           //灯所在的引脚
; /*[全局变量声明]*/
; unsigned char I1;
; /*[延时子函数声明]*/
; void Delay1000(void);
; /*[主函数]*/
; void main()
;   {  
;      //[I/O初始化]
;      Light_D|=1<<Light_Pin;       //令指示灯引脚为输出
	bset #1,0x4
;      Light_P|=1<<Light_Pin;       //初始时,指示灯"暗"
	bset #1,0
	bra L3
L2:
;      //[程序总循环入口]
;      while(1)			          
;      { 
;         //指示灯(Light)“亮”
;         Light_P&=~(1<<Light_Pin); 
	bclr #1,0
;         //延时
;         for(I1=0;I1<=250;I1++)
	clr *_I1
	bra L8
L5:
	jsr _Delay1000
	tsx
L6:
	inc *_I1
L8:
	lda *_I1
	cmp #-6
	bls L5
;            Delay1000(); 
;         //指示灯(Light)"暗”                
; 	    Light_P|=1<<Light_Pin;  
	bset #1,0
; 	    //延时  
; 	    for(I1=0;I1<=250;I1++)
	clr *_I1
	bra L12
L9:
	jsr _Delay1000
	tsx
L10:
	inc *_I1
L12:
	lda *_I1
	cmp #-6
	bls L9
L3:
	bra L2
X0:
L1:
	.dbline 0 ; func end
	rts
;              u -> 0,X
_Delay1000::
	ais #-1
	tsx
;            Delay1000(); 
; 	   }
;   }
; /*[内部子程序存放处]
; /*Delay1000:延时1000个时钟周期-------------------------*    
; *功  能:延时函数(约1000个时钟周期)                     *
; *参  数:无                                             *
; *返  回:无                                             *
; *-----------------------------------------------------*/                            
; void Delay1000(void)
;   {  unsigned char u; 
	clr ,X
	bra L17
L14:
L15:
	inc ,X
L17:
;     for(u=0;u<=110;u++);
	lda ,X
	cmp #110
	bls L14
L13:
	ais #1
	.dbline 0 ; func end
	rts
	.area bss
_I1::
	.blkb 1

⌨️ 快捷键说明

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