« Projet DDS » : différence entre les versions
De Wiki_du_Réseau_des_Electroniciens_du_CNRS
Aller à la navigationAller à la recherche
Aucun résumé des modifications |
|||
Ligne 1 : | Ligne 1 : | ||
Version du 12 octobre 2024 à 11:33
Programme Python pour la liaison USB-Série : Pour charger les fréquences et les amplitudes des sorties RF j'ai utilisé Pyserial et Python 3.7
Ci-dessous le code Python éditer avec l'IDE Thonny ( pour les débutants comme moi c'est pas mal ;) !)
il suffit d'installer Python 3.7 puis d'importer la bibliothèque PySerial.
IMPORTANT : le code c pour transmettre et recevoir les données via l'UART ci-dessous un exemple:
void write_immediate() //AD9959
{
//frequency DDS0//
frequency_value_f1_DDS0 = temp[3]<<24|temp[2]<<16|temp[1]<<8|temp[0];
FTW0_DDS0 = frequency_value_f1_DDS0 * 4294967296 / 500000000; //Convert to command for DDS //ad9959
frequency_value_f2_DDS0 = temp[7]<<24|temp[6]<<16|temp[5]<<8|temp[4];
FTW1_DDS0 = frequency_value_f2_DDS0 * 4294967296 / 500000000; //Convert to command for DDS //ad9959
frequency_value_f3_DDS0 = temp[11]<<24|temp[10]<<16|temp[9]<<8|temp[8];
FTW2_DDS0 = frequency_value_f3_DDS0 * 4294967296 / 500000000; //Convert to command for DDS //ad9959
frequency_value_f4_DDS0 = temp[15]<<24|temp[14]<<16|temp[13]<<8|temp[12];
FTW3_DDS0 = frequency_value_f4_DDS0 * 4294967296 / 500000000; //Convert to command for DDS //ad9959
....
}
//*****************************************************************************
//
// The UART interrupt handler.
//
//*****************************************************************************
void UARTIntHandler(void)
{
uint32_t ui32Status;
ui32Status = UARTIntStatus(UART0_BASE, true);
UARTIntClear(UART0_BASE, ui32Status);
while(UARTCharsAvail(UART0_BASE)) //loop while there are chars
{
//send data to uC via USB/Uart for change one output frequency ( 4 octets)
temp[t++] = UART0_DR_R; //Read from buffer
if(t >...)
{
write_immediate();
t = 0; //Reset read length
}
}
}
Code Python: Fichier:Code python.pdf Ci-dessous Code Python avec l'interface graphique Fichier:Code python avec l'interface numérique.pdf