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

📄 main.ls

📁 STM8s
💻 LS
字号:
   1                     ; C Compiler for STM8 (COSMIC Software)
   2                     ; Generator V4.2.8 - 03 Dec 2008
  52                     ; 12 void xwDelay(void)
  52                     ; 13 {
  54                     	switch	.text
  55  0000               _xwDelay:
  57  0000 5204          	subw	sp,#4
  58       00000004      OFST:	set	4
  61                     ; 14 	int i=20;
  63  0002 ae0014        	ldw	x,#20
  64  0005 1f01          	ldw	(OFST-3,sp),x
  65                     ; 15 	int j=10000;
  67  0007 ae2710        	ldw	x,#10000
  68  000a 1f03          	ldw	(OFST-1,sp),x
  70  000c 200f          	jra	L73
  71  000e               L54:
  72                     ; 16 	while(i--)while(j--);
  74  000e 1e03          	ldw	x,(OFST-1,sp)
  75  0010 1d0001        	subw	x,#1
  76  0013 1f03          	ldw	(OFST-1,sp),x
  77  0015 1c0001        	addw	x,#1
  78  0018 a30000        	cpw	x,#0
  79  001b 26f1          	jrne	L54
  80  001d               L73:
  83  001d 1e01          	ldw	x,(OFST-3,sp)
  84  001f 1d0001        	subw	x,#1
  85  0022 1f01          	ldw	(OFST-3,sp),x
  86  0024 1c0001        	addw	x,#1
  87  0027 a30000        	cpw	x,#0
  88  002a 26e2          	jrne	L54
  89                     ; 17 }
  92  002c 5b04          	addw	sp,#4
  93  002e 81            	ret
 127                     ; 27 main()
 127                     ; 28 {
 128                     	switch	.text
 129  002f               _main:
 131  002f 89            	pushw	x
 132       00000002      OFST:	set	2
 135                     ; 32 	clk_init();
 137  0030 cd0156        	call	_clk_init
 139                     ; 36 	Set1302(11,9,6,2,11,15);
 141  0033 4b0f          	push	#15
 142  0035 4b0b          	push	#11
 143  0037 4b02          	push	#2
 144  0039 4b06          	push	#6
 145  003b ae0009        	ldw	x,#9
 146  003e a60b          	ld	a,#11
 147  0040 95            	ld	xh,a
 148  0041 cd0000        	call	_Set1302
 150  0044 5b04          	addw	sp,#4
 151                     ; 39 	 UART2_DeInit();
 153  0046 cd0000        	call	_UART2_DeInit
 155                     ; 41 	UART2_Init(38400,UART2_WORDLENGTH_8D,UART2_STOPBITS_1,UART2_PARITY_NO, UART2_SYNCMODE_CLOCK_DISABLE, UART2_MODE_TX_ENABLE);
 157  0049 4b04          	push	#4
 158  004b 4b80          	push	#128
 159  004d 4b00          	push	#0
 160  004f 4b00          	push	#0
 161  0051 4b00          	push	#0
 162  0053 ae9600        	ldw	x,#38400
 163  0056 89            	pushw	x
 164  0057 ae0000        	ldw	x,#0
 165  005a 89            	pushw	x
 166  005b cd0000        	call	_UART2_Init
 168  005e 5b09          	addw	sp,#9
 169                     ; 43 		putStrLine("Yan shan univer sity ?");
 171  0060 ae0010        	ldw	x,#L16
 172  0063 cd0000        	call	_putStrLine
 174                     ; 45   putStr("zhao Yan Tao");
 176  0066 ae0003        	ldw	x,#L36
 177  0069 cd0000        	call	_putStr
 179  006c               L56:
 180                     ; 49 	putStr("20");
 182  006c ae0000        	ldw	x,#L17
 183  006f cd0000        	call	_putStr
 185                     ; 51 	time =Read1302(YEAR);
 187  0072 a68c          	ld	a,#140
 188  0074 cd0000        	call	_Read1302
 190  0077 b703          	ld	_time,a
 191                     ; 52 	putInt(time);
 193  0079 b603          	ld	a,_time
 194  007b b703          	ld	c_lreg+3,a
 195  007d 3f02          	clr	c_lreg+2
 196  007f 3f01          	clr	c_lreg+1
 197  0081 3f00          	clr	c_lreg
 198  0083 be02          	ldw	x,c_lreg+2
 199  0085 89            	pushw	x
 200  0086 be00          	ldw	x,c_lreg
 201  0088 89            	pushw	x
 202  0089 cd0000        	call	_putInt
 204  008c 5b04          	addw	sp,#4
 205                     ; 53 	putChr('--');
 207  008e a62d          	ld	a,#45
 208  0090 cd0000        	call	_putChr
 210                     ; 55 	time =Read1302(MONTH);
 212  0093 a688          	ld	a,#136
 213  0095 cd0000        	call	_Read1302
 215  0098 b703          	ld	_time,a
 216                     ; 56 	putInt(time);
 218  009a b603          	ld	a,_time
 219  009c b703          	ld	c_lreg+3,a
 220  009e 3f02          	clr	c_lreg+2
 221  00a0 3f01          	clr	c_lreg+1
 222  00a2 3f00          	clr	c_lreg
 223  00a4 be02          	ldw	x,c_lreg+2
 224  00a6 89            	pushw	x
 225  00a7 be00          	ldw	x,c_lreg
 226  00a9 89            	pushw	x
 227  00aa cd0000        	call	_putInt
 229  00ad 5b04          	addw	sp,#4
 230                     ; 57 	putChr('--');
 232  00af a62d          	ld	a,#45
 233  00b1 cd0000        	call	_putChr
 235                     ; 60 	time =Read1302(DAY);
 237  00b4 a68a          	ld	a,#138
 238  00b6 cd0000        	call	_Read1302
 240  00b9 b703          	ld	_time,a
 241                     ; 61 	putInt(time);
 243  00bb b603          	ld	a,_time
 244  00bd b703          	ld	c_lreg+3,a
 245  00bf 3f02          	clr	c_lreg+2
 246  00c1 3f01          	clr	c_lreg+1
 247  00c3 3f00          	clr	c_lreg
 248  00c5 be02          	ldw	x,c_lreg+2
 249  00c7 89            	pushw	x
 250  00c8 be00          	ldw	x,c_lreg
 251  00ca 89            	pushw	x
 252  00cb cd0000        	call	_putInt
 254  00ce 5b04          	addw	sp,#4
 255                     ; 62 	putChr('   ');
 257  00d0 a620          	ld	a,#32
 258  00d2 cd0000        	call	_putChr
 260                     ; 65 	time =Read1302(HOUR);
 262  00d5 a684          	ld	a,#132
 263  00d7 cd0000        	call	_Read1302
 265  00da b703          	ld	_time,a
 266                     ; 66 	putInt(time&0x0f+(u8)(time/16)*10);
 268  00dc b603          	ld	a,_time
 269  00de 5f            	clrw	x
 270  00df 97            	ld	xl,a
 271  00e0 1f01          	ldw	(OFST-1,sp),x
 272  00e2 b603          	ld	a,_time
 273  00e4 4e            	swap	a
 274  00e5 a40f          	and	a,#15
 275  00e7 97            	ld	xl,a
 276  00e8 a60a          	ld	a,#10
 277  00ea 42            	mul	x,a
 278  00eb 1c000f        	addw	x,#15
 279  00ee 01            	rrwa	x,a
 280  00ef 1402          	and	a,(OFST+0,sp)
 281  00f1 01            	rrwa	x,a
 282  00f2 1401          	and	a,(OFST-1,sp)
 283  00f4 01            	rrwa	x,a
 284  00f5 cd0000        	call	c_itolx
 286  00f8 be02          	ldw	x,c_lreg+2
 287  00fa 89            	pushw	x
 288  00fb be00          	ldw	x,c_lreg
 289  00fd 89            	pushw	x
 290  00fe cd0000        	call	_putInt
 292  0101 5b04          	addw	sp,#4
 293                     ; 69 	putChr(':');
 295  0103 a63a          	ld	a,#58
 296  0105 cd0000        	call	_putChr
 298                     ; 70 	time =Read1302(MINUTE);
 300  0108 a682          	ld	a,#130
 301  010a cd0000        	call	_Read1302
 303  010d b703          	ld	_time,a
 304                     ; 71 	putInt(time);
 306  010f b603          	ld	a,_time
 307  0111 b703          	ld	c_lreg+3,a
 308  0113 3f02          	clr	c_lreg+2
 309  0115 3f01          	clr	c_lreg+1
 310  0117 3f00          	clr	c_lreg
 311  0119 be02          	ldw	x,c_lreg+2
 312  011b 89            	pushw	x
 313  011c be00          	ldw	x,c_lreg
 314  011e 89            	pushw	x
 315  011f cd0000        	call	_putInt
 317  0122 5b04          	addw	sp,#4
 318                     ; 75 	putChr(':');
 320  0124 a63a          	ld	a,#58
 321  0126 cd0000        	call	_putChr
 323                     ; 76 	time =Read1302(SECOND);
 325  0129 a680          	ld	a,#128
 326  012b cd0000        	call	_Read1302
 328  012e b703          	ld	_time,a
 329                     ; 77 	putInt(time);
 331  0130 b603          	ld	a,_time
 332  0132 b703          	ld	c_lreg+3,a
 333  0134 3f02          	clr	c_lreg+2
 334  0136 3f01          	clr	c_lreg+1
 335  0138 3f00          	clr	c_lreg
 336  013a be02          	ldw	x,c_lreg+2
 337  013c 89            	pushw	x
 338  013d be00          	ldw	x,c_lreg
 339  013f 89            	pushw	x
 340  0140 cd0000        	call	_putInt
 342  0143 5b04          	addw	sp,#4
 343                     ; 78 		putChr('\r');
 345  0145 a60d          	ld	a,#13
 346  0147 cd0000        	call	_putChr
 348                     ; 79 	putChr('\n');
 350  014a a60a          	ld	a,#10
 351  014c cd0000        	call	_putChr
 353                     ; 83 	xwDelay();
 355  014f cd0000        	call	_xwDelay
 358  0152 ac6c006c      	jpf	L56
 384                     ; 92 void clk_init(void)
 384                     ; 93 {
 385                     	switch	.text
 386  0156               _clk_init:
 390                     ; 94 	CLK->SWCR|=0x02; //开启切换
 392  0156 721250c5      	bset	20677,#1
 393                     ; 95 	CLK->SWR=0xb4;//0xe1;
 395  015a 35b450c4      	mov	20676,#180
 396                     ; 96 	nop();
 399  015e 9d            nop
 401                     ; 97 	nop();
 405  015f 9d            nop
 407                     ; 98 	nop();
 411  0160 9d            nop
 415  0161               L501:
 416                     ; 99   while((CLK->SWCR & 0x01)==0x01);
 418  0161 c650c5        	ld	a,20677
 419  0164 a401          	and	a,#1
 420  0166 a101          	cp	a,#1
 421  0168 27f7          	jreq	L501
 422                     ; 100   CLK->CKDIVR=0x00;
 424  016a 725f50c6      	clr	20678
 425                     ; 101 	CLK->ICKR &= (u8)(~CLK_ICKR_HSIEN);
 427  016e 721150c0      	bres	20672,#0
 428                     ; 102   CLK->SWCR&=(~0x02); //关闭切换
 430  0172 721350c5      	bres	20677,#1
 431                     ; 103 }
 434  0176 81            	ret
 485                     	xdef	_main
 486                     	switch	.ubsct
 487  0000               _add:
 488  0000 00            	ds.b	1
 489                     	xdef	_add
 490  0001               _i:
 491  0001 00            	ds.b	1
 492                     	xdef	_i
 493  0002               _temp:
 494  0002 00            	ds.b	1
 495                     	xdef	_temp
 496  0003               _time:
 497  0003 00            	ds.b	1
 498                     	xdef	_time
 499                     	xdef	_clk_init
 500                     	xdef	_xwDelay
 501                     	xref	_putInt
 502                     	xref	_putStrLine
 503                     	xref	_putStr
 504                     	xref	_putChr
 505                     	xref	_UART2_Init
 506                     	xref	_UART2_DeInit
 507                     	xref	_Set1302
 508                     	xref	_Read1302
 509                     .const:	section	.text
 510  0000               L17:
 511  0000 323000        	dc.b	"20",0
 512  0003               L36:
 513  0003 7a68616f2059  	dc.b	"zhao Yan Tao",0
 514  0010               L16:
 515  0010 59616e207368  	dc.b	"Yan shan univer si"
 516  0022 7479203f00    	dc.b	"ty ?",0
 517                     	xref.b	c_lreg
 537                     	xref	c_itolx
 538                     	end

⌨️ 快捷键说明

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