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

📄 mc_user_interface.ls

📁 STM8S105 BLDC源代码
💻 LS
📖 第 1 页 / 共 3 页
字号:
   1                     ; C Compiler for STM8 (COSMIC Software)
   2                     ; Parser V4.9.10 - 10 Feb 2011
   3                     ; Generator (Limited) V4.3.6 - 15 Feb 2011
   4                     ; Optimizer V4.3.5 - 15 Feb 2011
  19                     .const:	section	.text
  20  0000               _HW_Error_Message:
  21  0000 20            	dc.b	32
  22  0001 4f            	dc.b	79
  23  0002 56            	dc.b	86
  24  0003 45            	dc.b	69
  25  0004 52            	dc.b	82
  26  0005 20            	dc.b	32
  27  0006 56            	dc.b	86
  28  0007 4f            	dc.b	79
  29  0008 4c            	dc.b	76
  30  0009 54            	dc.b	84
  31  000a 41            	dc.b	65
  32  000b 47            	dc.b	71
  33  000c 45            	dc.b	69
  34  000d 20            	dc.b	32
  35  000e 20            	dc.b	32
  36  000f 20            	dc.b	32
  37  0010 55            	dc.b	85
  38  0011 4e            	dc.b	78
  39  0012 44            	dc.b	68
  40  0013 45            	dc.b	69
  41  0014 52            	dc.b	82
  42  0015 20            	dc.b	32
  43  0016 56            	dc.b	86
  44  0017 4f            	dc.b	79
  45  0018 4c            	dc.b	76
  46  0019 54            	dc.b	84
  47  001a 41            	dc.b	65
  48  001b 47            	dc.b	71
  49  001c 45            	dc.b	69
  50  001d 20            	dc.b	32
  51  001e 20            	dc.b	32
  52  001f 4f            	dc.b	79
  53  0020 56            	dc.b	86
  54  0021 45            	dc.b	69
  55  0022 52            	dc.b	82
  56  0023 20            	dc.b	32
  57  0024 43            	dc.b	67
  58  0025 55            	dc.b	85
  59  0026 52            	dc.b	82
  60  0027 52            	dc.b	82
  61  0028 45            	dc.b	69
  62  0029 4e            	dc.b	78
  63  002a 54            	dc.b	84
  64  002b 20            	dc.b	32
  65  002c 20            	dc.b	32
  66  002d 4f            	dc.b	79
  67  002e 56            	dc.b	86
  68  002f 45            	dc.b	69
  69  0030 52            	dc.b	82
  70  0031 54            	dc.b	84
  71  0032 45            	dc.b	69
  72  0033 4d            	dc.b	77
  73  0034 50            	dc.b	80
  74  0035 45            	dc.b	69
  75  0036 52            	dc.b	82
  76  0037 41            	dc.b	65
  77  0038 54            	dc.b	84
  78  0039 55            	dc.b	85
  79  003a 52            	dc.b	82
  80  003b 45            	dc.b	69
  81  003c               _SW_Error_Message:
  82  003c 53            	dc.b	83
  83  003d 54            	dc.b	84
  84  003e 41            	dc.b	65
  85  003f 52            	dc.b	82
  86  0040 54            	dc.b	84
  87  0041 55            	dc.b	85
  88  0042 50            	dc.b	80
  89  0043 20            	dc.b	32
  90  0044 46            	dc.b	70
  91  0045 41            	dc.b	65
  92  0046 49            	dc.b	73
  93  0047 4c            	dc.b	76
  94  0048 45            	dc.b	69
  95  0049 44            	dc.b	68
  96  004a 21            	dc.b	33
  97  004b 53            	dc.b	83
  98  004c 50            	dc.b	80
  99  004d 45            	dc.b	69
 100  004e 45            	dc.b	69
 101  004f 44            	dc.b	68
 102  0050 46            	dc.b	70
 103  0051 44            	dc.b	68
 104  0052 42            	dc.b	66
 105  0053 4b            	dc.b	75
 106  0054 20            	dc.b	32
 107  0055 45            	dc.b	69
 108  0056 52            	dc.b	82
 109  0057 52            	dc.b	82
 110  0058 4f            	dc.b	79
 111  0059 52            	dc.b	82
 112  005a 20            	dc.b	32
 113  005b 20            	dc.b	32
 114  005c 20            	dc.b	32
 115  005d 54            	dc.b	84
 116  005e 49            	dc.b	73
 117  005f 4d            	dc.b	77
 118  0060 45            	dc.b	69
 119  0061 5f            	dc.b	95
 120  0062 4f            	dc.b	79
 121  0063 55            	dc.b	85
 122  0064 54            	dc.b	84
 123  0065 20            	dc.b	32
 124  0066 20            	dc.b	32
 125  0067 20            	dc.b	32
 126  0068 20            	dc.b	32
 127  0069 20            	dc.b	32
 128  006a 4d            	dc.b	77
 129  006b 4f            	dc.b	79
 130  006c 54            	dc.b	84
 131  006d 4f            	dc.b	79
 132  006e 52            	dc.b	82
 133  006f 20            	dc.b	32
 134  0070 52            	dc.b	82
 135  0071 55            	dc.b	85
 136  0072 4e            	dc.b	78
 137  0073 4e            	dc.b	78
 138  0074 49            	dc.b	73
 139  0075 4e            	dc.b	78
 140  0076 47            	dc.b	71
 141  0077 20            	dc.b	32
 142                     	bsct
 143  0000               L3_bErrorCode:
 144  0000 00            	dc.b	0
 145  0001               _hHWErrorMask:
 146  0001 0000          	dc.w	0
 386                     ; 55 PTab_t UserInterface_GetSelTab(void)
 386                     ; 56 {
 388                     	switch	.text
 389  0000               _UserInterface_GetSelTab:
 393                     ; 57 	return g_pUserInterface->pSelTab = &(g_pUserInterface->pTab[g_pUserInterface->bSelected_Tab]); // Get the Selectercd tab pointer
 395  0000 be05          	ldw	x,_g_pUserInterface
 396  0002 e601          	ld	a,(1,x)
 397  0004 97            	ld	xl,a
 398  0005 a603          	ld	a,#3
 399  0007 90be05        	ldw	y,_g_pUserInterface
 400  000a 42            	mul	x,a
 401  000b 90ee07        	ldw	y,(7,y)
 402  000e 90bf00        	ldw	c_x,y
 403  0011 90be05        	ldw	y,_g_pUserInterface
 404  0014 72bb0000      	addw	x,c_x
 405  0018 90ef02        	ldw	(2,y),x
 408  001b 81            	ret	
 482                     ; 72 void UserInterface_GetErrorMsg(PUserInterfaceErrorMsg_t pUIErrMsg)
 482                     ; 73 {
 483                     	switch	.text
 484  001c               _UserInterface_GetErrorMsg:
 486  001c 89            	pushw	x
 487       00000000      OFST:	set	0
 490                     ; 74   if (vtimer_TimerElapsed(VTIM_USER_INTERFACE_REFRESH))
 492  001d a603          	ld	a,#3
 493  001f cd0000        	call	_vtimer_TimerElapsed
 495  0022 4d            	tnz	a
 496  0023 2603cc00b0    	jreq	L502
 497                     ; 76     if (hHWErrorMask == 0)
 499  0028 be01          	ldw	x,_hHWErrorMask
 500  002a 2630          	jrne	L702
 501                     ; 79       if (bErrorCode != NO_FAULT)
 503  002c b600          	ld	a,L3_bErrorCode
 504  002e 2723          	jreq	L112
 505                     ; 81         pUIErrMsg->pErrorStatus = "FAULT OCCURRED";
 507  0030 1e01          	ldw	x,(OFST+1,sp)
 508  0032 90ae0088      	ldw	y,#L312
 509  0036 ff            	ldw	(x),y
 510                     ; 82         pUIErrMsg->pErrorMsg =  SW_Error_Message[bErrorCode - 1];
 512  0037 97            	ld	xl,a
 513  0038 a60f          	ld	a,#15
 514  003a 42            	mul	x,a
 515  003b 1d000f        	subw	x,#15
 516  003e 1601          	ldw	y,(OFST+1,sp)
 517  0040 1c003c        	addw	x,#_SW_Error_Message
 518  0043 90ef02        	ldw	(2,y),x
 519                     ; 83 				vtimer_SetTimer(VTIM_USER_INTERFACE_REFRESH,1000,0);
 521  0046 5f            	clrw	x
 522  0047 89            	pushw	x
 523  0048 ae03e8        	ldw	x,#1000
 524  004b 89            	pushw	x
 525  004c a603          	ld	a,#3
 526  004e cd0000        	call	_vtimer_SetTimer
 528  0051 5b04          	addw	sp,#4
 529  0053               L112:
 530                     ; 85       hHWErrorMask = 1;
 532  0053 ae0001        	ldw	x,#1
 533  0056 bf01          	ldw	_hHWErrorMask,x
 534                     ; 86 			bHWErrorIndex = 0;
 536  0058 3f00          	clr	_bHWErrorIndex
 538  005a 2054          	jra	L502
 539  005c               L702:
 540                     ; 91       if ((*pHWerrorOccurred_reg & hHWErrorMask) != 0)
 542  005c 92ce03        	ldw	x,[L5_pHWerrorOccurred_reg.w]
 543  005f 01            	rrwa	x,a
 544  0060 b402          	and	a,_hHWErrorMask+1
 545  0062 01            	rrwa	x,a
 546  0063 b401          	and	a,_hHWErrorMask
 547  0065 01            	rrwa	x,a
 548  0066 5d            	tnzw	x
 549  0067 2737          	jreq	L712
 550                     ; 93         if ((*pHWerrorActual_reg & hHWErrorMask) != 0)
 552  0069 92ce01        	ldw	x,[L7_pHWerrorActual_reg.w]
 553  006c 01            	rrwa	x,a
 554  006d b402          	and	a,_hHWErrorMask+1
 555  006f 01            	rrwa	x,a
 556  0070 b401          	and	a,_hHWErrorMask
 557  0072 01            	rrwa	x,a
 558  0073 5d            	tnzw	x
 559  0074 2708          	jreq	L122
 560                     ; 95           pUIErrMsg->pErrorStatus = "FAULT CONDITION";
 562  0076 1e01          	ldw	x,(OFST+1,sp)
 563  0078 90ae0078      	ldw	y,#L322
 565  007c 2006          	jra	L522
 566  007e               L122:
 567                     ; 99           pUIErrMsg->pErrorStatus = "FAULT OCCURRED";
 569  007e 1e01          	ldw	x,(OFST+1,sp)
 570  0080 90ae0088      	ldw	y,#L312
 571  0084               L522:
 572  0084 ff            	ldw	(x),y
 573                     ; 101         pUIErrMsg->pErrorMsg =  HW_Error_Message[bHWErrorIndex];
 575  0085 b600          	ld	a,_bHWErrorIndex
 576  0087 97            	ld	xl,a
 577  0088 a60f          	ld	a,#15
 578  008a 42            	mul	x,a
 579  008b 1601          	ldw	y,(OFST+1,sp)
 580  008d 1c0000        	addw	x,#_HW_Error_Message
 581  0090 90ef02        	ldw	(2,y),x
 582                     ; 102 				vtimer_SetTimer(VTIM_USER_INTERFACE_REFRESH,1000,0);
 584  0093 5f            	clrw	x
 585  0094 89            	pushw	x
 586  0095 ae03e8        	ldw	x,#1000
 587  0098 89            	pushw	x
 588  0099 a603          	ld	a,#3
 589  009b cd0000        	call	_vtimer_SetTimer
 591  009e 5b04          	addw	sp,#4
 592  00a0               L712:
 593                     ; 104       hHWErrorMask <<= 1;
 595  00a0 3802          	sll	_hHWErrorMask+1
 596  00a2 3901          	rlc	_hHWErrorMask
 597                     ; 105 			bHWErrorIndex++;
 599  00a4 3c00          	inc	_bHWErrorIndex
 600                     ; 106       if (hHWErrorMask == HW_ERROR_NUM_MASK)
 602  00a6 be01          	ldw	x,_hHWErrorMask
 603  00a8 a30010        	cpw	x,#16
 604  00ab 2603          	jrne	L502
 605                     ; 108         hHWErrorMask = 0;
 607  00ad 5f            	clrw	x
 608  00ae bf01          	ldw	_hHWErrorMask,x
 609  00b0               L502:
 610                     ; 113 }
 613  00b0 85            	popw	x
 614  00b1 81            	ret	
1023                     ; 115 void UserInterface_Init(pvdev_device_t pdevice,PUserInterface_t pUserInterface)
1023                     ; 116 {
1024                     	switch	.text
1025  00b2               _UserInterface_Init:
1027  00b2 89            	pushw	x
1028       00000000      OFST:	set	0
1031                     ; 117 	g_pUserInterface = pUserInterface;
1033  00b3 1e05          	ldw	x,(OFST+5,sp)
1034  00b5 bf05          	ldw	_g_pUserInterface,x
1035                     ; 118 	g_pUserInterface->bSelected_Tab = 0; //Reset Selected Tab
1037                     ; 119 	g_pUserInterface->pSelTab = &(g_pUserInterface->pTab[0]); // Set the Selectercd tab (0) pointer
1039  00b7 9093          	ldw	y,x
1040  00b9 6f01          	clr	(1,x)
1041  00bb 90ee07        	ldw	y,(7,y)
1042  00be ef02          	ldw	(2,x),y
1043                     ; 121 	g_pUserInterface->bField_Edit = g_pUserInterface->pSelTab->bFieldsNumber; // No field is in edit mode
1045  00c0 ee02          	ldw	x,(2,x)
1046  00c2 f6            	ld	a,(x)
1047  00c3 be05          	ldw	x,_g_pUserInterface
1048  00c5 e705          	ld	(5,x),a
1049                     ; 122 	UserInterface_ResetFocus();
1051  00c7 ad14          	call	_UserInterface_ResetFocus
1053                     ; 124         pHWerrorOccurred_reg = (pdevice->regs.r16+VDEV_REG16_HW_ERROR_OCCURRED);
1055  00c9 1e01          	ldw	x,(OFST+1,sp)
1056  00cb ee02          	ldw	x,(2,x)
1057  00cd 1c0010        	addw	x,#16
1058  00d0 bf03          	ldw	L5_pHWerrorOccurred_reg,x
1059                     ; 125         pHWerrorActual_reg = (pdevice->regs.r16+VDEV_REG16_HW_ERROR_ACTUAL);
1061  00d2 1e01          	ldw	x,(OFST+1,sp)
1062  00d4 ee02          	ldw	x,(2,x)
1063  00d6 1c0012        	addw	x,#18
1064  00d9 bf01          	ldw	L7_pHWerrorActual_reg,x
1065                     ; 126 }
1068  00db 85            	popw	x
1069  00dc 81            	ret	
1105                     ; 128 void UserInterface_ResetFocus(void)

⌨️ 快捷键说明

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