Mercurial > louis > kiibohd-controller
annotate Scan/ADCTest/scan_loop.c @ 308:ab4515606277
Fix whitespace
Use a consistent standard - Tabs in front for indenting, spaces after for anything else. This way everything stays nice and lined up while also letting users change there prefered indent level. Most of the new files from Haata where already in this format.
author | Rowan Decker <Smasher816@gmail.com> |
---|---|
date | Sun, 08 Mar 2015 18:40:01 -0700 |
parents | 9afed592bcb5 |
children |
rev | line source |
---|---|
132
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
1 /* Copyright (C) 2014 by Jacob Alexander |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
2 * |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
3 * Permission is hereby granted, free of charge, to any person obtaining a copy |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
4 * of this software and associated documentation files (the "Software"), to deal |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
5 * in the Software without restriction, including without limitation the rights |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
6 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
7 * copies of the Software, and to permit persons to whom the Software is |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
8 * furnished to do so, subject to the following conditions: |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
9 * |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
10 * The above copyright notice and this permission notice shall be included in |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
11 * all copies or substantial portions of the Software. |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
12 * |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
13 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
14 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
15 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
16 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
17 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
18 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
19 * THE SOFTWARE. |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
20 */ |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
21 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
22 // ----- Includes ----- |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
23 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
24 // Compiler Includes |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
25 #include <Lib/ScanLib.h> |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
26 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
27 // Project Includes |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
28 #include <cli.h> |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
29 #include <led.h> |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
30 #include <print.h> |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
31 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
32 // Local Includes |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
33 #include "scan_loop.h" |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
34 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
35 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
36 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
37 // ----- Defines ----- |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
38 |
135
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
39 // ADC Clock divisor settings (F_BUS == 48000000) |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
40 #define ADC_CFG1_6MHZ ADC_CFG1_ADIV(2) + ADC_CFG1_ADICLK(1) |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
41 #define ADC_CFG1_12MHZ ADC_CFG1_ADIV(1) + ADC_CFG1_ADICLK(1) |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
42 #define ADC_CFG1_24MHZ ADC_CFG1_ADIV(0) + ADC_CFG1_ADICLK(1) |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
43 |
132
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
44 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
45 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
46 // ----- Macros ----- |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
47 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
48 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
49 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
50 // ----- Function Declarations ----- |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
51 |
135
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
52 void cliFunc_adc ( char* args ); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
53 void cliFunc_adcInit( char* args ); |
133
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
54 void cliFunc_dac ( char* args ); |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
55 void cliFunc_dacVref( char* args ); |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
56 void cliFunc_echo ( char* args ); |
132
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
57 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
58 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
59 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
60 // ----- Variables ----- |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
61 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
62 // Buffer used to inform the macro processing module which keys have been detected as pressed |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
63 volatile uint8_t KeyIndex_Buffer[KEYBOARD_BUFFER]; |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
64 volatile uint8_t KeyIndex_BufferUsed; |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
65 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
66 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
67 // Scan Module command dictionary |
192
6ac92b8614c0
Fixing RAM calculator and reduced actual SRAM usage
Jacob Alexander <haata@kiibohd.com>
parents:
137
diff
changeset
|
68 char scanCLIDictName[] = "ADC Test Module Commands"; |
6ac92b8614c0
Fixing RAM calculator and reduced actual SRAM usage
Jacob Alexander <haata@kiibohd.com>
parents:
137
diff
changeset
|
69 const CLIDictItem scanCLIDict[] = { |
263
9afed592bcb5
Preparing for mk20dx256vlh7
Jacob Alexander <haata@kiibohd.com>
parents:
195
diff
changeset
|
70 #if defined(_mk20dx128_) || defined(_mk20dx256_) || defined(_mk20dx256vlh7_) // ARM |
137
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
71 { "adc", "Read the specified number of values from the ADC at the given pin: <pin> [# of reads]" |
308 | 72 NL "\t\t See \033[35mLib/pin_map.teensy3\033[0m for ADC0 channel number.", cliFunc_adc }, |
137
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
73 { "adcInit", "Intialize/calibrate ADC: <ADC Resolution> <Vref> <Hardware averaging samples>" |
308 | 74 NL "\t\tADC Resolution -> 8, 10, 12, 16 (bit)" |
75 NL "\t\t Vref -> 0 (1.2 V), 1 (External)" | |
76 NL "\t\tHw Avg Samples -> 0 (disabled), 4, 8, 16, 32", cliFunc_adcInit }, | |
137
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
77 #endif |
263
9afed592bcb5
Preparing for mk20dx256vlh7
Jacob Alexander <haata@kiibohd.com>
parents:
195
diff
changeset
|
78 #if defined(_mk20dx256_) || defined(_mk20dx256vlh7_) // DAC is only supported on Teensy 3.1 |
133
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
79 { "dac", "Set DAC output value, from 0 to 4095 (1/4096 Vref to Vref).", cliFunc_dac }, |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
80 { "dacVref", "Set DAC Vref. 0 is 1.2V. 1 is 3.3V.", cliFunc_dacVref }, |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
81 #endif |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
82 { "echo", "Example command, echos the arguments.", cliFunc_echo }, |
132
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
83 { 0, 0, 0 } // Null entry for dictionary end |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
84 }; |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
85 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
86 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
87 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
88 // ----- Functions ----- |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
89 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
90 // Setup |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
91 inline void Scan_setup() |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
92 #if defined(_at90usb162_) || defined(_atmega32u4_) || defined(_at90usb646_) || defined(_at90usb1286_) // AVR |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
93 { |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
94 // Register Scan CLI dictionary |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
95 CLI_registerDictionary( scanCLIDict, scanCLIDictName ); |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
96 } |
263
9afed592bcb5
Preparing for mk20dx256vlh7
Jacob Alexander <haata@kiibohd.com>
parents:
195
diff
changeset
|
97 #elif defined(_mk20dx128_) || defined(_mk20dx256_) || defined(_mk20dx256vlh7_) // ARM |
132
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
98 { |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
99 // Register Scan CLI dictionary |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
100 CLI_registerDictionary( scanCLIDict, scanCLIDictName ); |
133
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
101 |
135
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
102 // ADC Setup |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
103 VREF_TRM = 0x60; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
104 VREF_SC = 0xE1; // Enable 1.2V Vref |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
105 |
263
9afed592bcb5
Preparing for mk20dx256vlh7
Jacob Alexander <haata@kiibohd.com>
parents:
195
diff
changeset
|
106 #if defined(_mk20dx256_) || defined(_mk20dx256vlh7_) // DAC is only supported on Teensy 3.1 |
133
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
107 // DAC Setup |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
108 SIM_SCGC2 |= SIM_SCGC2_DAC0; |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
109 DAC0_C0 = DAC_C0_DACEN | DAC_C0_DACRFS; // 3.3V VDDA is DACREF_2 |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
110 #endif |
132
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
111 } |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
112 #endif |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
113 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
114 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
115 // Main Detection Loop |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
116 inline uint8_t Scan_loop() |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
117 { |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
118 return 0; |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
119 } |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
120 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
121 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
122 // Signal KeyIndex_Buffer that it has been properly read |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
123 void Scan_finishedWithBuffer( uint8_t sentKeys ) |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
124 { |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
125 } |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
126 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
127 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
128 // Signal that the keys have been properly sent over USB |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
129 void Scan_finishedWithUSBBuffer( uint8_t sentKeys ) |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
130 { |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
131 } |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
132 |
135
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
133 |
132
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
134 // Reset Keyboard |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
135 void Scan_resetKeyboard() |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
136 { |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
137 } |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
138 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
139 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
140 // ----- CLI Command Functions ----- |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
141 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
142 // XXX Just an example command showing how to parse arguments (more complex than generally needed) |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
143 void cliFunc_echo( char* args ) |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
144 { |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
145 char* curArgs; |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
146 char* arg1Ptr; |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
147 char* arg2Ptr = args; |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
148 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
149 // Parse args until a \0 is found |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
150 while ( 1 ) |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
151 { |
137
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
152 print( NL ); // No \r\n by default after the command is entered |
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
153 |
132
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
154 curArgs = arg2Ptr; // Use the previous 2nd arg pointer to separate the next arg from the list |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
155 CLI_argumentIsolation( curArgs, &arg1Ptr, &arg2Ptr ); |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
156 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
157 // Stop processing args if no more are found |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
158 if ( *arg1Ptr == '\0' ) |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
159 break; |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
160 |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
161 // Print out the arg |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
162 dPrint( arg1Ptr ); |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
163 } |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
164 } |
e08d7b586ea3
Adding analog.c lib from teensyduino.
Jacob Alexander <haata@kiibohd.com>
parents:
diff
changeset
|
165 |
135
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
166 void cliFunc_adc( char* args ) |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
167 #if defined(_at90usb162_) || defined(_atmega32u4_) || defined(_at90usb646_) || defined(_at90usb1286_) // AVR |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
168 { |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
169 } |
263
9afed592bcb5
Preparing for mk20dx256vlh7
Jacob Alexander <haata@kiibohd.com>
parents:
195
diff
changeset
|
170 #elif defined(_mk20dx128_) || defined(_mk20dx256_) || defined(_mk20dx256vlh7_) // ARM |
135
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
171 { |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
172 // Parse code from argument |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
173 // NOTE: Only first argument is used |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
174 char* arg1Ptr; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
175 char* arg2Ptr; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
176 CLI_argumentIsolation( args, &arg1Ptr, &arg2Ptr ); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
177 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
178 // Set the ADC Channel |
195
58cfcb7bac88
Changing decToInt to numToInt (adds support for Hex number interpreter)
Jacob Alexander <haata@kiibohd.com>
parents:
192
diff
changeset
|
179 uint8_t channel = numToInt( arg1Ptr ); |
135
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
180 __disable_irq(); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
181 ADC0_SC1A = channel; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
182 __enable_irq(); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
183 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
184 // Number of ADC samples to display |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
185 CLI_argumentIsolation( arg2Ptr, &arg1Ptr, &arg2Ptr ); |
137
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
186 |
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
187 int displayedADC = 1; // Default to 1 read |
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
188 if ( arg1Ptr ) // If there is an argument, use that instead |
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
189 { |
195
58cfcb7bac88
Changing decToInt to numToInt (adds support for Hex number interpreter)
Jacob Alexander <haata@kiibohd.com>
parents:
192
diff
changeset
|
190 displayedADC = numToInt( arg1Ptr ); |
137
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
191 } |
135
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
192 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
193 // Poll ADC until it gets a value, making sure to serve interrupts on each attempt |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
194 while ( displayedADC > 0 ) |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
195 { |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
196 __disable_irq(); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
197 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
198 // ADC Sample is ready |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
199 if ( (ADC0_SC1A & ADC_SC1_COCO) ) |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
200 { |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
201 int result = ADC0_RA; |
137
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
202 print( NL ); |
135
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
203 printInt32( result ); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
204 displayedADC--; |
137
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
205 |
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
206 // Prepare for another read |
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
207 if ( displayedADC > 0 ) |
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
208 { |
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
209 ADC0_SC1A = channel; |
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
210 } |
135
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
211 } |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
212 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
213 __enable_irq(); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
214 yield(); // Make sure interrupts actually get serviced |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
215 } |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
216 } |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
217 #endif |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
218 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
219 void cliFunc_adcInit( char* args ) |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
220 #if defined(_at90usb162_) || defined(_atmega32u4_) || defined(_at90usb646_) || defined(_at90usb1286_) // AVR |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
221 { |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
222 } |
263
9afed592bcb5
Preparing for mk20dx256vlh7
Jacob Alexander <haata@kiibohd.com>
parents:
195
diff
changeset
|
223 #elif defined(_mk20dx128_) || defined(_mk20dx256_) || defined(_mk20dx256vlh7_) // ARM |
135
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
224 { |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
225 // Parse code from argument |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
226 // NOTE: Only first argument is used |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
227 char* arg1Ptr; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
228 char* arg2Ptr; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
229 CLI_argumentIsolation( args, &arg1Ptr, &arg2Ptr ); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
230 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
231 // Make sure calibration has stopped |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
232 ADC0_SC3 = 0; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
233 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
234 // Select bit resolution |
195
58cfcb7bac88
Changing decToInt to numToInt (adds support for Hex number interpreter)
Jacob Alexander <haata@kiibohd.com>
parents:
192
diff
changeset
|
235 int bitResolution = numToInt( arg1Ptr ); |
135
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
236 switch ( bitResolution ) |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
237 { |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
238 case 8: // 8-bit |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
239 ADC0_CFG1 = ADC_CFG1_24MHZ + ADC_CFG1_MODE(0); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
240 ADC0_CFG2 = ADC_CFG2_MUXSEL + ADC_CFG2_ADLSTS(3); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
241 break; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
242 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
243 case 10: // 10-bit |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
244 ADC0_CFG1 = ADC_CFG1_12MHZ + ADC_CFG1_MODE(2) + ADC_CFG1_ADLSMP; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
245 ADC0_CFG2 = ADC_CFG2_MUXSEL + ADC_CFG2_ADLSTS(3); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
246 break; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
247 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
248 case 12: // 12-bit |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
249 ADC0_CFG1 = ADC_CFG1_12MHZ + ADC_CFG1_MODE(1) + ADC_CFG1_ADLSMP; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
250 ADC0_CFG2 = ADC_CFG2_MUXSEL + ADC_CFG2_ADLSTS(2); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
251 break; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
252 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
253 case 16: // 16-bit |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
254 ADC0_CFG1 = ADC_CFG1_12MHZ + ADC_CFG1_MODE(3) + ADC_CFG1_ADLSMP; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
255 ADC0_CFG2 = ADC_CFG2_MUXSEL + ADC_CFG2_ADLSTS(2); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
256 break; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
257 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
258 default: return; // Do nothing, invalid arg |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
259 } |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
260 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
261 // Select Vref |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
262 CLI_argumentIsolation( arg2Ptr, &arg1Ptr, &arg2Ptr ); |
195
58cfcb7bac88
Changing decToInt to numToInt (adds support for Hex number interpreter)
Jacob Alexander <haata@kiibohd.com>
parents:
192
diff
changeset
|
263 int vRef = numToInt( arg1Ptr ); |
135
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
264 switch ( vRef ) |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
265 { |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
266 case 0: // 1.2V internal Vref |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
267 ADC0_SC2 = ADC_SC2_REFSEL(1); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
268 break; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
269 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
270 case 1: // Vcc/Ext Vref |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
271 ADC0_SC2 = ADC_SC2_REFSEL(0); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
272 break; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
273 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
274 default: return; // Do nothing, invalid arg |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
275 } |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
276 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
277 // Hardware averaging (and start calibration) |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
278 CLI_argumentIsolation( arg2Ptr, &arg1Ptr, &arg2Ptr ); |
195
58cfcb7bac88
Changing decToInt to numToInt (adds support for Hex number interpreter)
Jacob Alexander <haata@kiibohd.com>
parents:
192
diff
changeset
|
279 int hardwareAvg = numToInt( arg1Ptr ); |
135
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
280 switch ( hardwareAvg ) |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
281 { |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
282 case 0: // No hardware averaging |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
283 ADC0_SC3 = ADC_SC3_CAL; // Just start calibration |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
284 break; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
285 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
286 case 4: // 4 sample averaging |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
287 ADC0_SC3 = ADC_SC3_CAL + ADC_SC3_AVGE + ADC_SC3_AVGS(0); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
288 break; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
289 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
290 case 8: // 8 sample averaging |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
291 ADC0_SC3 = ADC_SC3_CAL + ADC_SC3_AVGE + ADC_SC3_AVGS(1); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
292 break; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
293 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
294 case 16: // 16 sample averaging |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
295 ADC0_SC3 = ADC_SC3_CAL + ADC_SC3_AVGE + ADC_SC3_AVGS(2); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
296 break; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
297 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
298 case 32: // 32 sample averaging |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
299 ADC0_SC3 = ADC_SC3_CAL + ADC_SC3_AVGE + ADC_SC3_AVGS(3); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
300 break; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
301 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
302 default: return; // Do nothing, invalid arg |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
303 } |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
304 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
305 // Wait for calibration |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
306 while ( ADC0_SC3 & ADC_SC3_CAL ); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
307 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
308 // Set calibration |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
309 uint16_t sum; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
310 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
311 // XXX Why is PJRC doing this? Is the self-calibration not good enough? -HaaTa |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
312 // ADC Plus-Side Gain Register |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
313 __disable_irq(); // Disable interrupts |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
314 sum = ADC0_CLPS + ADC0_CLP4 + ADC0_CLP3 + ADC0_CLP2 + ADC0_CLP1 + ADC0_CLP0; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
315 sum = (sum / 2) | 0x8000; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
316 ADC0_PG = sum; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
317 |
137
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
318 print( NL ); |
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
319 info_msg("Calibration ADC0_PG (Plus-Side Gain Register) set to: "); |
135
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
320 printInt16( sum ); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
321 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
322 // ADC Minus-Side Gain Register |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
323 // XXX I don't think this is necessary when doing single-ended (as opposed to differential) -HaaTa |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
324 // K20P64M72SF1RM.pdf 31.3.10 pg. 666 |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
325 sum = ADC0_CLMS + ADC0_CLM4 + ADC0_CLM3 + ADC0_CLM2 + ADC0_CLM1 + ADC0_CLM0; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
326 sum = (sum / 2) | 0x8000; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
327 ADC0_MG = sum; |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
328 |
137
c12b8cfca6a5
ADC0 is now working on Teensy 3.1.
Jacob Alexander <haata@kiibohd.com>
parents:
135
diff
changeset
|
329 print( NL ); |
135
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
330 info_msg("Calibration ADC0_MG (Minus-Side Gain Register) set to: "); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
331 printInt16( sum ); |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
332 __enable_irq(); // Re-enable interrupts |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
333 } |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
334 #endif |
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
335 |
133
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
336 void cliFunc_dac( char* args ) |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
337 { |
263
9afed592bcb5
Preparing for mk20dx256vlh7
Jacob Alexander <haata@kiibohd.com>
parents:
195
diff
changeset
|
338 #if defined(_mk20dx256_) || defined(_mk20dx256vlh7_) // DAC is only supported on Teensy 3.1 |
133
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
339 // Parse code from argument |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
340 // NOTE: Only first argument is used |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
341 char* arg1Ptr; |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
342 char* arg2Ptr; |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
343 CLI_argumentIsolation( args, &arg1Ptr, &arg2Ptr ); |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
344 |
195
58cfcb7bac88
Changing decToInt to numToInt (adds support for Hex number interpreter)
Jacob Alexander <haata@kiibohd.com>
parents:
192
diff
changeset
|
345 int dacOut = numToInt( arg1Ptr ); |
133
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
346 |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
347 // Make sure the value is between 0 and 4096, otherwise ignore |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
348 if ( dacOut >= 0 && dacOut <= 4095 ) |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
349 { |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
350 *(int16_t *) &(DAC0_DAT0L) = dacOut; |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
351 } |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
352 #endif |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
353 } |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
354 |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
355 void cliFunc_dacVref( char* args ) |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
356 { |
263
9afed592bcb5
Preparing for mk20dx256vlh7
Jacob Alexander <haata@kiibohd.com>
parents:
195
diff
changeset
|
357 #if defined(_mk20dx256_) || defined(_mk20dx256vlh7_) // DAC is only supported on Teensy 3.1 |
133
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
358 // Parse code from argument |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
359 // NOTE: Only first argument is used |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
360 char* arg1Ptr; |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
361 char* arg2Ptr; |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
362 CLI_argumentIsolation( args, &arg1Ptr, &arg2Ptr ); |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
363 |
195
58cfcb7bac88
Changing decToInt to numToInt (adds support for Hex number interpreter)
Jacob Alexander <haata@kiibohd.com>
parents:
192
diff
changeset
|
364 switch ( numToInt( arg1Ptr ) ) |
133
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
365 { |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
366 case 0: |
135
9b98d431312b
Adding initial code for ADC1 on Teensy 3.1 (and 3.0).
Jacob Alexander <haata@kiibohd.com>
parents:
133
diff
changeset
|
367 DAC0_C0 = DAC_C0_DACEN; // 1.2V Vref is DACREF_1 |
133
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
368 break; |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
369 case 1: |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
370 DAC0_C0 = DAC_C0_DACEN | DAC_C0_DACRFS; // 3.3V VDDA is DACREF_2 |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
371 break; |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
372 } |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
373 #endif |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
374 } |
945565653607
ADCTest DAC support for Teensy 3.1
Jacob Alexander <haata@kiibohd.com>
parents:
132
diff
changeset
|
375 |