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

📄 stm8_tsl_api.ls

📁 STM8s
💻 LS
字号:
   1                     ; C Compiler for STM8 (COSMIC Software)
   2                     ; Parser V4.9.2 - 29 Jun 2010
   3                     ; Generator V4.3.5 - 02 Jul 2010
  94                     ; 144 void TSL_Init(void)
  94                     ; 145 {
  96                     	switch	.text
  97  0000               _TSL_Init:
 101                     ; 147   disableInterrupts();
 104  0000 9b            sim
 106                     ; 149   DetectionIntegrator = DETECTION_INTEGRATOR_DEFAULT;
 109  0001 3502004b      	mov	_DetectionIntegrator,#2
 110                     ; 150   EndDetectionIntegrator = END_DETECTION_INTEGRATOR_DEFAULT;
 112  0005 3502004a      	mov	_EndDetectionIntegrator,#2
 113                     ; 151   ECSTimeStep = ECS_TIME_STEP_DEFAULT;
 115  0009 35140048      	mov	_ECSTimeStep,#20
 116                     ; 152   ECSTemporization = ECS_TEMPO_DEFAULT;
 118  000d 35140047      	mov	_ECSTemporization,#20
 119                     ; 153   RecalibrationIntegrator = RECALIBRATION_INTEGRATOR_DEFAULT;
 121  0011 350a0049      	mov	_RecalibrationIntegrator,#10
 122                     ; 154   DetectionTimeout = DTO_DEFAULT;
 124  0015 3f4c          	clr	_DetectionTimeout
 125                     ; 156   ECS_K_Fast = ECS_IIR_KFAST_DEFAULT;
 127  0017 35140046      	mov	_ECS_K_Fast,#20
 128                     ; 157   ECS_K_Slow = ECS_IIR_KSLOW_DEFAULT;
 130  001b 350a0045      	mov	_ECS_K_Slow,#10
 131                     ; 158   ECSTimeStepCounter = ECSTimeStep;
 133  001f 35140002      	mov	_ECSTimeStepCounter,#20
 134                     ; 159   ECSTempoCounter = 0;
 136  0023 3f01          	clr	_ECSTempoCounter
 137                     ; 160   ECSTempoPrescaler = 0;
 139  0025 3f00          	clr	_ECSTempoPrescaler
 140                     ; 162   TSL_IO_Init();
 142  0027 cd0000        	call	_TSL_IO_Init
 144                     ; 165   TSL_Timer_Init();
 146  002a cd0000        	call	_TSL_Timer_Init
 148                     ; 169   TSL_SCKey_Init();
 150  002d cd0000        	call	_TSL_SCKey_Init
 152                     ; 172   TSL_MCKey_Init();
 154  0030 cd0000        	call	_TSL_MCKey_Init
 156                     ; 175   enableInterrupts();
 159  0033 9a            rim
 161                     ; 177   TSLState = TSL_IDLE_STATE;
 164  0034 35010070      	mov	_TSLState,#1
 165                     ; 179 }
 168  0038 81            	ret
 206                     ; 192 void TSL_Action(void)
 206                     ; 193 {
 207                     	switch	.text
 208  0039               _TSL_Action:
 212                     ; 195   switch (TSLState)
 214  0039 b670          	ld	a,_TSLState
 216                     ; 311       break;
 217  003b 4a            	dec	a
 218  003c 2713          	jreq	L53
 219  003e 4a            	dec	a
 220  003f 2725          	jreq	L73
 221  0041 4a            	dec	a
 222  0042 272b          	jreq	L14
 223  0044 a005          	sub	a,#5
 224  0046 273a          	jreq	L34
 225  0048 a002          	sub	a,#2
 226  004a 273f          	jreq	L54
 227  004c 4a            	dec	a
 228  004d 274d          	jreq	L74
 229  004f               L301:
 231  004f 20fe          	jra	L301
 232  0051               L53:
 233                     ; 199       disableInterrupts();
 236  0051 9b            sim
 238                     ; 200       Local_TickFlag.b.DTO_1sec = TSL_Tick_Flags.b.DTO_1sec;
 241                     	btst		_TSL_Tick_Flags,#0
 242  0057 90110003      	bccm	_Local_TickFlag,#0
 243                     ; 201       TSL_Tick_Flags.b.DTO_1sec = 0;
 245  005b 72110000      	bres	_TSL_Tick_Flags,#0
 246                     ; 202       enableInterrupts();
 249  005f 9a            rim
 251                     ; 204       TSLState = TSL_SCKEY_P1_ACQ_STATE;
 254  0060 35020070      	mov	_TSLState,#2
 255                     ; 206       break;
 257  0064 2049          	jra	L56
 258  0066               L73:
 259                     ; 208     case TSL_SCKEY_P1_ACQ_STATE:
 259                     ; 209       TSL_SCKEY_P1_Acquisition();
 261  0066 cd0000        	call	_TSL_SCKEY_P1_Acquisition
 263                     ; 211       TSLState = TSL_SCKEY_P1_PROC_STATE;
 265  0069 35030070      	mov	_TSLState,#3
 266                     ; 212       break;
 268  006d 2040          	jra	L56
 269  006f               L14:
 270                     ; 214     case TSL_SCKEY_P1_PROC_STATE:
 270                     ; 215       for (KeyIndex = 0; KeyIndex < SCKEY_P1_KEY_COUNT; KeyIndex++)
 272  006f 3f11          	clr	_KeyIndex
 273  0071               L76:
 274                     ; 217         TSL_SCKey_Process();
 276  0071 cd0000        	call	_TSL_SCKey_Process
 278                     ; 215       for (KeyIndex = 0; KeyIndex < SCKEY_P1_KEY_COUNT; KeyIndex++)
 280  0074 3c11          	inc	_KeyIndex
 283  0076 b611          	ld	a,_KeyIndex
 284  0078 a102          	cp	a,#2
 285  007a 25f5          	jrult	L76
 286                     ; 225       TSLState = TSL_MCKEY1_ACQ_STATE;
 288  007c 35080070      	mov	_TSLState,#8
 289                     ; 230       break;
 291  0080 202d          	jra	L56
 292  0082               L34:
 293                     ; 279     case TSL_MCKEY1_ACQ_STATE:
 293                     ; 280       TSL_MCKey1_Acquisition();
 295  0082 cd0000        	call	_TSL_MCKey1_Acquisition
 297                     ; 284       TSLState = TSL_MCKEY_PROC_STATE;
 299  0085 350a0070      	mov	_TSLState,#10
 300                     ; 286       break;
 302  0089 2024          	jra	L56
 303  008b               L54:
 304                     ; 295     case TSL_MCKEY_PROC_STATE:
 304                     ; 296       for (KeyIndex = 0; KeyIndex < NUMBER_OF_MULTI_CHANNEL_KEYS; KeyIndex++)
 306  008b 3f11          	clr	_KeyIndex
 307  008d               L57:
 308                     ; 298         TSL_MCKey_Process();
 310  008d cd0000        	call	_TSL_MCKey_Process
 312                     ; 296       for (KeyIndex = 0; KeyIndex < NUMBER_OF_MULTI_CHANNEL_KEYS; KeyIndex++)
 314  0090 3c11          	inc	_KeyIndex
 317  0092 3d11          	tnz	_KeyIndex
 318  0094 27f7          	jreq	L57
 319                     ; 300       TSLState = TSL_ECS_STATE;
 321  0096 350b0070      	mov	_TSLState,#11
 322                     ; 301       break;
 324  009a 2013          	jra	L56
 325  009c               L74:
 326                     ; 304     case TSL_ECS_STATE:
 326                     ; 305       TSL_ECS();
 328  009c cd0000        	call	_TSL_ECS
 330                     ; 306       TSL_GlobalSetting.whole = TSL_TempGlobalSetting.whole;
 332  009f be06          	ldw	x,_TSL_TempGlobalSetting
 333  00a1 bf6e          	ldw	_TSL_GlobalSetting,x
 334                     ; 307       TSL_TempGlobalSetting.whole = 0;
 336  00a3 5f            	clrw	x
 337  00a4 bf06          	ldw	_TSL_TempGlobalSetting,x
 338                     ; 308       TSL_GlobalState.whole = TSL_TempGlobalState.whole;
 340  00a6 45056d        	mov	_TSL_GlobalState,_TSL_TempGlobalState
 341                     ; 309       TSL_TempGlobalState.whole = 0;
 343  00a9 3f05          	clr	_TSL_TempGlobalState
 344                     ; 310       TSLState = TSL_IDLE_STATE;
 346  00ab 35010070      	mov	_TSLState,#1
 347                     ; 311       break;
 349  00af               L56:
 350                     ; 319 }
 353  00af 81            	ret
