Carico sulle uscite, impedenza d'ingresso, uscite flottanti, masse che vanno messe in comune, alimentazioni con una resistenza serie, ma che roba è?
Arduino è: collego due fili, il led lampeggia => sono bravo.

IlGuru ha scritto:queste sono tutte cose che nel video del canale youtube "Tutti elettronici senza alcuna competenza" non si vedono quindi perché farle?
#include <Adafruit_MCP4728.h>
#include <Wire.h>
Adafruit_MCP4728 mcp;
void setup(void) {
Serial.begin(115200);
while (!Serial)
delay(10); // will pause Zero, Leonardo, etc until serial console opens
Serial.println("Adafruit MCP4728 test!");
// Try to initialize!
if (!mcp.begin(0x60)) {
Serial.println("Failed to find MCP4728 chip");
while (1) {
delay(10);
}
}
Serial.print("Imposto i canali...");
mcp.setChannelValue(MCP4728_CHANNEL_A, 500);
mcp.setChannelValue(MCP4728_CHANNEL_B, 500);
mcp.setChannelValue(MCP4728_CHANNEL_C, 1024);
mcp.setChannelValue(MCP4728_CHANNEL_D, 200);
Serial.println(" Fatto");
}
void loop() { delay(1000); }
Dalle misure su CHA, CHB, CHC e CHD risultano le tensioni da programma: CHA 580mV, CHB 580mV, CHC 1200mV, CHD 2300mV tutti a carico con la resistenza da 200 ohm + il trimmer.




- Codice: Seleziona tutto
mcp.setChannelValue(MCP4728_CHANNEL_D, [b]200[/b]);
.....
Dalle misure su CHA, CHB, CHC e CHD risultano le tensioni da programma: CHA 580mV, CHB 580mV, CHC 1200mV, CHD 2300mV
___ 5V
|
.--.
| |
| | R1 = 620 ohm
| |
'--'
|
PIN 6 ------------------
| |
.--. |
| |<--- R2 = 5k ohm variabile
| |
| |
'--'
|
.--.
| |
| | R3 = 620 ohm
| |
'--'
|
--- GND
#include <MD_AD9833.h>
#include <SPI.h>
#include <Adafruit_MCP4728.h>
#include <Wire.h>
Adafruit_MCP4728 mcp;
int pinLed = 3;
// Pins for SPI comm with the AD9833 IC
#define DATA 11 ///< SPI Data pin number
#define CLK 7 ///< SPI Clock pin number
#define FSYNC 6 //(FSYNC in AD9833 usage)
#define FSYNC1 5
#define FSYNC2 3
#define FSYNC3 2
#define FSYNC4 1
#define FSYNC5 0
MD_AD9833 O(DATA, CLK, FSYNC);
MD_AD9833 A(DATA, CLK, FSYNC1);
MD_AD9833 B(DATA, CLK, FSYNC2);
MD_AD9833 C(DATA, CLK, FSYNC3);
MD_AD9833 D(DATA, CLK, FSYNC4);
MD_AD9833 E(DATA, CLK, FSYNC5);
void setup(void)
{
O.begin();
A.begin();
B.begin();
C.begin();
D.begin();
E.begin();
Serial.begin(115200);
while (!Serial)
delay(10); // will pause Zero, Leonardo, etc until serial console opens
Serial.println("Adafruit MCP4728 test!");
// Try to initialize!
//mcp.begin();
if (!mcp.begin(0x60)) {
Serial.println("Failed to find MCP4728 chip");
while (1) {
delay(10);
}
}
Serial.print("Imposto i canali...");
mcp.setChannelValue(MCP4728_CHANNEL_A, 2500);
mcp.setChannelValue(MCP4728_CHANNEL_B, 404);
mcp.setChannelValue(MCP4728_CHANNEL_C, 1024);
mcp.setChannelValue(MCP4728_CHANNEL_D, 500);
Serial.println(" Fatto");
}
void loop(void)
{
O.setFrequency(MD_AD9833::CHAN_0, 500);
O.setMode(MD_AD9833::MODE_SINE);
A.setFrequency(MD_AD9833::CHAN_0, 404);
A.setMode(MD_AD9833::MODE_SINE);
B.setFrequency(MD_AD9833::CHAN_0, 500);
B.setMode(MD_AD9833::MODE_SINE);
C.setFrequency(MD_AD9833::CHAN_0, 5000);
C.setMode(MD_AD9833::MODE_SINE);
D.setFrequency(MD_AD9833::CHAN_0, 1000);
D.setMode(MD_AD9833::MODE_SINE);
E.setFrequency(MD_AD9833::CHAN_0, 1500);
E.setMode(MD_AD9833::MODE_SINE);
}
alien75 ha scritto:e rilevo il segnale allegato.
boiler ha scritto:alien75 ha scritto:e rilevo il segnale allegato.
Dove lo rilevi?
Misura con un multimetro la tensione tra pin 6 e GND mentre provi diverse posizioni del potenziometro.
Cosa misuri?
Boiler
POT a MAX = 4,36V
POT in posiz. CENTRALE = 2,60V
POT a MIN = 0,38V
GioArca67 ha scritto:Ma perché 6 AD9833? Servono proprio?
Non te ne basta uno al momento?
Rendi le cose il più semplici possibili, poi aggiungi.
Visitano il forum: Nessuno e 4 ospiti