Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Revision 1:4d5a771fa495, committed 2020-10-07
- Comitter:
- pierreprovent
- Date:
- Wed Oct 07 13:03:58 2020 +0000
- Parent:
- 0:57304dca9808
- Commit message:
- Programme test pour CNA cours ELE118 Cnam
Changed in this revision
--- a/Save_USB.cpp Fri Sep 25 10:21:11 2020 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,31 +0,0 @@ -#include "mbed.h" -#include "USBHostMSD.h" - -Serial pc(USBTX,USBRX) ; - -void Sauve_USB(float *tab,int taille) -{ - USBHostMSD msd("usb"); - - pc.printf("Connectez la clef USB sur le connecteur prevu a cet effet\n"); // Waiting for USB connection - while(!msd.connect()) // try to connect a MSD device - { - } - pc.printf("Clef USB connectee ne pas debrancher\n"); - pc.printf("Ecriture des donnees sur la clef USB dans le fichier data.txt\n"); - FILE *fp = fopen("/usb/data.txt","w"); - if (fp != NULL) - { - // Ecriture en format texte éditable sous Notepad - /* for (int i = 0 ; i < taille; i++) - fprintf(fp,"%f\n", tab[i]); - fclose(fp); */ - - // Ecriture en binaire pour lecture avec Octave ou Matlab - fwrite(tab,sizeof(tab[0]),taille,fp); - fclose(fp); - pc.printf("Ecriture terminee, vous pouvez debrancher la clef USB\n"); - } - else - pc.printf("Impossible d'ouvrir le fichier data.txt\n"); -} \ No newline at end of file
--- a/USBHost.lib Fri Sep 25 10:21:11 2020 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -https://os.mbed.com/users/pierreprovent/code/USBHost/#77ca32e8e04e
--- a/main.cpp Fri Sep 25 10:21:11 2020 +0000 +++ b/main.cpp Wed Oct 07 13:03:58 2020 +0000 @@ -1,38 +1,17 @@ #include "mbed.h" -extern void Sauve_USB(float *,int ) ; -extern Serial pc ; +Serial pc(USBTX, USBRX); -#define FECH 20000 // Fréquence d'échantillonnage souhaitée - // Maximum 40 kHz -#define TAILLE_TAB (FECH/10) // Pour stocker 1/10 s du signal - // Donc fmin signal = 10 Hz - -Ticker acquisition_CAN ; -AnalogIn entree(PC_3); // A2 connecteur Arduino -DigitalIn button(USER_BUTTON); - -float tab[TAILLE_TAB] ; +AnalogIn Ve(PA_3); // CAN sur A0 connecteur Arduino +AnalogOut Vs(PA_5); // CNA sur D13 connecteur Arduino -void acquisition() { - static int i = 0 ; - tab[i] = 3.3f*entree.read(); // Conversion en volts - i++; - if (i == TAILLE_TAB) i = 0 ; -} - -int main(void) +int main() { - pc.printf("\033[2J"); // Sequence escape qui efface la console - pc.printf("Acquisition d'un signal sur broche PC_3(A2)\n"); - pc.printf("Et enregistrement sur clef USB\n"); - pc.printf("Frequence d'echantillonnage actuelle = %d Hz\n",FECH); - pc.printf("Veuillez connecter un signal sur cette broche \n"); - pc.printf("Appuyez sur le bouton USER de la carte pour demarrer l'acquisition\n"); - while (button.read() == 0) ; - acquisition_CAN.attach_us(&acquisition,1000000/FECH); - wait(0.2) ; // Attendre au moins 1/10 seconde pour remplir le buffer des échantillons prélevés sur PC_3 - acquisition_CAN.detach() ; // Stopper l'acquisition des échantillons - Sauve_USB(tab,TAILLE_TAB); - while(1) ; + pc.printf("Test du convertisseur numerique/analogique\n"); + pc.printf("Relier D13 (CNA) a A0 (CAN) du connecteur Arduino\n"); + Vs.write(0.5); + pc.printf("Valeur envoyee sur D13 = %f \n", 0.5); + pc.printf("Valeur lue sur A0 = %f \n", Ve.read()); + while(1) { + } }