1435                     	xref	_TSL_ECS
1436                     	switch	.ubsct
1437  0000               _ECSTempoPrescaler:
1438  0000 00            	ds.b	1
1439                     	xdef	_ECSTempoPrescaler
1440  0001               _ECSTempoCounter:
1441  0001 00            	ds.b	1
1442                     	xdef	_ECSTempoCounter
1443  0002               _ECSTimeStepCounter:
1444  0002 00            	ds.b	1
1445                     	xdef	_ECSTimeStepCounter
1446  0003               _Local_TickFlag:
1447  0003 00            	ds.b	1
1448                     	xdef	_Local_TickFlag
1449  0004               _Local_TickECS10ms:
1450  0004 00            	ds.b	1
1451                     	xdef	_Local_TickECS10ms
1452  0005               _TSL_TempGlobalState:
1453  0005 00            	ds.b	1
1454                     	xdef	_TSL_TempGlobalState
1455  0006               _TSL_TempGlobalSetting:
1456  0006 0000          	ds.b	2
1457                     	xdef	_TSL_TempGlobalSetting
1458  0008               _Delta3:
1459  0008 0000          	ds.b	2
1460                     	xdef	_Delta3
1461  000a               _Delta2:
1462  000a 0000          	ds.b	2
1463                     	xdef	_Delta2
1464  000c               _Delta1:
1465  000c 0000          	ds.b	2
1466                     	xdef	_Delta1
1467  000e               _Delta:
1468  000e 0000          	ds.b	2
1469                     	xdef	_Delta
1470  0010               _ChannelIndex:
1471  0010 00            	ds.b	1
1472                     	xdef	_ChannelIndex
1473  0011               _KeyIndex:
1474  0011 00            	ds.b	1
1475                     	xdef	_KeyIndex
1476                     	xref	_TSL_IO_Init
1477                     	xref	_TSL_MCKey_Process
1478                     	xref	_TSL_MCKey1_Acquisition
1479                     	xref	_TSL_MCKey_Init
1480                     	xref	_TSL_SCKey_Process
1481                     	xref	_TSL_SCKEY_P1_Acquisition
1482                     	xref	_TSL_SCKey_Init
1483                     	xdef	_TSL_Action
1484                     	xdef	_TSL_Init
1485  0012               _sMCKeyInfo:
1486  0012 000000000000  	ds.b	48
1487                     	xdef	_sMCKeyInfo
1488  0042               _pMCKeyStruct:
1489  0042 0000          	ds.b	2
1490                     	xdef	_pMCKeyStruct
1491  0044               _IT_Sync_Flags:
1492  0044 00            	ds.b	1
1493                     	xdef	_IT_Sync_Flags
1494  0045               _ECS_K_Slow:
1495  0045 00            	ds.b	1
1496                     	xdef	_ECS_K_Slow
1497  0046               _ECS_K_Fast:
1498  0046 00            	ds.b	1
1499                     	xdef	_ECS_K_Fast
1500  0047               _ECSTemporization:
1501  0047 00            	ds.b	1
1502                     	xdef	_ECSTemporization
1503  0048               _ECSTimeStep:
1504  0048 00            	ds.b	1
1505                     	xdef	_ECSTimeStep
1506  0049               _RecalibrationIntegrator:
1507  0049 00            	ds.b	1
1508                     	xdef	_RecalibrationIntegrator
1509  004a               _EndDetectionIntegrator:
1510  004a 00            	ds.b	1
1511                     	xdef	_EndDetectionIntegrator
1512  004b               _DetectionIntegrator:
1513  004b 00            	ds.b	1
1514                     	xdef	_DetectionIntegrator
1515  004c               _DetectionTimeout:
1516  004c 00            	ds.b	1
1517                     	xdef	_DetectionTimeout
1518  004d               _sSCKeyInfo:
1519  004d 000000000000  	ds.b	30
1520                     	xdef	_sSCKeyInfo
1521  006b               _pKeyStruct:
1522  006b 0000          	ds.b	2
1523                     	xdef	_pKeyStruct
1524  006d               _TSL_GlobalState:
1525  006d 00            	ds.b	1
1526                     	xdef	_TSL_GlobalState
1527  006e               _TSL_GlobalSetting:
1528  006e 0000          	ds.b	2
1529                     	xdef	_TSL_GlobalSetting
1530  0070               _TSLState:
1531  0070 00            	ds.b	1
1532                     	xdef	_TSLState
1533                     	xref	_TSL_Timer_Init
1534                     	xref.b	_TSL_Tick_Flags
1554                     	end

⌨️ 快捷键说明

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