File tree Expand file tree Collapse file tree 2 files changed +9
-11
lines changed
libraries/mbed/targets/hal/TARGET_Freescale/TARGET_KPSDK_MCUS/TARGET_K64F Expand file tree Collapse file tree 2 files changed +9
-11
lines changed Original file line number Diff line number Diff line change @@ -227,6 +227,8 @@ typedef enum {
227
227
A4 = PTB1 ,
228
228
A5 = PTB0 ,
229
229
230
+ DAC0_OUT = 0xFEFE , /* DAC does not have Pin Name in RM */
231
+
230
232
// Not connected
231
233
NC = (int )0xFFFFFFFF
232
234
} PinName ;
Original file line number Diff line number Diff line change 22
22
#define RANGE_12BIT 0xFFF
23
23
24
24
const PinMap PinMap_DAC [] = {
25
- {PTE23 , DAC_0 , 0 },
26
- {NC , NC , 0 }
25
+ {DAC0_OUT , DAC_0 , 0 },
26
+ {NC , NC , 0 }
27
27
};
28
28
29
29
void analogout_init (dac_t * obj , PinName pin ) {
@@ -32,20 +32,16 @@ void analogout_init(dac_t *obj, PinName pin) {
32
32
error ("DAC pin mapping failed" );
33
33
}
34
34
35
- SIM -> SCGC6 |= SIM_SCGC6_DAC0_MASK ;
36
-
37
- uint32_t port = (uint32_t )pin >> GPIO_PORT_SHIFT ;
38
- SIM -> SCGC5 |= 1 << (SIM_SCGC5_PORTA_SHIFT + port );
35
+ SIM -> SCGC2 |= SIM_SCGC2_DAC0_MASK ;
39
36
40
37
DAC0 -> DAT [obj -> dac ].DATH = 0 ;
41
38
DAC0 -> DAT [obj -> dac ].DATL = 0 ;
42
39
43
- DAC0 -> C1 = DAC_C1_DACBFMD_MASK ; // One-Time Scan Mode
44
-
45
- DAC0 -> C0 = DAC_C0_DACEN_MASK // Enable
46
- | DAC_C0_DACSWTRG_MASK ; // Software Trigger
40
+ DAC0 -> C1 = DAC_C1_DACBFMD (2 ); // One-Time Scan Mode
47
41
48
- pinmap_pinout (pin , PinMap_DAC );
42
+ DAC0 -> C0 = DAC_C0_DACEN_MASK // Enable
43
+ | DAC_C0_DACSWTRG_MASK // Software Trigger
44
+ | DAC_C0_DACRFS_MASK ; // VDDA selected
49
45
50
46
analogout_write_u16 (obj , 0 );
51
47
}
You can’t perform that action at this time.
0 commit comments