added prescaler for 16 bit pwm in LPC1347 target

Fork of mbed-dev by mbed official

Committer:
<>
Date:
Fri Sep 02 15:07:44 2016 +0100
Revision:
144:ef7eb2e8f9f7
This updates the lib to the mbed lib v125

Who changed what in which revision?

UserRevisionLine numberNew contents of line
<> 144:ef7eb2e8f9f7 1 /* mbed Microcontroller Library
<> 144:ef7eb2e8f9f7 2 * Copyright (c) 2016 ARM Limited
<> 144:ef7eb2e8f9f7 3 *
<> 144:ef7eb2e8f9f7 4 * Licensed under the Apache License, Version 2.0 (the "License");
<> 144:ef7eb2e8f9f7 5 * you may not use this file except in compliance with the License.
<> 144:ef7eb2e8f9f7 6 * You may obtain a copy of the License at
<> 144:ef7eb2e8f9f7 7 *
<> 144:ef7eb2e8f9f7 8 * http://www.apache.org/licenses/LICENSE-2.0
<> 144:ef7eb2e8f9f7 9 *
<> 144:ef7eb2e8f9f7 10 * Unless required by applicable law or agreed to in writing, software
<> 144:ef7eb2e8f9f7 11 * distributed under the License is distributed on an "AS IS" BASIS,
<> 144:ef7eb2e8f9f7 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
<> 144:ef7eb2e8f9f7 13 * See the License for the specific language governing permissions and
<> 144:ef7eb2e8f9f7 14 * limitations under the License.
<> 144:ef7eb2e8f9f7 15 */
<> 144:ef7eb2e8f9f7 16
<> 144:ef7eb2e8f9f7 17 #ifndef _APB_TIMER_DRV_H
<> 144:ef7eb2e8f9f7 18 #define _APB_TIMER_DRV_H
<> 144:ef7eb2e8f9f7 19
<> 144:ef7eb2e8f9f7 20 #ifdef __cplusplus
<> 144:ef7eb2e8f9f7 21 extern "C" {
<> 144:ef7eb2e8f9f7 22 #endif
<> 144:ef7eb2e8f9f7 23
<> 144:ef7eb2e8f9f7 24 /* Supported Number of Timers */
<> 144:ef7eb2e8f9f7 25 #define NUM_TIMERS 2
<> 144:ef7eb2e8f9f7 26 #define TIMER0 0
<> 144:ef7eb2e8f9f7 27 #define TIMER1 1
<> 144:ef7eb2e8f9f7 28
<> 144:ef7eb2e8f9f7 29 /* Default reload */
<> 144:ef7eb2e8f9f7 30 #define TIMER_DEFAULT_RELOAD 0xFFFFFFFF
<> 144:ef7eb2e8f9f7 31
<> 144:ef7eb2e8f9f7 32 /*
<> 144:ef7eb2e8f9f7 33 * Timer_Initialize(): Initializes an hardware timer
<> 144:ef7eb2e8f9f7 34 * timer: timer to be Initialized
<> 144:ef7eb2e8f9f7 35 * time_us: timer reload value in us - 0 to reload to timer max value
<> 144:ef7eb2e8f9f7 36 * time_us = tick_value / TIMER_TICK_US
<> 144:ef7eb2e8f9f7 37 */
<> 144:ef7eb2e8f9f7 38 void Timer_Initialize(uint32_t timer, uint32_t time_us);
<> 144:ef7eb2e8f9f7 39
<> 144:ef7eb2e8f9f7 40 /*
<> 144:ef7eb2e8f9f7 41 * Timer_Enable(): Enables an hardware timer
<> 144:ef7eb2e8f9f7 42 * timer: timer to be enabled
<> 144:ef7eb2e8f9f7 43 */
<> 144:ef7eb2e8f9f7 44 void Timer_Enable(uint32_t timer);
<> 144:ef7eb2e8f9f7 45
<> 144:ef7eb2e8f9f7 46 /*
<> 144:ef7eb2e8f9f7 47 * Timer_Disable(): Disables an hardware timer
<> 144:ef7eb2e8f9f7 48 * timer: timer to be disabled
<> 144:ef7eb2e8f9f7 49 */
<> 144:ef7eb2e8f9f7 50 void Timer_Disable(uint32_t timer);
<> 144:ef7eb2e8f9f7 51
<> 144:ef7eb2e8f9f7 52 /*
<> 144:ef7eb2e8f9f7 53 * Timer_isEnabled(): verifies if a timer is enabled
<> 144:ef7eb2e8f9f7 54 * timer: timer to be verified
<> 144:ef7eb2e8f9f7 55 * @return: 0 disabled - 1 enabled
<> 144:ef7eb2e8f9f7 56 */
<> 144:ef7eb2e8f9f7 57 uint32_t Timer_isEnabled(uint32_t timer);
<> 144:ef7eb2e8f9f7 58
<> 144:ef7eb2e8f9f7 59 /*
<> 144:ef7eb2e8f9f7 60 * Timer_Read(): provides timer VALUE
<> 144:ef7eb2e8f9f7 61 * timer: timer to be read
<> 144:ef7eb2e8f9f7 62 * @return: timer VALUE
<> 144:ef7eb2e8f9f7 63 */
<> 144:ef7eb2e8f9f7 64 uint32_t Timer_Read(uint32_t timer);
<> 144:ef7eb2e8f9f7 65
<> 144:ef7eb2e8f9f7 66 /*
<> 144:ef7eb2e8f9f7 67 * Timer_SetInterrupt(): sets timer Interrupt
<> 144:ef7eb2e8f9f7 68 * timer: timer on which interrupt is set
<> 144:ef7eb2e8f9f7 69 * time_us: reloading time in us
<> 144:ef7eb2e8f9f7 70 */
<> 144:ef7eb2e8f9f7 71 void Timer_SetInterrupt(uint32_t timer, uint32_t time_us);
<> 144:ef7eb2e8f9f7 72
<> 144:ef7eb2e8f9f7 73 /*
<> 144:ef7eb2e8f9f7 74 * Timer_DisableInterrupt(): disables timer interrupt
<> 144:ef7eb2e8f9f7 75 * timer: timer on which interrupt is disabled
<> 144:ef7eb2e8f9f7 76 */
<> 144:ef7eb2e8f9f7 77 void Timer_DisableInterrupt(uint32_t timer);
<> 144:ef7eb2e8f9f7 78
<> 144:ef7eb2e8f9f7 79 /*
<> 144:ef7eb2e8f9f7 80 * Timer_ClearInterrupt(): clear timer interrupt
<> 144:ef7eb2e8f9f7 81 * timer: timer on which interrupt needs to be cleared
<> 144:ef7eb2e8f9f7 82 */
<> 144:ef7eb2e8f9f7 83 void Timer_ClearInterrupt(uint32_t timer);
<> 144:ef7eb2e8f9f7 84
<> 144:ef7eb2e8f9f7 85 /*
<> 144:ef7eb2e8f9f7 86 * Timer_GetIRQn(): returns IRQn of a Timer
<> 144:ef7eb2e8f9f7 87 * timer: timer on which IRQn is defined - 0 if it is not defined
<> 144:ef7eb2e8f9f7 88 */
<> 144:ef7eb2e8f9f7 89 uint32_t Timer_GetIRQn(uint32_t timer);
<> 144:ef7eb2e8f9f7 90
<> 144:ef7eb2e8f9f7 91 /*
<> 144:ef7eb2e8f9f7 92 * Timer_GetTicksUS(): returns the number of Ticks per us
<> 144:ef7eb2e8f9f7 93 * timer: timer associated with the Ticks per us
<> 144:ef7eb2e8f9f7 94 * @return: Ticks per us - 0 if the timer is disables
<> 144:ef7eb2e8f9f7 95 */
<> 144:ef7eb2e8f9f7 96 uint32_t Timer_GetTicksUS(uint32_t timer);
<> 144:ef7eb2e8f9f7 97
<> 144:ef7eb2e8f9f7 98 /*
<> 144:ef7eb2e8f9f7 99 * Timer_GetReloadValue(): returns the load value of the selected
<> 144:ef7eb2e8f9f7 100 * timer.
<> 144:ef7eb2e8f9f7 101 * timer: timer associated with the Ticks per us
<> 144:ef7eb2e8f9f7 102 * @return: reload value of the selected singletimer
<> 144:ef7eb2e8f9f7 103 */
<> 144:ef7eb2e8f9f7 104 uint32_t Timer_GetReloadValue(uint32_t timer);
<> 144:ef7eb2e8f9f7 105
<> 144:ef7eb2e8f9f7 106 #ifdef __cplusplus
<> 144:ef7eb2e8f9f7 107 }
<> 144:ef7eb2e8f9f7 108 #endif
<> 144:ef7eb2e8f9f7 109 #endif /* _APB_TIMER_DRV_H */