|
|
Ligne 1 : |
Ligne 1 : |
|
| |
|
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
| '''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:
| |
| <syntaxhighlight lang="c">
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
| 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
| |
| }
| |
| }
| |
| }
| |
|
| |
| </syntaxhighlight>
| |
|
| |
| Code Python: [[Fichier:code python.pdf]]
| |
| Ci-dessous Code Python avec l'interface graphique [[Fichier:code python avec l'interface numérique.pdf]]
| |
| [[Fichier:Interface tkinter.png|500px|thumb|left]]
| |