Skip to content

Commit 8281a04

Browse files
committed
Merge pull request #246 from sg-/master
Added PWM pins and mbed overrides for NMI_b
2 parents d537c51 + 8328758 commit 8281a04

File tree

4 files changed

+134
-50
lines changed

4 files changed

+134
-50
lines changed

libraries/mbed/targets/hal/TARGET_Freescale/TARGET_KSDK_MCUS/TARGET_K64F/PeripheralNames.h

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,16 @@ typedef enum {
7070
PWM_22 = (2 << TPM_SHIFT) | (5), // FTM2 CH5
7171
PWM_23 = (2 << TPM_SHIFT) | (6), // FTM2 CH6
7272
PWM_24 = (2 << TPM_SHIFT) | (7), // FTM2 CH7
73+
// could be 4 or could be 3... not sure what register
74+
// this is for... too much abstraction
75+
PWM_25 = (3 << TPM_SHIFT) | (0), // FTM3 CH0
76+
PWM_26 = (3 << TPM_SHIFT) | (1), // FTM3 CH1
77+
PWM_27 = (3 << TPM_SHIFT) | (2), // FTM3 CH2
78+
PWM_28 = (3 << TPM_SHIFT) | (3), // FTM3 CH3
79+
PWM_29 = (3 << TPM_SHIFT) | (4), // FTM3 CH4
80+
PWM_30 = (3 << TPM_SHIFT) | (5), // FTM3 CH5
81+
PWM_31 = (3 << TPM_SHIFT) | (6), // FTM3 CH6
82+
PWM_32 = (3 << TPM_SHIFT) | (7), // FTM3 CH7
7383
} PWMName;
7484

7585
#define ADC_INSTANCE_SHIFT 8

libraries/mbed/targets/hal/TARGET_Freescale/TARGET_KSDK_MCUS/TARGET_K64F/PinNames.h

