alien75 ha scritto:... i valori nelle uscite dei canali sono fluttuanti e non capisco perché.
I ground del circuito e dell'oscilloscopio sono collegati allo 0V dell'alimentazione?
Qualche tempo fa vedevi un 50Hz ovunque. A che cosa era dovuto?
alien75 ha scritto:... i valori nelle uscite dei canali sono fluttuanti e non capisco perché.
IsidoroKZ ha scritto:alien75 ha scritto:... i valori nelle uscite dei canali sono fluttuanti e non capisco perché.
I ground del circuito e dell'oscilloscopio sono collegati allo 0V dell'alimentazione?
Qualche tempo fa vedevi un 50Hz ovunque. A che cosa era dovuto?
#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()) {
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, 4500);
mcp.setChannelValue(MCP4728_CHANNEL_C, 1024);
mcp.setChannelValue(MCP4728_CHANNEL_D, 500);
Serial.println(" Fatto");
}
void loop(void)
{
O.setFrequency(MD_AD9833::CHAN_0, 1000);
O.setMode(MD_AD9833::MODE_SINE);
A.setFrequency(MD_AD9833::CHAN_0, 500);
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, 300);
D.setMode(MD_AD9833::MODE_SINE);
E.setFrequency(MD_AD9833::CHAN_0, 1500);
E.setMode(MD_AD9833::MODE_SINE);
}
Visitano il forum: Nessuno e 11 ospiti