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

📄 stm8s_uart2.ls

📁 STM8s
💻 LS
📖 第 1 页 / 共 4 页
字号:
2972  049e 89            	pushw	x
2973  049f 89            	pushw	x
2974       00000002      OFST:	set	2
2977                     ; 915 	int i=0;
2979  04a0 5f            	clrw	x
2980  04a1 1f01          	ldw	(OFST-1,sp),x
2981                     ; 916 	for(i=0;i<strlen(a);i++)
2983  04a3 5f            	clrw	x
2984  04a4 1f01          	ldw	(OFST-1,sp),x
2986  04a6 200f          	jra	L1641
2987  04a8               L5541:
2988                     ; 918 		putChr(a[i]);
2990  04a8 1e01          	ldw	x,(OFST-1,sp)
2991  04aa 72fb03        	addw	x,(OFST+1,sp)
2992  04ad f6            	ld	a,(x)
2993  04ae addf          	call	_putChr
2995                     ; 916 	for(i=0;i<strlen(a);i++)
2997  04b0 1e01          	ldw	x,(OFST-1,sp)
2998  04b2 1c0001        	addw	x,#1
2999  04b5 1f01          	ldw	(OFST-1,sp),x
3000  04b7               L1641:
3003  04b7 1e03          	ldw	x,(OFST+1,sp)
3004  04b9 cd0000        	call	_strlen
3006  04bc 1301          	cpw	x,(OFST-1,sp)
3007  04be 22e8          	jrugt	L5541
3008                     ; 920 } 
3011  04c0 5b04          	addw	sp,#4
3012  04c2 81            	ret
3049                     ; 923 void putStrLine(char *a)
3049                     ; 924 {
3050                     	switch	.text
3051  04c3               _putStrLine:
3055                     ; 925 	putStr(a);
3057  04c3 add9          	call	_putStr
3059                     ; 926 	putChr('\r');
3061  04c5 a60d          	ld	a,#13
3062  04c7 adc6          	call	_putChr
3064                     ; 927 	putChr('\n');
3066  04c9 a60a          	ld	a,#10
3067  04cb adc2          	call	_putChr
3069                     ; 928 }
3072  04cd 81            	ret
3107                     	switch	.const
3108  0004               L611:
3109  0004 00989680      	dc.l	10000000
3110  0008               L021:
3111  0008 05f5e100      	dc.l	100000000
3112  000c               L221:
3113  000c 000f4240      	dc.l	1000000
3114  0010               L421:
3115  0010 000186a0      	dc.l	100000
3116  0014               L621:
3117  0014 00002710      	dc.l	10000
3118  0018               L031:
3119  0018 000003e8      	dc.l	1000
3120  001c               L231:
3121  001c 0000000a      	dc.l	10
3122                     ; 931 void putInt(unsigned long num)
3122                     ; 932 {
3123                     	switch	.text
3124  04ce               _putInt:
3126       00000000      OFST:	set	0
3129                     ; 933 	if(num>=10000000)putChr(num%100000000/10000000+'0');
3131  04ce 96            	ldw	x,sp
3132  04cf 1c0003        	addw	x,#OFST+3
3133  04d2 cd0000        	call	c_ltor
3135  04d5 ae0004        	ldw	x,#L611
3136  04d8 cd0000        	call	c_lcmp
3138  04db 251c          	jrult	L1251
3141  04dd 96            	ldw	x,sp
3142  04de 1c0003        	addw	x,#OFST+3
3143  04e1 cd0000        	call	c_ltor
3145  04e4 ae0008        	ldw	x,#L021
3146  04e7 cd0000        	call	c_lumd
3148  04ea ae0004        	ldw	x,#L611
3149  04ed cd0000        	call	c_ludv
3151  04f0 a630          	ld	a,#48
3152  04f2 cd0000        	call	c_ladc
3154  04f5 b603          	ld	a,c_lreg+3
3155  04f7 ad96          	call	_putChr
3157  04f9               L1251:
3158                     ; 934 	if(num>=1000000)putChr(num%10000000/1000000+'0');
3160  04f9 96            	ldw	x,sp
3161  04fa 1c0003        	addw	x,#OFST+3
3162  04fd cd0000        	call	c_ltor
3164  0500 ae000c        	ldw	x,#L221
3165  0503 cd0000        	call	c_lcmp
3167  0506 251d          	jrult	L3251
3170  0508 96            	ldw	x,sp
3171  0509 1c0003        	addw	x,#OFST+3
3172  050c cd0000        	call	c_ltor
3174  050f ae0004        	ldw	x,#L611
3175  0512 cd0000        	call	c_lumd
3177  0515 ae000c        	ldw	x,#L221
3178  0518 cd0000        	call	c_ludv
3180  051b a630          	ld	a,#48
3181  051d cd0000        	call	c_ladc
3183  0520 b603          	ld	a,c_lreg+3
3184  0522 cd048f        	call	_putChr
3186  0525               L3251:
3187                     ; 935 	if(num>=100000)putChr(num%1000000/100000+'0');
3189  0525 96            	ldw	x,sp
3190  0526 1c0003        	addw	x,#OFST+3
3191  0529 cd0000        	call	c_ltor
3193  052c ae0010        	ldw	x,#L421
3194  052f cd0000        	call	c_lcmp
3196  0532 251d          	jrult	L5251
3199  0534 96            	ldw	x,sp
3200  0535 1c0003        	addw	x,#OFST+3
3201  0538 cd0000        	call	c_ltor
3203  053b ae000c        	ldw	x,#L221
3204  053e cd0000        	call	c_lumd
3206  0541 ae0010        	ldw	x,#L421
3207  0544 cd0000        	call	c_ludv
3209  0547 a630          	ld	a,#48
3210  0549 cd0000        	call	c_ladc
3212  054c b603          	ld	a,c_lreg+3
3213  054e cd048f        	call	_putChr
3215  0551               L5251:
3216                     ; 936 	if(num>=10000)putChr(num%100000/10000+'0');
3218  0551 96            	ldw	x,sp
3219  0552 1c0003        	addw	x,#OFST+3
3220  0555 cd0000        	call	c_ltor
3222  0558 ae0014        	ldw	x,#L621
3223  055b cd0000        	call	c_lcmp
3225  055e 251d          	jrult	L7251
3228  0560 96            	ldw	x,sp
3229  0561 1c0003        	addw	x,#OFST+3
3230  0564 cd0000        	call	c_ltor
3232  0567 ae0010        	ldw	x,#L421
3233  056a cd0000        	call	c_lumd
3235  056d ae0014        	ldw	x,#L621
3236  0570 cd0000        	call	c_ludv
3238  0573 a630          	ld	a,#48
3239  0575 cd0000        	call	c_ladc
3241  0578 b603          	ld	a,c_lreg+3
3242  057a cd048f        	call	_putChr
3244  057d               L7251:
3245                     ; 937 	if(num>=1000)putChr(num%10000/1000+'0');
3247  057d 96            	ldw	x,sp
3248  057e 1c0003        	addw	x,#OFST+3
3249  0581 cd0000        	call	c_ltor
3251  0584 ae0018        	ldw	x,#L031
3252  0587 cd0000        	call	c_lcmp
3254  058a 251d          	jrult	L1351
3257  058c 96            	ldw	x,sp
3258  058d 1c0003        	addw	x,#OFST+3
3259  0590 cd0000        	call	c_ltor
3261  0593 ae0014        	ldw	x,#L621
3262  0596 cd0000        	call	c_lumd
3264  0599 ae0018        	ldw	x,#L031
3265  059c cd0000        	call	c_ludv
3267  059f a630          	ld	a,#48
3268  05a1 cd0000        	call	c_ladc
3270  05a4 b603          	ld	a,c_lreg+3
3271  05a6 cd048f        	call	_putChr
3273  05a9               L1351:
3274                     ; 938 	if(num>=100)putChr(num%1000/100+'0');
3276  05a9 96            	ldw	x,sp
3277  05aa 1c0003        	addw	x,#OFST+3
3278  05ad cd0000        	call	c_ltor
3280  05b0 ae0000        	ldw	x,#L01
3281  05b3 cd0000        	call	c_lcmp
3283  05b6 251d          	jrult	L3351
3286  05b8 96            	ldw	x,sp
3287  05b9 1c0003        	addw	x,#OFST+3
3288  05bc cd0000        	call	c_ltor
3290  05bf ae0018        	ldw	x,#L031
3291  05c2 cd0000        	call	c_lumd
3293  05c5 ae0000        	ldw	x,#L01
3294  05c8 cd0000        	call	c_ludv
3296  05cb a630          	ld	a,#48
3297  05cd cd0000        	call	c_ladc
3299  05d0 b603          	ld	a,c_lreg+3
3300  05d2 cd048f        	call	_putChr
3302  05d5               L3351:
3303                     ; 939 	if(num>=10)putChr(num%100/10+'0');
3305  05d5 96            	ldw	x,sp
3306  05d6 1c0003        	addw	x,#OFST+3
3307  05d9 cd0000        	call	c_ltor
3309  05dc ae001c        	ldw	x,#L231
3310  05df cd0000        	call	c_lcmp
3312  05e2 251d          	jrult	L5351
3315  05e4 96            	ldw	x,sp
3316  05e5 1c0003        	addw	x,#OFST+3
3317  05e8 cd0000        	call	c_ltor
3319  05eb ae0000        	ldw	x,#L01
3320  05ee cd0000        	call	c_lumd
3322  05f1 ae001c        	ldw	x,#L231
3323  05f4 cd0000        	call	c_ludv
3325  05f7 a630          	ld	a,#48
3326  05f9 cd0000        	call	c_ladc
3328  05fc b603          	ld	a,c_lreg+3
3329  05fe cd048f        	call	_putChr
3331  0601               L5351:
3332                     ; 940 	if(num>=0)putChr(num%10+'0');
3334  0601 96            	ldw	x,sp
3335  0602 1c0003        	addw	x,#OFST+3
3336  0605 cd0000        	call	c_ltor
3338  0608 ae001c        	ldw	x,#L231
3339  060b cd0000        	call	c_lumd
3341  060e b603          	ld	a,c_lreg+3
3342  0610 ab30          	add	a,#48
3343  0612 cd048f        	call	_putChr
3345                     ; 941 }
3348  0615 81            	ret
3384                     ; 943 void putIntLine(unsigned long num)
3384                     ; 944 {
3385                     	switch	.text
3386  0616               _putIntLine:
3388       00000000      OFST:	set	0
3391                     ; 945 	putInt(num);
3393  0616 1e05          	ldw	x,(OFST+5,sp)
3394  0618 89            	pushw	x
3395  0619 1e05          	ldw	x,(OFST+5,sp)
3396  061b 89            	pushw	x
3397  061c cd04ce        	call	_putInt
3399  061f 5b04          	addw	sp,#4
3400                     ; 946 	putChr('\r');
3402  0621 a60d          	ld	a,#13
3403  0623 cd048f        	call	_putChr
3405                     ; 947 	putChr('\n');
3407  0626 a60a          	ld	a,#10
3408  0628 cd048f        	call	_putChr
3410                     ; 948 }
3413  062b 81            	ret
3467                     ; 950 void putHex(unsigned char* buf,unsigned long bufSize)
3467                     ; 951 {
3468                     	switch	.text
3469  062c               _putHex:
3471  062c 89            	pushw	x
3472  062d 5204          	subw	sp,#4
3473       00000004      OFST:	set	4
3476                     ; 952 	unsigned long i=0;
3478  062f ae0000        	ldw	x,#0
3479  0632 1f03          	ldw	(OFST-1,sp),x
3480  0634 ae0000        	ldw	x,#0
3481  0637 1f01          	ldw	(OFST-3,sp),x
3482                     ; 953 	for(i=0;i<bufSize;i++)
3484  0639 ae0000        	ldw	x,#0
3485  063c 1f03          	ldw	(OFST-1,sp),x
3486  063e ae0000        	ldw	x,#0
3487  0641 1f01          	ldw	(OFST-3,sp),x
3489  0643 2012          	jra	L7061
3490  0645               L3061:
3491                     ; 955 		putChr(buf[i]);
3493  0645 1e05          	ldw	x,(OFST+1,sp)
3494  0647 72fb03        	addw	x,(OFST-1,sp)
3495  064a f6            	ld	a,(x)
3496  064b cd048f        	call	_putChr
3498                     ; 953 	for(i=0;i<bufSize;i++)
3500  064e 96            	ldw	x,sp
3501  064f 1c0001        	addw	x,#OFST-3
3502  0652 a601          	ld	a,#1
3503  0654 cd0000        	call	c_lgadc
3505  0657               L7061:
3508  0657 96            	ldw	x,sp
3509  0658 1c0001        	addw	x,#OFST-3
3510  065b cd0000        	call	c_ltor
3512  065e 96            	ldw	x,sp
3513  065f 1c0009        	addw	x,#OFST+5
3514  0662 cd0000        	call	c_lcmp
3516  0665 25de          	jrult	L3061
3517                     ; 957 }
3520  0667 5b06          	addw	sp,#6
3521  0669 81            	ret
3534                     	xref	_strlen
3535                     	xdef	_putHex
3536                     	xdef	_putIntLine
3537                     	xdef	_putInt
3538                     	xdef	_putStrLine
3539                     	xdef	_putStr
3540                     	xdef	_putChrLine
3541                     	xdef	_putChr
3542                     	xdef	_UART2_ClearITPendingBit
3543                     	xdef	_UART2_GetITStatus
3544                     	xdef	_UART2_ClearFlag
3545                     	xdef	_UART2_GetFlagStatus
3546                     	xdef	_UART2_SetPrescaler
3547                     	xdef	_UART2_SetGuardTime
3548                     	xdef	_UART2_SetAddress
3549                     	xdef	_UART2_SendBreak
3550                     	xdef	_UART2_SendData9
3551                     	xdef	_UART2_SendData8
3552                     	xdef	_UART2_ReceiveData9
3553                     	xdef	_UART2_ReceiveData8
3554                     	xdef	_UART2_ReceiverWakeUpCmd
3555                     	xdef	_UART2_WakeUpConfig
3556                     	xdef	_UART2_SmartCardNACKCmd
3557                     	xdef	_UART2_SmartCardCmd
3558                     	xdef	_UART2_LINCmd
3559                     	xdef	_UART2_LINConfig
3560                     	xdef	_UART2_LINBreakDetectionConfig
3561                     	xdef	_UART2_IrDACmd
3562                     	xdef	_UART2_IrDAConfig
3563                     	xdef	_UART2_ITConfig
3564                     	xdef	_UART2_Cmd
3565                     	xdef	_UART2_Init
3566                     	xdef	_UART2_DeInit
3567                     	xref	_CLK_GetClockFreq
3568                     	xref.b	c_lreg
3569                     	xref.b	c_x
3588                     	xref	c_lgadc
3589                     	xref	c_ladc
3590                     	xref	c_lumd
3591                     	xref	c_lcmp
3592                     	xref	c_lursh
3593                     	xref	c_lsub
3594                     	xref	c_smul
3595                     	xref	c_ludv
3596                     	xref	c_rtol
3597                     	xref	c_llsh
3598                     	xref	c_ltor
3599                     	end

⌨️ 快捷键说明

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