Lines changed: 50 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -30,16 +30,16 @@ typedef enum {
3030
#define GPIO_PORT_SHIFT 12
3131

3232
typedef enum {
33-
PTA0 = (0 << GPIO_PORT_SHIFT | 0),
34-
PTA1 = (0 << GPIO_PORT_SHIFT | 1),
35-
PTA2 = (0 << GPIO_PORT_SHIFT | 2),
36-
PTA3 = (0 << GPIO_PORT_SHIFT | 3),
37-
PTA4 = (0 << GPIO_PORT_SHIFT | 4),
38-
PTA5 = (0 << GPIO_PORT_SHIFT | 5),
39-
PTA6 = (0 << GPIO_PORT_SHIFT | 6),
40-
PTA7 = (0 << GPIO_PORT_SHIFT | 7),
41-
PTA8 = (0 << GPIO_PORT_SHIFT | 8),
42-
PTA9 = (0 << GPIO_PORT_SHIFT | 9),
33+
PTA0 = (0 << GPIO_PORT_SHIFT | 0 ),
34+
PTA1 = (0 << GPIO_PORT_SHIFT | 1 ),
35+
PTA2 = (0 << GPIO_PORT_SHIFT | 2 ),
36+
PTA3 = (0 << GPIO_PORT_SHIFT | 3 ),
37+
PTA4 = (0 << GPIO_PORT_SHIFT | 4 ),
38+
PTA5 = (0 << GPIO_PORT_SHIFT | 5 ),
39+
PTA6 = (0 << GPIO_PORT_SHIFT | 6 ),
40+
PTA7 = (0 << GPIO_PORT_SHIFT | 7 ),
41+
PTA8 = (0 << GPIO_PORT_SHIFT | 8 ),
42+
PTA9 = (0 << GPIO_PORT_SHIFT | 9 ),
4343
PTA10 = (0 << GPIO_PORT_SHIFT | 10),
4444
PTA11 = (0 << GPIO_PORT_SHIFT | 11),
4545
PTA12 = (0 << GPIO_PORT_SHIFT | 12),
@@ -62,16 +62,16 @@ typedef enum {
6262
PTA29 = (0 << GPIO_PORT_SHIFT | 29),
6363
PTA30 = (0 << GPIO_PORT_SHIFT | 30),
6464
PTA31 = (0 << GPIO_PORT_SHIFT | 31),
65-
PTB0 = (1 << GPIO_PORT_SHIFT | 0),
66-
PTB1 = (1 << GPIO_PORT_SHIFT | 1),
67-
PTB2 = (1 << GPIO_PORT_SHIFT | 2),
68-
PTB3 = (1 << GPIO_PORT_SHIFT | 3),
69-
PTB4 = (1 << GPIO_PORT_SHIFT | 4),
70-
PTB5 = (1 << GPIO_PORT_SHIFT | 5),
71-
PTB6 = (1 << GPIO_PORT_SHIFT | 6),
72-
PTB7 = (1 << GPIO_PORT_SHIFT | 7),
73-
PTB8 = (1 << GPIO_PORT_SHIFT | 8),
74-
PTB9 = (1 << GPIO_PORT_SHIFT | 9),
65+
PTB0 = (1 << GPIO_PORT_SHIFT | 0 ),
66+
PTB1 = (1 << GPIO_PORT_SHIFT | 1 ),
67+
PTB2 = (1 << GPIO_PORT_SHIFT | 2 ),
68+
PTB3 = (1 << GPIO_PORT_SHIFT | 3 ),
69+
PTB4 = (1 << GPIO_PORT_SHIFT | 4 ),
70+
PTB5 = (1 << GPIO_PORT_SHIFT | 5 ),
71+
PTB6 = (1 << GPIO_PORT_SHIFT | 6 ),
72+
PTB7 = (1 << GPIO_PORT_SHIFT | 7 ),
73+
PTB8 = (1 << GPIO_PORT_SHIFT | 8 ),
74+
PTB9 = (1 << GPIO_PORT_SHIFT | 9 ),
7575
PTB10 = (1 << GPIO_PORT_SHIFT | 10),
7676
PTB11 = (1 << GPIO_PORT_SHIFT | 11),
7777
PTB12 = (1 << GPIO_PORT_SHIFT | 12),
@@ -94,16 +94,16 @@ typedef enum {
9494
PTB29 = (1 << GPIO_PORT_SHIFT | 29),
9595
PTB30 = (1 << GPIO_PORT_SHIFT | 30),
9696
PTB31 = (1 << GPIO_PORT_SHIFT | 31),
97-
PTC0 = (2 << GPIO_PORT_SHIFT | 0),
98-
PTC1 = (2 << GPIO_PORT_SHIFT | 1),
99-
PTC2 = (2 << GPIO_PORT_SHIFT | 2),
100-
PTC3 = (2 << GPIO_PORT_SHIFT | 3),
101-
PTC4 = (2 << GPIO_PORT_SHIFT | 4),
102-
PTC5 = (2 << GPIO_PORT_SHIFT | 5),
103-
PTC6 = (2 << GPIO_PORT_SHIFT | 6),
104-
PTC7 = (2 << GPIO_PORT_SHIFT | 7),
105-
PTC8 = (2 << GPIO_PORT_SHIFT | 8),
106-
PTC9 = (2 << GPIO_PORT_SHIFT | 9),
97+
PTC0 = (2 << GPIO_PORT_SHIFT | 0 ),
98+
PTC1 = (2 << GPIO_PORT_SHIFT | 1 ),
99+
PTC2 = (2 << GPIO_PORT_SHIFT | 2 ),
100+
PTC3 = (2 << GPIO_PORT_SHIFT | 3 ),
101+
PTC4 = (2 << GPIO_PORT_SHIFT | 4 ),
102+
PTC5 = (2 << GPIO_PORT_SHIFT | 5 ),
103+
PTC6 = (2 << GPIO_PORT_SHIFT | 6 ),
104+
PTC7 = (2 << GPIO_PORT_SHIFT | 7 ),
105+
PTC8 = (2 << GPIO_PORT_SHIFT | 8 ),
106+
PTC9 = (2 << GPIO_PORT_SHIFT | 9 ),
107107
PTC10 = (2 << GPIO_PORT_SHIFT | 10),
108108
PTC11 = (2 << GPIO_PORT_SHIFT | 11),
109109
PTC12 = (2 << GPIO_PORT_SHIFT | 12),
@@ -126,16 +126,16 @@ typedef enum {
126126
PTC29 = (2 << GPIO_PORT_SHIFT | 29),
127127
PTC30 = (2 << GPIO_PORT_SHIFT | 30),
128128
PTC31 = (2 << GPIO_PORT_SHIFT | 31),
129-
PTD0 = (3 << GPIO_PORT_SHIFT | 0),
130-
PTD1 = (3 << GPIO_PORT_SHIFT | 1),
131-
PTD2 = (3 << GPIO_PORT_SHIFT | 2),
132-
PTD3 = (3 << GPIO_PORT_SHIFT | 3),
133-
PTD4 = (3 << GPIO_PORT_SHIFT | 4),
134-
PTD5 = (3 << GPIO_PORT_SHIFT | 5),
135-
PTD6 = (3 << GPIO_PORT_SHIFT | 6),
136-
PTD7 = (3 << GPIO_PORT_SHIFT | 7),
137-
PTD8 = (3 << GPIO_PORT_SHIFT | 8),
138-
PTD9 = (3 << GPIO_PORT_SHIFT | 9),
129+
PTD0 = (3 << GPIO_PORT_SHIFT | 0 ),
130+
PTD1 = (3 << GPIO_PORT_SHIFT | 1 ),
131+
PTD2 = (3 << GPIO_PORT_SHIFT | 2 ),
132+
PTD3 = (3 << GPIO_PORT_SHIFT | 3 ),
133+
PTD4 = (3 << GPIO_PORT_SHIFT | 4 ),
134+
PTD5 = (3 << GPIO_PORT_SHIFT | 5 ),
135+
PTD6 = (3 << GPIO_PORT_SHIFT | 6 ),
136+
PTD7 = (3 << GPIO_PORT_SHIFT | 7 ),
137+
PTD8 = (3 << GPIO_PORT_SHIFT | 8 ),
138+
PTD9 = (3 << GPIO_PORT_SHIFT | 9 ),
139139
PTD10 = (3 << GPIO_PORT_SHIFT | 10),
140140
PTD11 = (3 << GPIO_PORT_SHIFT | 11),
141141
PTD12 = (3 << GPIO_PORT_SHIFT | 12),
@@ -158,16 +158,16 @@ typedef enum {
158158
PTD29 = (3 << GPIO_PORT_SHIFT | 29),
159159
PTD30 = (3 << GPIO_PORT_SHIFT | 30),
160160
PTD31 = (3 << GPIO_PORT_SHIFT | 31),
161-
PTE0 = (4 << GPIO_PORT_SHIFT | 0),
162-
PTE1 = (4 << GPIO_PORT_SHIFT | 1),
163-
PTE2 = (4 << GPIO_PORT_SHIFT | 2),
164-
PTE3 = (4 << GPIO_PORT_SHIFT | 3),
165-
PTE4 = (4 << GPIO_PORT_SHIFT | 4),
166-
PTE5 = (4 << GPIO_PORT_SHIFT | 5),
167-
PTE6 = (4 << GPIO_PORT_SHIFT | 6),
168-
PTE7 = (4 << GPIO_PORT_SHIFT | 7),
169-
PTE8 = (4 << GPIO_PORT_SHIFT | 8),
170-
PTE9 = (4 << GPIO_PORT_SHIFT | 9),
161+
PTE0 = (4 << GPIO_PORT_SHIFT | 0 ),
162+
PTE1 = (4 << GPIO_PORT_SHIFT | 1 ),
163+
PTE2 = (4 << GPIO_PORT_SHIFT | 2 ),
164+
PTE3 = (4 << GPIO_PORT_SHIFT | 3 ),
165+
PTE4 = (4 << GPIO_PORT_SHIFT | 4 ),
166+
PTE5 = (4 << GPIO_PORT_SHIFT | 5 ),
167+
PTE6 = (4 << GPIO_PORT_SHIFT | 6 ),
168+
PTE7 = (4 << GPIO_PORT_SHIFT | 7 ),
169+
PTE8 = (4 << GPIO_PORT_SHIFT | 8 ),
170+
PTE9 = (4 << GPIO_PORT_SHIFT | 9 ),
171171
PTE10 = (4 << GPIO_PORT_SHIFT | 10),
172172
PTE11 = (4 << GPIO_PORT_SHIFT | 11),
173173
PTE12 = (4 << GPIO_PORT_SHIFT | 12),
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
/* mbed Microcontroller Library
2+
* Copyright (c) 2006-2013 ARM Limited
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
* you may not use this file except in compliance with the License.
6+
* You may obtain a copy of the License at
7+
*
8+
* http://www.apache.org/licenses/LICENSE-2.0
9+
*
10+
* Unless required by applicable law or agreed to in writing, software
11+
* distributed under the License is distributed on an "AS IS" BASIS,
12+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
* See the License for the specific language governing permissions and
14+
* limitations under the License.
15+
*/
16+
#include "gpio_api.h"
17+
18+
// called before main - implement here if board needs it ortherwise, let
19+
// the application override this if necessary
20+
//void mbed_sdk_init()
21+
//{
22+
//
23+
//}
24+
25+
// Change the NMI pin to an input. This allows NMI pin to
26+
// be used as a low power mode wakeup. The application will
27+
// need to change the pin back to NMI_b or wakeup only occurs once!
28+
void NMI_Handler(void)
29+
{
30+
gpio_t gpio;
31+
gpio_init_in(&gpio, PTA4);
32+
}

libraries/mbed/targets/hal/TARGET_Freescale/TARGET_KSDK_MCUS/TARGET_K64F/pwmout_api.c

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,49 @@
2323
#include "fsl_clock_manager.h"
2424

2525
static const PinMap PinMap_PWM[] = {
26+
{PTA0 , PWM_6 , 3},
27+
{PTA1 , PWM_7 , 3},
28+
{PTA2 , PWM_8 , 3},
29+
{PTA3 , PWM_1 , 3},
30+
{PTA4 , PWM_2 , 3},
31+
{PTA5 , PWM_3 , 3},
32+
{PTA6 , PWM_4 , 3},
33+
{PTA7 , PWM_5 , 3},
34+
{PTA8 , PWM_9 , 3},
35+
{PTA9 , PWM_10, 3},
36+
{PTA10, PWM_17, 3},
37+
{PTA11, PWM_18, 3},
38+
{PTA12, PWM_9 , 3},
39+
{PTA13, PWM_10, 3},
40+
41+
{PTB0 , PWM_9 , 3},
42+
{PTB1 , PWM_10, 3},
2643
{PTB18, PWM_17, 3},
44+
{PTB19, PWM_18, 3},
45+
46+
{PTC1 , PWM_1 , 4},
47+
{PTC2 , PWM_2 , 4},
48+
{PTC3 , PWM_3 , 4},
49+
{PTC4 , PWM_4 , 4},
50+
{PTC5 , PWM_3 , 7},
51+
{PTC8 , PWM_29, 3},
52+
{PTC9 , PWM_30, 3},
53+
{PTC10, PWM_31, 3},
54+
{PTC11, PWM_32, 3},
55+
56+
{PTD0 , PWM_25, 4},
57+
{PTD1 , PWM_26, 4},
58+
{PTD2 , PWM_27, 4},
59+
{PTD3 , PWM_28, 4},
60+
{PTD4 , PWM_5 , 4},
61+
{PTD5 , PWM_6 , 4},
62+
{PTD6 , PWM_7 , 4},
63+
{PTD4 , PWM_5 , 4},
64+
{PTD7 , PWM_8 , 4},
65+
66+
{PTE5 , PWM_25, 6},
67+
{PTE6 , PWM_26, 6},
68+
2769
{NC , NC , 0}
2870
};
2971

0 commit comments

Comments
 (0)