Vraag:
I2C implementeren naar analoog
Or Goshen
2009-11-11 05:38:21 UTC
view on stackexchange narkive permalink

Hoe kan ik (of misschien is er een IC die dat al doet) een bord implementeren waarvan de input I2C zou zijn en de output analoog voltage (0V - 5V)?

Uiteindelijk zou ik dat willen sluit er een paar aan op de IO-pinnen van een Arduino en creëer effectief digitale naar analoge uitgangen.

Vijf antwoorden:
spiffed
2009-11-11 18:01:09 UTC
view on stackexchange narkive permalink

Beschouw de Microchip TC1321 als een I2C digitaal naar analoog converter (DAC) met 10 bits resolutie (4,88 mV / stap), beschikbaar in SOIC8 (je kunt hebben een gemakkelijk te solderen adapterkaart nodig [bijv. sparkfun's of futurlec's) en werken vanaf 5 volt. Als je het goed vindt met slechts 8 bits (19,5mV / stap), overweeg dan de TC1320.

Beide chips zijn verkrijgbaar bij Mouser of Microchip Direct voor ongeveer $ 2.

Als je SPI kunt gebruiken in plaats van I2C, zijn je opties gemakkelijker, de MCP4821 en MCP4822 zijn enkele en dubbele SPI DAC-chips die in mooie PDIP8-pakketten worden geleverd. Opnieuw kosten ze ongeveer $ 2 op de gebruikelijke plaatsen (mouser, digikey, microchip direct, farnell).

Waarom plaatst u de eigenlijke URL's er niet onder, de hoofdtekst in de stijl van voetnoten?
@Amos, omdat de formatter URL's in vele formaten goed herkent, en het 'nieuwe gebruiker'-filter treft op count (links)> 1, ongeacht hun opmaak. Ik verloor de eerste dag een uitgebreid antwoord om dezelfde reden (ik heb het gepost en de foutmelding niet gezien).
Juist, ik had het niet gerealiseerd.
Het is een digitaal-naar-analoog-omzetter, niet analoog-naar-digitaal.
En je zou in staat moeten zijn om je bericht te bewerken en de links toe te voegen nu je een zekere reputatie hebt.
Post bewerkt om enkele links op te nemen - ook de kleine fouten gecorrigeerd.
Lou
2009-11-11 20:09:57 UTC
view on stackexchange narkive permalink

Afhankelijk van wat je rijdt, heb je als je een Arduino hebt al drie tot zes analoge uitgangen, aangezien je de functie AnalogWrite kunt gebruiken om de duty-cycle van de PWM-pinnen in te stellen. De frequentie is ongeveer 490 Hz, meer dan voldoende voor leds (nogmaals, het hangt af van uw toepassing). U kunt de waarde instellen van 0 tot 255, waardoor u een resolutie krijgt van (5v / 256 =) .020V.

U moet bepalen of 490 Hz voldoende is, maar PWM wordt gebruikt om analoge voltage voor veel toepassingen, en het kan de jouwe passen zonder extra onderdelen of programmering.

Je kunt ook overwegen om een ​​filter (condensator-weerstand netwerk) te gebruiken om de blokgolf glad te strijken. Het geeft je meer speelruimte in de applicaties die je kunt besturen, en passives zijn goedkoop, maar afhankelijk van je applicatie is het misschien niet eens nodig.

http://www.arduino.cc / en / Reference / AnalogWrite

Tim
2009-11-11 06:00:21 UTC
view on stackexchange narkive permalink

Je zou een op I2C gebaseerde digitaal naar analoog convertor (DAC) van een bepaald type nodig hebben, een snelle zoekopdracht leverde het volgende op:

http://www.sparkfun.com/commerce /product_info.php?products_id=8736

davr
2009-11-11 06:19:50 UTC
view on stackexchange narkive permalink

Voor de duidelijkheid, een AVR (de chip die in een Arduino wordt gebruikt) kan al 'analoge' spanningen produceren door PWM + een condensator te gebruiken om de golfvorm af te vlakken (condensator is in sommige gevallen zelfs niet nodig). Het heeft niet zo'n hoge resolutie als een speciale DAC-chip, maar het is goed genoeg voor veel behoeften.

Hristos
2009-11-11 06:03:05 UTC
view on stackexchange narkive permalink

Hier is een Wikipedia-artikel over digitale potentiometers. Deze digitale potten kunnen dienen als analoge uitgang op de Arduino. Het zou fungeren als een gewone potentiometer die alle spanningen van 0 - 5V doorloopt via seriële (of een soort) opdrachten. Als je I2C niet nodig had, kun je deze digitale pot van Parralax of deze chip van Jameco gebruiken. De enige I2C-chips die ik heb gezien zijn allemaal surface mount in plaats van through-hole, dit maakt het moeilijker om mee te werken en. Hier is de link naar alle I2C digitale potentiometers van Jameco. Ik hoop dat dit nuttig was en veel succes!

Digitale potten worden over het algemeen gebruikt om de versterking of verzwakking van een extern circuit in een paar discrete stappen in te stellen (256). Om er een gelijkspanning uit te krijgen, moet je deze op een spanningsbron aansluiten, maar het is echt niet de toepassing waarvoor ze bedoeld zijn. Een DAC daarentegen voert rechtstreeks een spanning uit en heeft over het algemeen veel meer stappen en meer nauwkeurigheid. Een DAC is waar deze poster naar op zoek is.


Deze Q&A is automatisch vertaald vanuit de Engelse taal.De originele inhoud is beschikbaar op stackexchange, waarvoor we bedanken voor de cc by-sa 2.0-licentie waaronder het wordt gedistribueerd.
Loading...