votre temps local: :: ()
heure officielle (en France) : ::(TZ:)
Heure UTC client: :: Offset client: s - delai: ms - - timeZone: Heure UTC: ::Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
fr:programmes_pour_communiquer_avec_le_dds [2016/03/04 10:24] fwiotte |
fr:programmes_pour_communiquer_avec_le_dds [2016/03/04 10:46] (Version actuelle) fwiotte |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | Interface avec un microcontrôleur TI: le MSP430 | + | ===Interface avec un microcontrôleur TI: le MSP430=== |
Exemple de programme en C écrit dans le microcontrôleur MSP430F169 | Exemple de programme en C écrit dans le microcontrôleur MSP430F169 | ||
Ligne 32: | Ligne 32: | ||
==Commentaires sur le programme== | ==Commentaires sur le programme== | ||
- | Pour initialiser le DDS on applique cette procédure : RESET-DATA SEND-IO_UPDATE. | + | Pour initialiser le DDS on applique cette procédure : RESET-DATA_SEND_to_BUFFER-IO_UPDATE. |
RESET du DDS (pin 3), on charge les données de chaque registre au travers du port SPI write_serial_port… Puis on réalise un I/O UPDATE pin 46 du DDS pour la validation et le transfert des données. Ce bout de programme permet de charger le channel 0 avec une fréquence de 80MHz et une amplitude par défaut FULL DAC. | RESET du DDS (pin 3), on charge les données de chaque registre au travers du port SPI write_serial_port… Puis on réalise un I/O UPDATE pin 46 du DDS pour la validation et le transfert des données. Ce bout de programme permet de charger le channel 0 avec une fréquence de 80MHz et une amplitude par défaut FULL DAC. | ||
Ligne 89: | Ligne 90: | ||
while (i < num_byte); | while (i < num_byte); | ||
} | } | ||
- | Interface avec un microcontrôleur ARM TI: le TM4C123GH6PM | + | ===Interface avec un microcontrôleur ARM TI: le TM4C123GH6PM=== |
Exemple de programme en C écrit dans le microcontrôleur ARM TM4C123GH6PM | Exemple de programme en C écrit dans le microcontrôleur ARM TM4C123GH6PM | ||
Ligne 99: | Ligne 100: | ||
la routine pour le chargement des données en mode SPI de l'ARM TM4C123GH6PM : | la routine pour le chargement des données en mode SPI de l'ARM TM4C123GH6PM : | ||
- | int i=0; | + | |
- | SSI0_DR_R = instruction; | + | int i=0; |
+ | SSI0_DR_R = instruction; | ||
while( num_byte ) | while( num_byte ) | ||
{ | { | ||
Ligne 127: | Ligne 129: | ||
SSIEnable(SSI0_BASE); // Enable the SSI | SSIEnable(SSI0_BASE); // Enable the SSI | ||
| | ||
- | Exemple d'initialisation d'un PORT sur l'ARM TM4C123GH6PM | + | Exemple d'initialisation d'un PORT sur l'ARM TM4C123GH6PM: |
Ligne 140: | Ligne 142: | ||
GPIO_PORTB_AFSEL_R &= ~0xFF; // 6) disable alt funct on PB0-PB7 | GPIO_PORTB_AFSEL_R &= ~0xFF; // 6) disable alt funct on PB0-PB7 | ||
GPIO_PORTB_DEN_R |= 0xFF; // 7) enable digital I/O on PB0-PB7 | GPIO_PORTB_DEN_R |= 0xFF; // 7) enable digital I/O on PB0-PB7 | ||
+ | |||
Exemple d'initialisation d'un PORT pour la communication série USB-UART0 sur l'ARM TM4C123GH6PM: | Exemple d'initialisation d'un PORT pour la communication série USB-UART0 sur l'ARM TM4C123GH6PM: | ||
Ligne 151: | Ligne 154: | ||
UARTConfigSetExpClk(UART0_BASE, SysCtlClockGet(), 9600, | UARTConfigSetExpClk(UART0_BASE, SysCtlClockGet(), 9600, | ||
(UART_CONFIG_WLEN_8 | UART_CONFIG_STOP_ONE | UART_CONFIG_PAR_NONE)); | (UART_CONFIG_WLEN_8 | UART_CONFIG_STOP_ONE | UART_CONFIG_PAR_NONE)); | ||
- | Exemple de déclaration et d'initialisation des registres mot de fréquences: | + | |
- | + | ||
+ | Exemple de déclaration et d'initialisation des registres mot de fréquences: | ||
//AD9852// | //AD9852// | ||
int FTW0_ADRESS = 0x02; | int FTW0_ADRESS = 0x02; |