| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136 |
- /*---------------------------------------------------------------------------------------------------------*/
- /* */
- /* Copyright(c) 2017 Nuvoton Technology Corp. All rights reserved. */
- /* */
- /*---------------------------------------------------------------------------------------------------------*/
- //***********************************************************************************************************
- // Website: http://www.nuvoton.com
- // E-Mail : [email protected]
- // Date : Jan/21/2017
- //***********************************************************************************************************
- #include "Common.h"
- #include "Delay.h"
- uint8 BIT_TMP;
- //-------------------------------------------------------------------------
- void Timer0_Delay100us ( uint32 u32CNT )
- {
- clr_T0M; //T0M=0, Timer0 Clock = Fsys/12
- TMOD |= 0x01; //Timer0 is 16-bit mode
- set_TR0; //Start Timer0
- while ( u32CNT != 0 )
- {
- TL0 = LOBYTE ( TIMER_DIV12_VALUE_100us ); //Find define in "Function_define.h" "TIMER VALUE"
- TH0 = HIBYTE ( TIMER_DIV12_VALUE_100us );
- while ( TF0 != 1 ); //Check Timer0 Time-Out Flag
- clr_TF0;
- u32CNT --;
- }
- clr_TR0; //Stop Timer0
- }
- //------------------------------------------------------------------------------
- void Timer0_Delay1ms ( uint32 u32CNT )
- {
- clr_T0M; //T0M=0, Timer0 Clock = Fsys/12
- TMOD |= 0x01; //Timer0 is 16-bit mode
- set_TR0; //Start Timer0
- while ( u32CNT != 0 )
- {
- TL0 = LOBYTE ( TIMER_DIV12_VALUE_1ms ); //Find define in "Function_define.h" "TIMER VALUE"
- TH0 = HIBYTE ( TIMER_DIV12_VALUE_1ms );
- while ( TF0 != 1 ); //Check Timer0 Time-Out Flag
- clr_TF0;
- u32CNT --;
- }
- clr_TR0; //Stop Timer0
- }
- //------------------------------------------------------------------------------
- void Timer1_Delay10ms ( uint32 u32CNT )
- {
- clr_T1M; //T1M=0, Timer1 Clock = Fsys/12
- TMOD |= 0x10; //Timer1 is 16-bit mode
- set_TR1; //Start Timer1
- while ( u32CNT != 0 )
- {
- TL1 = LOBYTE ( TIMER_DIV12_VALUE_10ms ); //Find define in "Function_define.h" "TIMER VALUE"
- TH1 = HIBYTE ( TIMER_DIV12_VALUE_10ms );
- while ( TF1 != 1 ); //Check Timer1 Time-Out Flag
- clr_TF1;
- u32CNT --;
- }
- clr_TR1; //Stop Timer1
- }
- //------------------------------------------------------------------------------
- void Timer2_Delay500us ( uint32 u32CNT )
- {
- clr_T2DIV2; //Timer2 Clock = Fsys/4
- clr_T2DIV1;
- set_T2DIV0;
- set_TR2; //Start Timer2
- while ( u32CNT != 0 )
- {
- TL2 = LOBYTE ( TIMER_DIV4_VALUE_500us ); //Find define in "Function_define.h" "TIMER VALUE"
- TH2 = HIBYTE ( TIMER_DIV4_VALUE_500us );
- while ( TF2 != 1 ); //Check Timer2 Time-Out Flag
- clr_TF2;
- u32CNT --;
- }
- clr_TR2; //Stop Timer2
- }
- //------------------------------------------------------------------------------
- void Timer3_Delay100ms ( uint32 u32CNT )
- {
- T3CON = 0x07; //Timer3 Clock = Fsys/128
- set_TR3; //Trigger Timer3
- while ( u32CNT != 0 )
- {
- RL3 = LOBYTE ( TIMER_DIV128_VALUE_100ms ); //Find define in "Function_define.h" "TIMER VALUE"
- RH3 = HIBYTE ( TIMER_DIV128_VALUE_100ms );
- while ( ( T3CON & SET_BIT4 ) != SET_BIT4 ); //Check Timer3 Time-Out Flag
- clr_TF3;
- u32CNT --;
- }
- clr_TR3; //Stop Timer3
- }
- //------------------------------------------------------------------------------
- void Timer3_Delay10us ( uint32 u32CNT )
- {
- T3CON = 0x07; //Timer3 Clock = Fsys/128
- set_TR3; //Trigger Timer3
- while ( u32CNT != 0 )
- {
- RL3 = LOBYTE ( TIMER_DIV4_VALUE_10us ); //Find define in "Function_define.h" "TIMER VALUE"
- RH3 = HIBYTE ( TIMER_DIV4_VALUE_10us );
- while ( ( T3CON & SET_BIT4 ) != SET_BIT4 ); //Check Timer3 Time-Out Flag
- clr_TF3;
- u32CNT --;
- }
- clr_TR3; //Stop Timer3
- }
|