Skip to content
Snippets Groups Projects
Commit 1139cbad authored by Martina Barreiro Guerra's avatar Martina Barreiro Guerra
Browse files

IMPETOM-ClÍnico

parent 3b59b9a5
No related branches found
No related tags found
No related merge requests found
/*
* Librerías
*/
#include <CD74HC4067.h> // Librería de los mux utilizados
#include <AD9833.h> // Librería del dds AD9833
/*
* Constantes y definiciones
*/
//DDS
#define minDDSfrecuency 29500 // 29,5kHz de frecuencia mínima para el DDS
#define maxDDSfrecuency 32000 // 32kHz de frecuencia máxima para el DDS
#define DDSFNCPin A2 //Pin digital para el seteo de la frecuencia del DDS
// Se utilizan el pin 11 y 13 para la comunicacion SPI del AD9833. El pin 11 corresponde al dat y el 13 al clk del integrado
// Enable mux de tensión
#define enableTension A4
// Enable mux de corriente
#define enableCorriente A5
// Pin para medida de tensión
#define pinMedida A0
//cantidad de muestras para cada modo
#define cMuestrasColocacion 50
#define cMuestrasReconstruccion 100
/*
* Variables Globales
*/
//Seteo los pines para el mux de tensión y corriente
// s0 s1 s2 s3
// | | | |
CD74HC4067 muxTension(2, 3, 4, 5); // creo el objeto CD74HC4067 para el mux de tensión
// s0 s1 s2 s3
// | | | |
CD74HC4067 muxCorriente(6, 7, 8, 9); // creo el objeto CD74HC4067 para el mux de corriente
//DDS
AD9833 gen(DDSFNCPin);// Genero el objeto DDS
//Variables para el control de cambio de modo de operación
boolean modoColocacion=true;//Utilizado para saber en que modo estoy trabajando colocación o reconstrucción
//Variable global para el seteo del a frecuencia del DDS
long int DDSfrecuencyRate = 30000; // Frecuencia de 30kHz
/*
* Funcion setup
*/
void setup() {
//Inicializamos las funciones del DDS
inicializarDDS();
//seteo el enable de corriente y deshabilito mux corriente
pinMode(enableCorriente,OUTPUT);
deshabilitarMuxDeCorriente();
//seteo el enable de tension y deshabilito mux tensión
pinMode(enableTension,OUTPUT);
deshabilitarMuxDeTension();
//Comiezo de la comunicación Serial
inicializarComSerial();
//Identificación del dispositivo Impetom a través del canal serial
identificarDispositivoImpetom();
}
/*
* Funcion loop
*/
void loop() {
//Recibo por el canal serial el modo de operación en el cual trabajará el dispositivo Impetom
cambioDeModoDeOperacion(adquirirModoDeOperacion());
//Ajuste de la frecuencia de operación del DDS a través del canal serial
ajustarFrecuenciaDDS(adquirirFrecuenciaDDS());//
//Adquisición de datos
if (modoColocacion){
adquirirDatos(cMuestrasColocacion);
}else{//modo normal
adquirirDatos(cMuestrasReconstruccion);
}
//Envío el valor de frecuencia utilizada por el dds durante la última adquisición de datos a través del canal serial
enviarDatos(DDSfrecuencyRate);
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment