
MCP3221-Library
与MCP3221 I2C ADC接口的库和驱动程序。包括通过移动平均线平滑,累积移动平均值和指数移动平均值
2
Github Watches
7
Github Forks
10
Github Stars
Welcome To: SW_MCP3221 Driver Library
Note: This can be used with any AVR/Arduino that needs to interface with hardware that is based on an MCP3221
Updated: 2017, July renamed to separate from the other library
Originally written as a simple interface this driver has been extended with a couple simple averaging methods, and makes taking readings very easy. This class is extended by the MiniLib class which uses this and a few other interfaces extensively!
Class Info
- Simple implementation with instancing (MCP3221 mcp3221(address,vref) for example)
- Feed it address and and measured VREF(I.E measured VDD into IC)
Method Info
- readI2CADC, takes a single reading from the MCP3221 which is in constant conversion mode by default(IIRC its always in this mode)
- calcMillivolts, calls readI2CADC and uses VREF value that was input during instance creation
- calcRollingAVG, Takes current raw adc reading and adds it to a storage array(default is 10 data points), th oldest data point is dropped and array is shifted to move with readings
- calcEMAVG, approximates a rolling average by using an ALPHA coefficient and a power of 2 POWER for division, only needs a current reading which is weighted by ALPHA is pass through
- updateVRef in case a class which inherits from this one can update the vref should it be necessary
Average and Smoothing Info
Quick list of Smoothing methods used in this driver
- Rolling/Moving average, uses an array to store data points, oldest is removed and current reading is added in as array is shifted to move with dataset
- Exponential moving average using power of 2 division(POWER) to avoid unnecessary float math, approximates a moving average while only using current data point
- Number of rolling average samples have been increased to 20 will wait to see if this is adequate or not.
License Info
MCP3221 Library by Ryan Edwards, Sparky's Widgets is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
相关推荐
Confidential guide on numerology and astrology, based of GG33 Public information
Take an adjectivised noun, and create images making it progressively more adjective!
Siri Shortcut Finder – your go-to place for discovering amazing Siri Shortcuts with ease
Reviews

user_H0BJAqy3
The MCP3221-Library by SparkysWidgets is a fantastic tool for interfacing with the MCP3221 ADC. The code is clean, well-documented, and easy to integrate into existing projects. I highly recommend it for anyone needing precise ADC functionality. Great job, SparkysWidgets! Check it out here: https://github.com/SparkysWidgets/MCP3221-Library