mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-04-22 14:31:59 -04:00
Continued V850 development.
This commit is contained in:
parent
42d07bc94b
commit
77fbf587ee
|
@ -184,11 +184,19 @@ static void prvSetupTimerInterrupt( void )
|
||||||
TM0EQMK0 = 1; /* INTTM0EQ0 interrupt disable */
|
TM0EQMK0 = 1; /* INTTM0EQ0 interrupt disable */
|
||||||
TM0EQIF0 = 0; /* clear INTTM0EQ0 interrupt flag */
|
TM0EQIF0 = 0; /* clear INTTM0EQ0 interrupt flag */
|
||||||
|
|
||||||
|
#ifdef __IAR_V850ES_Fx3__
|
||||||
|
{
|
||||||
/* Set INTTM0EQ0 level 5 priority */
|
/* Set INTTM0EQ0 level 5 priority */
|
||||||
|
TM0CMP0 = (((configCPU_CLOCK_HZ / configTICK_RATE_HZ) / 2)-1); /* divided by 2 because peripherals only run at CPU_CLOCK/2 */
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
{
|
||||||
|
TM0CMP0 = (configCPU_CLOCK_HZ / configTICK_RATE_HZ);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
TM0EQIC0 &= 0xF8;
|
TM0EQIC0 &= 0xF8;
|
||||||
TM0CTL0 = 0x00;
|
TM0CTL0 = 0x00;
|
||||||
TM0CMP0 = (((configCPU_CLOCK_HZ / configTICK_RATE_HZ) / 2)-1); /* divided by 2 because peripherals only run at CPU_CLOCK/2 */
|
|
||||||
|
|
||||||
TM0EQIF0 = 0; /* clear INTTM0EQ0 interrupt flag */
|
TM0EQIF0 = 0; /* clear INTTM0EQ0 interrupt flag */
|
||||||
TM0EQMK0 = 0; /* INTTM0EQ0 interrupt enable */
|
TM0EQMK0 = 0; /* INTTM0EQ0 interrupt enable */
|
||||||
TM0CE = 1; /* TMM0 operation enable */
|
TM0CE = 1; /* TMM0 operation enable */
|
||||||
|
|
|
@ -221,29 +221,6 @@ vPortStart:
|
||||||
; Output: NONE
|
; Output: NONE
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
|
|
||||||
#if 0
|
|
||||||
|
|
||||||
RSEG CODE:CODE
|
|
||||||
vPortYield:
|
|
||||||
DI
|
|
||||||
ADD -0x0C,sp ; prepare stack to save necessary values
|
|
||||||
st.w lp,8[sp] ; save LP to stack
|
|
||||||
st.w lp,4[sp] ; save LP to stack
|
|
||||||
stsr 5,lp
|
|
||||||
st.w lp,0[sp] ; save PSW to stack
|
|
||||||
portSAVE_CONTEXT ; Save the context of the current task.
|
|
||||||
jarl vTaskSwitchContext,lp ; Call the scheduler.
|
|
||||||
portRESTORE_CONTEXT ; Restore the context of whichever task the ...
|
|
||||||
ld.w 0[sp],lp ; restore EIPSW
|
|
||||||
ldsr lp,1
|
|
||||||
ld.w 4[sp],lp ; restore PIPC
|
|
||||||
ldsr lp,0
|
|
||||||
ld.w 8[sp],lp ; restore LP
|
|
||||||
add 0x0C,sp
|
|
||||||
RETI
|
|
||||||
|
|
||||||
#else
|
|
||||||
|
|
||||||
RSEG CODE:CODE
|
RSEG CODE:CODE
|
||||||
vPortYield:
|
vPortYield:
|
||||||
|
|
||||||
|
@ -266,7 +243,6 @@ vPortYield:
|
||||||
|
|
||||||
RETI
|
RETI
|
||||||
|
|
||||||
#endif
|
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
|
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
|
|
|
@ -61,22 +61,13 @@
|
||||||
#define CG_SECURITY8 0FFH
|
#define CG_SECURITY8 0FFH
|
||||||
#define CG_SECURITY9 0FFH
|
#define CG_SECURITY9 0FFH
|
||||||
|
|
||||||
; Option Byte definitions
|
|
||||||
;------------------------------------------------------------------------------
|
|
||||||
#define CG_OPTION7A 0x00
|
|
||||||
#define CG_OPTION7B 0x04
|
|
||||||
#define OPT7C 0x00
|
|
||||||
#define OPT7D 0x00
|
|
||||||
#define OPT7E 0x00
|
|
||||||
#define OPT7F 0x00
|
|
||||||
|
|
||||||
; Tick ISR Prototype
|
; Tick ISR Prototype
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
PUBWEAK `??MD_INTTM0EQ0??INTVEC 608`
|
PUBWEAK `??MD_INTTM0EQ0??INTVEC 640`
|
||||||
PUBLIC MD_INTTM0EQ0
|
PUBLIC MD_INTTM0EQ0
|
||||||
|
|
||||||
MD_INTTM0EQ0 SYMBOL "MD_INTTM0EQ0"
|
MD_INTTM0EQ0 SYMBOL "MD_INTTM0EQ0"
|
||||||
`??MD_INTTM0EQ0??INTVEC 608` SYMBOL "??INTVEC 608", MD_INTTM0EQ0
|
`??MD_INTTM0EQ0??INTVEC 640` SYMBOL "??INTVEC 640", MD_INTTM0EQ0
|
||||||
|
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
; portSAVE_CONTEXT MACRO
|
; portSAVE_CONTEXT MACRO
|
||||||
|
@ -221,29 +212,6 @@ vPortStart:
|
||||||
; Output: NONE
|
; Output: NONE
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
|
|
||||||
#if 0
|
|
||||||
|
|
||||||
RSEG CODE:CODE
|
|
||||||
vPortYield:
|
|
||||||
DI
|
|
||||||
ADD -0x0C,sp ; prepare stack to save necessary values
|
|
||||||
st.w lp,8[sp] ; save LP to stack
|
|
||||||
st.w lp,4[sp] ; save LP to stack
|
|
||||||
stsr 5,lp
|
|
||||||
st.w lp,0[sp] ; save PSW to stack
|
|
||||||
portSAVE_CONTEXT ; Save the context of the current task.
|
|
||||||
jarl vTaskSwitchContext,lp ; Call the scheduler.
|
|
||||||
portRESTORE_CONTEXT ; Restore the context of whichever task the ...
|
|
||||||
ld.w 0[sp],lp ; restore EIPSW
|
|
||||||
ldsr lp,1
|
|
||||||
ld.w 4[sp],lp ; restore PIPC
|
|
||||||
ldsr lp,0
|
|
||||||
ld.w 8[sp],lp ; restore LP
|
|
||||||
add 0x0C,sp
|
|
||||||
RETI
|
|
||||||
|
|
||||||
#else
|
|
||||||
|
|
||||||
RSEG CODE:CODE
|
RSEG CODE:CODE
|
||||||
vPortYield:
|
vPortYield:
|
||||||
|
|
||||||
|
@ -266,7 +234,6 @@ vPortYield:
|
||||||
|
|
||||||
RETI
|
RETI
|
||||||
|
|
||||||
#endif
|
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
|
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
|
@ -318,8 +285,8 @@ MD_INTTM0EQ0:
|
||||||
|
|
||||||
;------------------------------------------------------------------------------
|
;------------------------------------------------------------------------------
|
||||||
COMMON INTVEC:CODE:ROOT(2)
|
COMMON INTVEC:CODE:ROOT(2)
|
||||||
ORG 608
|
ORG 640
|
||||||
`??MD_INTTM0EQ0??INTVEC 608`:
|
`??MD_INTTM0EQ0??INTVEC 640`:
|
||||||
JR MD_INTTM0EQ0
|
JR MD_INTTM0EQ0
|
||||||
|
|
||||||
RSEG NEAR_ID:CONST:SORT:NOROOT(2)
|
RSEG NEAR_ID:CONST:SORT:NOROOT(2)
|
||||||
|
@ -348,17 +315,6 @@ MD_INTTM0EQ0:
|
||||||
DB CG_SECURITY8
|
DB CG_SECURITY8
|
||||||
DB CG_SECURITY9
|
DB CG_SECURITY9
|
||||||
|
|
||||||
;------------------------------------------------------------------------------
|
|
||||||
; set microcontroller option bytes
|
|
||||||
|
|
||||||
COMMON INTVEC:CODE:ROOT(2)
|
|
||||||
ORG 7AH
|
|
||||||
`OPTBYTES`:
|
|
||||||
DB CG_OPTION7A
|
|
||||||
DB CG_OPTION7B
|
|
||||||
DB OPT7C
|
|
||||||
DB OPT7D
|
|
||||||
DB OPT7E
|
|
||||||
DB OPT7F
|
|
||||||
|
|
||||||
END
|
END
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue