mbed library sources. Supersedes mbed-src.

Fork of mbed-dev by mbed official

Files at this revision

API Documentation at this revision

Comitter:
mbed_official
Date:
Thu Nov 19 13:45:10 2015 +0000
Parent:
23:ee8ca7052b3c
Child:
25:ac5b0a371348
Commit message:
Synchronized with git revision c3901c65ead13d4e4a0fedfb6cc55fbe0c3db65e

Full URL: https://github.com/mbedmicro/mbed/commit/c3901c65ead13d4e4a0fedfb6cc55fbe0c3db65e/

Enable ADC A-channels in K22F and K64F

Changed in this revision

targets/hal/TARGET_Freescale/TARGET_KPSDK_MCUS/TARGET_K22F/PeripheralNames.h Show annotated file Show diff for this revision Revisions of this file
targets/hal/TARGET_Freescale/TARGET_KPSDK_MCUS/TARGET_K22F/PeripheralPins.c Show annotated file Show diff for this revision Revisions of this file
targets/hal/TARGET_Freescale/TARGET_KPSDK_MCUS/TARGET_MCU_K64F/TARGET_FRDM/PeripheralNames.h Show annotated file Show diff for this revision Revisions of this file
targets/hal/TARGET_Freescale/TARGET_KPSDK_MCUS/TARGET_MCU_K64F/TARGET_FRDM/PeripheralPins.c Show annotated file Show diff for this revision Revisions of this file
targets/hal/TARGET_Freescale/TARGET_KPSDK_MCUS/analogin_api.c Show annotated file Show diff for this revision Revisions of this file
--- a/targets/hal/TARGET_Freescale/TARGET_KPSDK_MCUS/TARGET_K22F/PeripheralNames.h	Tue Nov 17 14:45:12 2015 +0000
+++ b/targets/hal/TARGET_Freescale/TARGET_KPSDK_MCUS/TARGET_K22F/PeripheralNames.h	Thu Nov 19 13:45:10 2015 +0000
@@ -93,10 +93,17 @@
     ADC0_SE16 = (0 << ADC_INSTANCE_SHIFT) | 16,
     ADC0_SE17 = (0 << ADC_INSTANCE_SHIFT) | 17,
     ADC0_SE18 = (0 << ADC_INSTANCE_SHIFT) | 18,
-    ADC1_SE4b = (1 << ADC_INSTANCE_SHIFT) | 4,
-    ADC1_SE5b = (1 << ADC_INSTANCE_SHIFT) | 5,
-    ADC1_SE6b = (1 << ADC_INSTANCE_SHIFT) | 6,
-    ADC1_SE7b = (1 << ADC_INSTANCE_SHIFT) | 7,
+    ADC0_SE21 = (0 << ADC_INSTANCE_SHIFT) | 21,
+    ADC0_SE22 = (0 << ADC_INSTANCE_SHIFT) | 22,
+    ADC0_SE23 = (0 << ADC_INSTANCE_SHIFT) | 23,
+    ADC1_SE4a = (1 << ADC_INSTANCE_SHIFT) | 4,
+    ADC1_SE5a = (1 << ADC_INSTANCE_SHIFT) | 5,
+    ADC1_SE6a = (1 << ADC_INSTANCE_SHIFT) | 6,
+    ADC1_SE7a = (1 << ADC_INSTANCE_SHIFT) | 7,
+    ADC1_SE4b = (1 << ADC_INSTANCE_SHIFT) | (1 << ADC_B_CHANNEL_SHIFT) | 4,
+    ADC1_SE5b = (1 << ADC_INSTANCE_SHIFT) | (1 << ADC_B_CHANNEL_SHIFT) | 5,
+    ADC1_SE6b = (1 << ADC_INSTANCE_SHIFT) | (1 << ADC_B_CHANNEL_SHIFT) | 6,
+    ADC1_SE7b = (1 << ADC_INSTANCE_SHIFT) | (1 << ADC_B_CHANNEL_SHIFT) | 7,
     ADC1_SE8  = (1 << ADC_INSTANCE_SHIFT) | 8,
     ADC1_SE9  = (1 << ADC_INSTANCE_SHIFT) | 9,
     ADC1_SE12 = (1 << ADC_INSTANCE_SHIFT) | 12,
@@ -106,6 +113,7 @@
     ADC1_SE16 = (1 << ADC_INSTANCE_SHIFT) | 16,
     ADC1_SE17 = (1 << ADC_INSTANCE_SHIFT) | 17,
     ADC1_SE18 = (1 << ADC_INSTANCE_SHIFT) | 18,
+    ADC1_SE23 = (1 << ADC_INSTANCE_SHIFT) | 23,
 } ADCName;
 
 typedef enum {
--- a/targets/hal/TARGET_Freescale/TARGET_KPSDK_MCUS/TARGET_K22F/PeripheralPins.c	Tue Nov 17 14:45:12 2015 +0000
+++ b/targets/hal/TARGET_Freescale/TARGET_KPSDK_MCUS/TARGET_K22F/PeripheralPins.c	Thu Nov 19 13:45:10 2015 +0000
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
- 
+
 #include "PeripheralPins.h"
 
 /************RTC***************/
@@ -23,23 +23,29 @@
 
 /************ADC***************/
 const PinMap PinMap_ADC[] = {
-    {PTC2,  ADC0_SE4b, 0},
-    {PTC8,  ADC1_SE4b, 0},
-    {PTC9,  ADC1_SE5b, 0},
-    {PTD1,  ADC0_SE5b, 0},
-    {PTC10, ADC1_SE6b, 0},
-    {PTD5,  ADC0_SE6b, 0},
-    {PTC11, ADC1_SE7b, 0},
-    {PTD6,  ADC0_SE7b, 0},
+    {PTA17, ADC1_SE17, 0},
     {PTB0 , ADC0_SE8 , 0},
     {PTB1 , ADC0_SE9 , 0},
     {PTB2 , ADC0_SE12, 0},
     {PTB3 , ADC0_SE13, 0},
-    {PTC0 , ADC0_SE14, 0},
+    {PTB6 , ADC1_SE12, 0},
+    {PTB7 , ADC1_SE13, 0},
     {PTB10, ADC1_SE14, 0},
     {PTB11, ADC1_SE15, 0},
+    {PTC0 , ADC0_SE14, 0},
     {PTC1 , ADC0_SE15, 0},
-    {PTA17, ADC1_SE17, 0},
+    {PTC2,  ADC0_SE4b, 0},
+    {PTC8,  ADC1_SE4b, 0},
+    {PTC9,  ADC1_SE5b, 0},
+    {PTC10, ADC1_SE6b, 0},
+    {PTC11, ADC1_SE7b, 0},
+    {PTD1,  ADC0_SE5b, 0},
+    {PTD5,  ADC0_SE6b, 0},
+    {PTD6,  ADC0_SE7b, 0},
+    {PTE0,  ADC1_SE4a, 0},
+    {PTE1,  ADC1_SE5a, 0},
+    {PTE2,  ADC1_SE6a, 0},
+    {PTE3,  ADC1_SE7a, 0},
     //{PTE24, ADC0_SE17, 0}, //I2C pull up
     //{PTE25, ADC0_SE18, 0}, //I2C pull up
     {NC   , NC       , 0}
@@ -152,18 +158,18 @@
     {PTA11, PWM_21, 3},
     {PTA12, PWM_10, 3},
     {PTA13, PWM_11, 3},
-    
+
     {PTB0 , PWM_10, 3},
     {PTB1 , PWM_11, 3},
     {PTB18, PWM_20, 3},
     {PTB19, PWM_21, 3},
-    
+
     {PTC1 , PWM_00, 4},
     {PTC2 , PWM_01, 4},
     {PTC3 , PWM_02, 4},
     {PTC4 , PWM_03, 4},
     {PTC5 , PWM_02, 7},
-    
+
     {PTD0 , PWM_30, 4},
     {PTD1 , PWM_31, 4},
     {PTD2 , PWM_32, 4},
@@ -172,7 +178,7 @@
     {PTD5 , PWM_05, 4},
     {PTD6 , PWM_06, 4},
     {PTD7 , PWM_07, 4},
-    
+
     {PTE5 , PWM_30, 6},
     {PTE6 , PWM_31, 6},
     {NC   ,  NC   , 0}
--- a/targets/hal/TARGET_Freescale/TARGET_KPSDK_MCUS/TARGET_MCU_K64F/TARGET_FRDM/PeripheralNames.h	Tue Nov 17 14:45:12 2015 +0000
+++ b/targets/hal/TARGET_Freescale/TARGET_KPSDK_MCUS/TARGET_MCU_K64F/TARGET_FRDM/PeripheralNames.h	Thu Nov 19 13:45:10 2015 +0000
@@ -98,10 +98,17 @@
     ADC0_SE16 = (0 << ADC_INSTANCE_SHIFT) | 16,
     ADC0_SE17 = (0 << ADC_INSTANCE_SHIFT) | 17,
     ADC0_SE18 = (0 << ADC_INSTANCE_SHIFT) | 18,
-    ADC1_SE4b = (1 << ADC_INSTANCE_SHIFT) | 4,
-    ADC1_SE5b = (1 << ADC_INSTANCE_SHIFT) | 5,
-    ADC1_SE6b = (1 << ADC_INSTANCE_SHIFT) | 6,
-    ADC1_SE7b = (1 << ADC_INSTANCE_SHIFT) | 7,
+    ADC0_SE21 = (0 << ADC_INSTANCE_SHIFT) | 21,
+    ADC0_SE22 = (0 << ADC_INSTANCE_SHIFT) | 22,
+    ADC0_SE23 = (0 << ADC_INSTANCE_SHIFT) | 23,
+    ADC1_SE4a = (1 << ADC_INSTANCE_SHIFT) | 4,
+    ADC1_SE5a = (1 << ADC_INSTANCE_SHIFT) | 5,
+    ADC1_SE6a = (1 << ADC_INSTANCE_SHIFT) | 6,
+    ADC1_SE7a = (1 << ADC_INSTANCE_SHIFT) | 7,
+    ADC1_SE4b = (1 << ADC_INSTANCE_SHIFT) | (1 << ADC_B_CHANNEL_SHIFT) | 4,
+    ADC1_SE5b = (1 << ADC_INSTANCE_SHIFT) | (1 << ADC_B_CHANNEL_SHIFT) | 5,
+    ADC1_SE6b = (1 << ADC_INSTANCE_SHIFT) | (1 << ADC_B_CHANNEL_SHIFT) | 6,
+    ADC1_SE7b = (1 << ADC_INSTANCE_SHIFT) | (1 << ADC_B_CHANNEL_SHIFT) | 7,
     ADC1_SE8  = (1 << ADC_INSTANCE_SHIFT) | 8,
     ADC1_SE9  = (1 << ADC_INSTANCE_SHIFT) | 9,
     ADC1_SE12 = (1 << ADC_INSTANCE_SHIFT) | 12,
@@ -111,6 +118,7 @@
     ADC1_SE16 = (1 << ADC_INSTANCE_SHIFT) | 16,
     ADC1_SE17 = (1 << ADC_INSTANCE_SHIFT) | 17,
     ADC1_SE18 = (1 << ADC_INSTANCE_SHIFT) | 18,
+    ADC1_SE23 = (1 << ADC_INSTANCE_SHIFT) | 23,
 } ADCName;
 
 typedef enum {
--- a/targets/hal/TARGET_Freescale/TARGET_KPSDK_MCUS/TARGET_MCU_K64F/TARGET_FRDM/PeripheralPins.c	Tue Nov 17 14:45:12 2015 +0000
+++ b/targets/hal/TARGET_Freescale/TARGET_KPSDK_MCUS/TARGET_MCU_K64F/TARGET_FRDM/PeripheralPins.c	Thu Nov 19 13:45:10 2015 +0000
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
- 
+
 #include "PeripheralPins.h"
 
 /************RTC***************/
@@ -23,23 +23,29 @@
 
 /************ADC***************/
 const PinMap PinMap_ADC[] = {
-    {PTC2,  ADC0_SE4b, 0},
-    {PTC8,  ADC1_SE4b, 0},
-    {PTC9,  ADC1_SE5b, 0},
-    {PTD1,  ADC0_SE5b, 0},
-    {PTC10, ADC1_SE6b, 0},
-    {PTD5,  ADC0_SE6b, 0},
-    {PTC11, ADC1_SE7b, 0},
-    {PTD6,  ADC0_SE7b, 0},
+    {PTA17, ADC1_SE17, 0},
     {PTB0 , ADC0_SE8 , 0},
     {PTB1 , ADC0_SE9 , 0},
     {PTB2 , ADC0_SE12, 0},
     {PTB3 , ADC0_SE13, 0},
-    {PTC0 , ADC0_SE14, 0},
+    {PTB6 , ADC1_SE12, 0},
+    {PTB7 , ADC1_SE13, 0},
     {PTB10, ADC1_SE14, 0},
     {PTB11, ADC1_SE15, 0},
+    {PTC0 , ADC0_SE14, 0},
     {PTC1 , ADC0_SE15, 0},
-    {PTA17, ADC1_SE17, 0},
+    {PTC2,  ADC0_SE4b, 0},
+    {PTC8,  ADC1_SE4b, 0},
+    {PTC9,  ADC1_SE5b, 0},
+    {PTC10, ADC1_SE6b, 0},
+    {PTC11, ADC1_SE7b, 0},
+    {PTD1,  ADC0_SE5b, 0},
+    {PTD5,  ADC0_SE6b, 0},
+    {PTD6,  ADC0_SE7b, 0},
+    {PTE0,  ADC1_SE4a, 0},
+    {PTE1,  ADC1_SE5a, 0},
+    {PTE2,  ADC1_SE6a, 0},
+    {PTE3,  ADC1_SE7a, 0},
     //{PTE24, ADC0_SE17, 0}, //I2C pull up
     //{PTE25, ADC0_SE18, 0}, //I2C pull up
     {NC   , NC       , 0}
@@ -169,12 +175,12 @@
     {PTA11, PWM_18, 3},
     {PTA12, PWM_9 , 3},
     {PTA13, PWM_10, 3},
-    
+
     {PTB0 , PWM_9 , 3},
     {PTB1 , PWM_10, 3},
     {PTB18, PWM_17, 3},
     {PTB19, PWM_18, 3},
-    
+
     {PTC1 , PWM_1 , 4},
     {PTC2 , PWM_2 , 4},
     {PTC3 , PWM_3 , 4},
@@ -184,7 +190,7 @@
     {PTC9 , PWM_30, 3},
     {PTC10, PWM_31, 3},
     {PTC11, PWM_32, 3},
-    
+
     {PTD0 , PWM_25, 4},
     {PTD1 , PWM_26, 4},
     {PTD2 , PWM_27, 4},
@@ -194,9 +200,9 @@
     {PTD6 , PWM_7 , 4},
     {PTD4 , PWM_5 , 4},
     {PTD7 , PWM_8 , 4},
-    
+
     {PTE5 , PWM_25, 6},
     {PTE6 , PWM_26, 6},
-        
+
     {NC   , NC    , 0}
 };
--- a/targets/hal/TARGET_Freescale/TARGET_KPSDK_MCUS/analogin_api.c	Tue Nov 17 14:45:12 2015 +0000
+++ b/targets/hal/TARGET_Freescale/TARGET_KPSDK_MCUS/analogin_api.c	Thu Nov 19 13:45:10 2015 +0000
@@ -57,7 +57,8 @@
     ADC_HAL_SetHwTriggerCmd(adc_addrs[instance], false); /* sw trigger */
     ADC_HAL_SetHwAverageCmd(adc_addrs[instance], true);
     ADC_HAL_SetHwAverageMode(adc_addrs[instance], kAdcHwAverageCountOf4);
-    ADC_HAL_SetChnMuxMode(adc_addrs[instance], kAdcChnMuxOfB); /* only B channels are avail */
+    ADC_HAL_SetChnMuxMode(adc_addrs[instance],
+        obj->adc & (1 << ADC_B_CHANNEL_SHIFT) ? kAdcChnMuxOfB : kAdcChnMuxOfA);
 
     pinmap_pinout(pin, PinMap_ADC);
 }