Skip to content

Commit dc249db

Browse files
committed
Add analog functions
1 parent 2620754 commit dc249db

File tree

1 file changed

+37
-0
lines changed

1 file changed

+37
-0
lines changed

cores/arduino/wiring_analog.cpp

+37
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
/*
2+
wiring_analog.c - analog input and output functions
3+
Part of Arduino - http://www.arduino.cc/
4+
5+
Copyright (c) 2018 Arduino SA
6+
7+
This library is free software; you can redistribute it and/or
8+
modify it under the terms of the GNU Lesser General Public
9+
License as published by the Free Software Foundation; either
10+
version 2.1 of the License, or (at your option) any later version.
11+
12+
This library is distributed in the hope that it will be useful,
13+
but WITHOUT ANY WARRANTY; without even the implied warranty of
14+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15+
Lesser General Public License for more details.
16+
17+
You should have received a copy of the GNU Lesser General
18+
Public License along with this library; if not, write to the
19+
Free Software Foundation, Inc., 59 Temple Place, Suite 330,
20+
Boston, MA 02111-1307 USA
21+
*/
22+
23+
#include "Arduino.h"
24+
#include "pins_arduino.h"
25+
26+
static int resolution = 10;
27+
28+
void analogWrite(pin_size_t pin, int val)
29+
{
30+
float percent = (float)val/(float)(1 << resolution);
31+
mbed::PwmOut((PinName)pin).write(percent);
32+
}
33+
34+
int analogRead(pin_size_t pin)
35+
{
36+
return mbed::AnalogIn((PinName)pin).read_u16();
37+
}

0 commit comments

Comments
 (0)