begin process at 2012 05 25 10:44:40
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Assembleur

 > 

Divers

 > 

Débutant(e)

 > 

trame sous PIC 18F


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

trame sous PIC 18F

mercredi 21 juillet 2010 à 16:20:37 | trame sous PIC 18F

PIC08

Bonjour,
Je suis entrain d'écrire un programme que j'ai compilé correctement, qui a pour but d'envoyer une trame(Information) en fonction du bouton poussé d'une télécommande, je dois synchroniser la durée de chaque bit de sortie du Port B et ajouter un bit de start et un bit de stop, malheureusement je ne sais comment faire.
merci de m'aider

Voici le programme :

#include <p18f87k90.h>

char trame0 = 0x00; //Trame nulle
//Température//
char trame1 = 0x01; //Affichage Température
char trame2 = 0x02; //Augmenter
char trame3 = 0x03; //Diminuer
char trame4 = 0x04; //Clim Marche


void main(void) // Entrée du programme principal

{
PORTA = 0x00; // Initialisation du port A
PORTB = 0x00; // Initialisation du port B
PORTC = 0x00; // Initialisation du port C
PORTD = 0x00; // Initialisation du port D

TRISC = 0xFF; // Le port C en entrée (Boutons de commande)
TRISD = 0xFF; // Le port D en entrée (Boutons de commande)
TRISB = 0x00; // Le port B en sortie (Sortie de trames)


while (1) //Boucle infinie
{
if (PORTC & PORTD == 0) PORTB = trame0;
else if (PORTCbits.RC0) PORTB = trame1; // Si le bouton1 est appuyé, le port B transmet la trame1
else if (PORTCbits.RC1) PORTB = trame2; // Si le bouton2 est appuyé, le port B transmet la trame2
else if (PORTCbits.RC2) PORTB = trame3; // Si le bouton3 est appuyé, le port B transmet la trame3
else if (PORTCbits.RC3) PORTB = trame4; // Si le bouton4 est appuyé, le port B transmet la trame4

}

}

}
jeudi 22 juillet 2010 à 14:16:00 | Re : trame sous PIC 18F

Guilou34

Réponse acceptée !
Puisque tu parles de start bit et de stop bit on peut penser qu'il s'agit d'une liaison série asynchrone du type rs232. Fait une recherche sur ce mot et tu verras qu'il n'y a rien de compliqué. Tu parles aussi de télécommande, dans ce cas il faut connaître les caractéristiques du récepteur et il est rare que le signal transmis soit une suite de 1 et de 0 mais bien un signal modulé entre 20 et 40 kHZ.
Amicalement
jeudi 22 juillet 2010 à 14:26:05 | Re : trame sous PIC 18F

PIC08

Merci pour ta réponse, il s'agit en fait d'une télécommande de climatisation, j'ai le discpositif qui dispose d'un ancien Microcontroleur NEC et je dois donc le remplacer par un PIC 18F,je part d'un cahier de charge pour pouvoir envoyer une trame et pour l'afficheur et pour le récepteur.Comme tu as dit c'est un signal modulé entre 20 et 40 kHZ.le problème c que je ne trouve que des codes en HEXADECIMAL 20H 23H...et je ne comprend pas bien l'assembleur,c pour cela j'ai du mal à en déduire les codes des trames. C'est pour ca j'essai d'écrire un programme qui permet d'envoyer n'importe quelle trame, son identification devient facile après avoir obtenu son code de la part de mon tuteur.Avez vs des conseils SVP.
Merci


Cette discussion est classée dans : port, char, 0x00, portb, if


Répondre à ce message

Sujets en rapport avec ce message

pic16f84 serin [ par h82kev ] bjr à tousvoilà mon problèmej'utilise un pic16f84 pour un banc de test pour modemlorsque j'appui sur un bouton poussoir (pin 7), je veux envoyer un ca Tester une entrée en asm [ par fred17 ] merci d'avance a ceux qui me répondront. Pour finir un projet, j'ai besoin de tester une entrée. plus précisément de tester le bit 5 qui se trouve dan comment envoyer un signal carée via port parallele [ par aberachraf ] salut je cherche comment generer un signal carée pour attaquer la ligne RB7/ tocvia le port parralele 16F84 asm aide pour modifier une routine de RB7 à RB3 [ par pasrico ] bonjour     pic 16F84A + 24C16    voila j'ai cette routine qui marche tres bien mais je veux la modifier pour passer sur le portb,03  (RB3) mais comme multiplexage de rs232 [ par neitote ] bonjour ,je ve connecter un portable GSM et un GPS avec le pic 16f877 mais on a qu'un seul port serie comment faire pour multiplexer ce port c cool Flags dans le registre INTCON [ par tahiti_bob ] Bonjour,J'ai  trouvé sur cette page une excellente routine de communication RS232 entre un PIC et un PC.http://www.electronic-engineering.ch convertir un char[] en LPCTSTR [ par hansmeier ] Bonjour, J'aimerait savoir comment convertir 1 variable char en LPCTSTR en asm ? En C++ : char var2[11]="HELLO" LPCTSTR var1=var2 Merci pour vos fu Port [ par RM50Man ] Que represente les port par ex Port 3C8h (Digital Analog Converter)et comment on s'en sert (OUT , IN ???????)RM50man port communcication RS232 avec masm32 [ par Remy059 ] Bonjour à tous, j'aimerais savoir comment activer le port RS232 d'un pc en utilisant MASM32   par avance merciRémy_A


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,468 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales