Bienvenue aux nouveaux arrivants sur FantasPic !
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
Modérateur : Jérémy
le vocabulaire ASM vs C ?
le vocabulaire ASM vs C ?
- paulfjujo
Expert- Messages : 2737
- Âge : 73
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
bonjour,
en C :#pragma
#pragma warning disable 228 // caractere francais accentué
// CONFIG1L
#pragma config FEXTOSC = OFF // External Oscillator Selection->Oscillator not enabled
#pragma config RSTOSC = HFINTOSC_64MHZ // Reset Oscillator Selection->HFINTOSC with HFFRQ = 64 MHz and CDIV = 1:1
directives
#define _XTAL_FREQ 64000000
#define UART1_RX_BUFFER_SIZE 128
#define Led_R LATAbits.LATA4
#define Led_R_Dir TRISCbits.TRISA4
#include "UART1_Functions.h"
, fonction,routines
void UART1_Init(void);
avec passage de parametres :
void SMT1_Init(char Choix_SMT1_Clock); // clock 64MHz,16Mhz,500Khz,31,25Khz
CPrint(" Version : "VERSION"\r\n");
return
char * TemperatureWordToASCII_degF( signed int TemperatureWord );// retourne un pointeur sur la chaine de caratere represnetant la temperature
double input, rounded;
input = 1234.5678;
rounded = trunc(input); // retourne la partie arrondie du flottant
Macro
#define SW0 ( PORTB & 0x02)>>1 // SW0_PRM Menu Paramètres
#define SW1 ( PORTB & 0x04)>>2 // SW1 CFE Alterner Confort / Eco
en asm
asm("btg LATA,4");// Toggle led RA4
etc....
en C :#pragma
#pragma warning disable 228 // caractere francais accentué
// CONFIG1L
#pragma config FEXTOSC = OFF // External Oscillator Selection->Oscillator not enabled
#pragma config RSTOSC = HFINTOSC_64MHZ // Reset Oscillator Selection->HFINTOSC with HFFRQ = 64 MHz and CDIV = 1:1
directives
#define _XTAL_FREQ 64000000
#define UART1_RX_BUFFER_SIZE 128
#define Led_R LATAbits.LATA4
#define Led_R_Dir TRISCbits.TRISA4
#include "UART1_Functions.h"
, fonction,routines
void UART1_Init(void);
avec passage de parametres :
void SMT1_Init(char Choix_SMT1_Clock); // clock 64MHz,16Mhz,500Khz,31,25Khz
CPrint(" Version : "VERSION"\r\n");
return
char * TemperatureWordToASCII_degF( signed int TemperatureWord );// retourne un pointeur sur la chaine de caratere represnetant la temperature
double input, rounded;
input = 1234.5678;
rounded = trunc(input); // retourne la partie arrondie du flottant
Macro
#define SW0 ( PORTB & 0x02)>>1 // SW0_PRM Menu Paramètres
#define SW1 ( PORTB & 0x04)>>2 // SW1 CFE Alterner Confort / Eco
en asm
asm("btg LATA,4");// Toggle led RA4
etc....
Retourner vers « Généralités sur les PICs »
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 3 invités