Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mcauser/microbit-am2320
MicroPython for micro:bit library for the Aosong AM2320 temperature and humidity sensor
https://github.com/mcauser/microbit-am2320
am2320 dht humidity microbit microbit-scripts micropython temperature
Last synced: about 2 months ago
JSON representation
MicroPython for micro:bit library for the Aosong AM2320 temperature and humidity sensor
- Host: GitHub
- URL: https://github.com/mcauser/microbit-am2320
- Owner: mcauser
- License: mit
- Created: 2018-02-16T10:17:17.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2018-08-07T15:43:47.000Z (over 6 years ago)
- Last Synced: 2024-04-18T18:00:41.596Z (9 months ago)
- Topics: am2320, dht, humidity, microbit, microbit-scripts, micropython, temperature
- Language: Python
- Size: 352 KB
- Stars: 0
- Watchers: 3
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# BBC micro:bit MicroPython AM2320 I2C
A micro:bit MicroPython library for interfacing with an [Aosong AM2320](http://www.aosong.com/cn/products/details.asp?id=152) temperature and humidity sensor over I2C.
This library focuses on using the I2C interface. The sensor also supports a 1-wire interface, available when pin 4 is connected to GND.
![demo](docs/demo.jpg)
# Examples
In these examples, I am using pins 13 and 15 for [I2C](http://microbit-micropython.readthedocs.io/en/latest/i2c.html) clock and data, however, you can use any pin. Pins 13 and 15 are normally used for SPI.
My Kitronik edge connector breakout board does not have pin headers soldered for the [standard I2C pins](http://microbit-micropython.readthedocs.io/en/latest/pin.html) 19 and 20 (where you can find the accelerometer and compass), otherwise I'd be using them.Basic measurement
```python
from microbit import *
import am2320i2c.init(sda=pin15, scl=pin13)
sensor = am2320.AM2320(i2c)sensor.measure()
print(sensor.temperature())
print(sensor.humidity())
```Press Button A to measure, Button B to exit
```python
from microbit import *
import am2320i2c.init(sda=pin15, scl=pin13)
sensor = am2320.AM2320(i2c)while True:
if button_a.is_pressed():
try:
sensor.measure()
display.scroll(str(sensor.temperature())+"c", 50)
except OSError:
display.scroll("Err")
if button_b.is_pressed():
display.scroll("End")
break
```Continuous measurement
```python
from microbit import *
import am2320i2c.init(sda=pin15, scl=pin13)
sensor = am2320.AM2320(i2c)while True:
try:
sensor.measure()
print(sensor.temperature())
print(sensor.humidity())
sleep(4000)
except OSError:
print("Error")
sleep(1000)
```## Links
* [BBC micro:bit](http://microbit.org/)
* [MicroPython for the BBC micro:bit](https://github.com/bbcmicrobit/micropython)
* [Kitronik Edge Connector Breakout Board](https://www.https://www.kitronik.co.uk/5601b-edge-connector-breakout-board-for-bbc-microbit-pre-built.html.co.uk/5601b-edge-connector-breakout-board-for-bbc-microbit-pre-built.html)
* [micropython.org](http://micropython.org)
* [micro:bit on the MicroPython forum](https://forum.micropython.org/viewforum.php?f=17)
* [MicroPython AM2320](https://github.com/mcauser/micropython-am2320)## License
Licensed under the [MIT License](http://opensource.org/licenses/MIT).