Accueil > Forum > > > > 16F84 asm aide pour modifier une routine de RB7 à RB3
16F84 asm aide pour modifier une routine de RB7 à RB3
samedi 2 avril 2005 à 12:06:32 |
16F84 asm aide pour modifier une routine de RB7 à RB3

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 je debute et que j'ai pas tres bien compris tous les mecanismes de cette routine surtout les : XORWF PORTB , W XORWF PORTB , f est ce qu'il ne faut pas aussi modifier le " RLF EEDATA , f"
si vous pouviez me la modifier sur cet exemple avec un petit commentaire, ca serait sympa ps: j'ai bien essayer des modifs mais ca a pas marcher, donc merci
--------------------------------------------------------------------- envoi en PORTB , 07 --------------------------------------------------------------------- Label_0015 MOVWF EEDATA ; sauve w dans EEDATA COMF EEDATA , f ; complement file MOVLW 0x80 ; page 1 , adressage indirect (variable 0x80) MOVWF 0x1C ; parite 1C= data Crc MOVLW 0x08 ; charge 08 (8 bits) MOVWF 0x0C ; dans compteur (variable C) BCF PORTB , 07 ; met à zero le bit 7 du port B = mise en sortie
BSF STATUS , RP0 ; bank 1 (BSF) MOVLW 0x4F ; 4F= 0100 1111 pin 7,5,4 à 0 = sortie ; (pins 5 et 4 eeprom 24c16) MOVWF TRISB ; data direction port B BCF STATUS , RP0 ; bank 0 (BCF)
MOVLW 0xA8 CALL Label_0004 ; timer 0 --------------------------------------------------------------------------- ; envoi une bit et boucle 8 fois (8 bits = 1 byte) Label_0006 MOVF EEDATA , W ; eeprom data ANDLW 0x80 ; page 1 , adressage indirect (variable 0x80) XORWF 0x1C , f ; calcul la parite 1C= data Crc XORWF PORTB , W ; change la ligne I/0 en fonction du bit 7 de EEdata XORWF PORTB , f MOVLW 0xA8 CALL Label_0005 ; add new valeur au timer RLF EEDATA , f ; eeprom data DECFSZ 0x0C , f ; decremente le compteur de bits ; (variable C), saut si = zero GOTO Label_0006 ; boucle
MOVF 0x1C , W XORWF PORTB , W XORWF PORTB , f MOVLW 0xA8 CALL Label_0005 ; add new valeur au timer
BSF STATUS , RP0 ; bank 1 (BSF) MOVLW 0xCF ; CF = 11001111 remet pin 7 à 1 = entree MOVWF TRISB ; data direction port B BCF STATUS , RP0 ; bank 0 (BCF)
MOVLW 0x02 ADDWF 0x0F , f CALL Label_0007 ; decremente le timer RETURN
|
|
vendredi 15 avril 2005 à 20:52:18 |
Re : 16F84 asm aide pour modifier une routine de RB7 à RB3

jacques5
|
Réponse acceptée !
Bonjour Pasrico.
Je ne comprends pas très bien ta question. Tu désires utiliser la broche B3 au lieu de B7?
Jacques
|
|
vendredi 15 avril 2005 à 21:55:29 |
Re : 16F84 asm aide pour modifier une routine de RB7 à RB3

pasrico
|
pour jacques 5 bonjour oui c'est exactement ca, je desire transposer la routine qui est pour le B7 en routine pour le B3 ( car reelement par la suite dans mon programme je voudrais communiquer suivant besoin sur l'un ou l'autre port, call envoi_B7 ou call envoi_B3 , en gros). j'ai fais des essais , mais je maitrise pas trop et donc ca marche pas. merci de m'avoir repondu lulu
|
|
samedi 16 avril 2005 à 09:52:06 |
Re : 16F84 asm aide pour modifier une routine de RB7 à RB3

jacques5
|
Pour répondre concernant l'instruction XORWF c'est une instruction qui effectue un OU exclusif bit à bit entre un registre et le contenu de W. Pour rappel un OU exclusif voit la sortie à 1 si une des deux entrée est à 1 (l'autre à 0). Par contre la sortie sera à 0 si les deux entrées sont à 1 ou à 0. On peut avec cette intruction inverser un bit particulier d'un registre. Existe aussi XORLW qui effectue la même opération entre un littéral et le registre W.
A B sortie 0 0 0 0 1 1 1 0 1 1 1 0
Bon je ne sais pas vraiment si c'est une solution mais à essayer ceci.
--------------------------------------------------------------------- envoi en PORTB , 07 --------------------------------------------------------------------- Label_0015 MOVWF EEDATA ; sauve w dans EEDATA COMF EEDATA , f ; complement file MOVLW 0x80 ; page 1 , adressage indirect (variable 0x80) MOVWF 0x1C ; parite 1C= data Crc MOVLW 0x08 ; charge 08 (8 bits) MOVWF 0x0C ; dans compteur (variable C) → ; BCF PORTB , 07 ; met à zero le bit 7 du port B = mise en sortie BCF PORTB , 03 ; METTRE A 0 LE BIT N° 3****************** BSF STATUS , RP0 ; bank 1 (BSF) MOVLW 0x4F ; 4F= 0100 1111 pin 7,5,4 à 0 = sortie ; (pins 5 et 4 eeprom 24c16) MOVWF TRISB ; data direction port B BCF STATUS , RP0 ; bank 0 (BCF)
MOVLW 0xA8 CALL Label_0004 ; timer 0 --------------------------------------------------------------------------- ; envoi une bit et boucle 8 fois (8 bits = 1 byte) Label_0006 MOVF EEDATA , W ; eeprom data → ; ANDLW 0x80 ; page 1 , adressage indirect (variable 0x80); andlw0x08 ANDLW 0x08 ; ICI METTRE A 1 LE BIT 3 AU LIEU DU BIT 7**** XORWF 0x1C , f ; calcul la parite 1C= data Crc XORWF PORTB , W ; change la ligne I/0 en fonction du bit 7 de EEdata XORWF PORTB , f MOVLW 0xA8 CALL Label_0005 ; add new valeur au timer RLF EEDATA , f ; eeprom data DECFSZ 0x0C , f ; decremente le compteur de bits ; (variable C), saut si = zero GOTO Label_0006 ; boucle
MOVF 0x1C , W XORWF PORTB , W XORWF PORTB , f MOVLW 0xA8 CALL Label_0005 ; add new valeur au timer
BSF STATUS , RP0 ; bank 1 (BSF) MOVLW 0xCF ; CF = 11001111 remet pin 7 à 1 = entree MOVWF TRISB ; data direction port B BCF STATUS , RP0 ; bank 0 (BCF)
MOVLW 0x02 ADDWF 0x0F , f CALL Label_0007 ; decremente le timer RETURN
|
|
Cette discussion est classée dans : label, movlw, portb, xorwf, eedata
Répondre à ce message
Sujets en rapport avec ce message
PIC 16F84 & LCD piti probleme :) [ par diwee ]
bonjour, j'ai essayé de programmer un pic 16f84 en mode 4-bit pour qu'il affiche un message s sur l'ecran mais en vain. Quand je branche il y a une li
Liaison RS232 Pic 18F2620 vers PC [ par fun_olivier ]
Bonjour je dois faire un programme qui permet de relier un Pic 128F2620 avec un Pc via une liaison USART . Le Pic envoi un caractere, puis reçoit une
texte en memoire dans pic [ par yalein ]
Bonjour a tous, je suis débutant dans la programmation en assembleur et la je coince sur un probleme. J'utilise un pic 16f877 avec un afficheur et je
programmation UART pour pic 16f84A probleme aidez moi [ par looloo78 ]
bonjour,j'ai créer ce programme en m'inspirant d'autre programme, le but étant de lire les 8 bits des portB0-7 et de les envoyer par le portA1 suivant
comment utiliser un call à l'aide d'un préfixe [ par jeddaye ]
bonjour, j'utilise actuellement mplab pour programmer mon 16f88et je me demandais si il etait possible de faire un call avec un préfixe, ceci afin de
Problème avec mon programme en source assembleur pour mon projet de BTS [ par UltimateXion ]
Bonjours à tous, je réalise actuellement mon projet de BTS Système électronique et j'ai comme qui dirai un souci au niveau de mon programme en source
Problème de programation d'un PIC16F877a avec un LCD 2*16 en mode 8 Bits [ par UltimateXion ]
Bonjours à tous, je réalise actuellement mon projet de BTS Système électronique et j'ai comme qui dirai un souci au niveau de mon programme en source
Problème de timing [ par Haox85 ]
Bonjour tout le monde,Depuis mon dernier post où je demandais de l'aide pour afficher sur des 7 segments j'ai un peu avancé tant bien que mal...Si mon
PB PIC18F2525 [ par Haox85 ]
Bonsoir tout le monde... Comme vous pouvez le constater, je n'ai toujours pas réussi a faire ma programmation de PIC... Bon mon programme fonctionne
[Assembleur inline C++] Récupérer l'offset d'un label [ par ShivX ]
Bonjour a tous, J'ai un léger problème avec l'assembleur inline dans un programme en C++, n'étant pas un expert en asm j'espère que vous pourrez m'éc
Livres en rapport
|
Derniers Blogs
XNA 4.0 POUR CRéER DES JEUX 3D SOUS WINDOWS PHONE 7 SERIESXNA 4.0 POUR CRéER DES JEUX 3D SOUS WINDOWS PHONE 7 SERIES par RaptorXP
On savait déjà que le développement d'applications pour Windows Phone 7 Series se ferait par l'intermediaire de Silverlight et XNA. Les détails, et outils de développement (selon cetaines rumeurs) sont attendus pour le MIX10 la semaine prochaine à Las...
Cliquez pour lire la suite de l'article par RaptorXP [TOOLS] NDEPEND 3 DANS VISUAL STUDIO, WAAAAAAAOU!!![TOOLS] NDEPEND 3 DANS VISUAL STUDIO, WAAAAAAAOU!!! par JeremyJeanson
NDepend passé en version 3. Comme pour toute version majeur, la version 3 a son lots de nouveautés : performances, fonctionnalités accrues . etc . Mais dans tout cela il y a la fonctionnalité qui dénote. Le petit truc qui fait que NDepend me fait dire Waa...
Cliquez pour lire la suite de l'article par JeremyJeanson [WF4] GROSSES MéPRISES EN PERSPECTIVE SUR LE KIT DE MIGRATION WF3->WF4[WF4] GROSSES MéPRISES EN PERSPECTIVE SUR LE KIT DE MIGRATION WF3->WF4 par JeremyJeanson
Comme un certain nombre de fanatiques des flux RSS, je suis avec grand intérêt les articles de la team WCF/WF et forcément l'annonce d'hier concernant un kit de migration WF3->WF4 m'a fait chaud au c½ur ;) (pour rappel, mon post au sujet de la migratio...
Cliquez pour lire la suite de l'article par JeremyJeanson RéUNION DU CLUB MOSS PARISRéUNION DU CLUB MOSS PARIS par VANNESTE Xavier
Bonjour à tous la réunion du club moss aura lieu le 15 mars 2010 à 14 heures:
14:00 - 14:05 Paris, EROL GIRAUDY + Gaetan BOUVERET + Nicolas Georgeault intro Présentateur : Pierre Erol GIRAUDY14:05 - 14:30 Paris, Worflow - visio Services - We...
Cliquez pour lire la suite de l'article par VANNESTE Xavier [WF4] ARGUMENT, QUI ES TU?[WF4] ARGUMENT, QUI ES TU? par JeremyJeanson
Quand je parle de Workflows ou d'activités (au passage, il s'agit de la même chose dans WF4 ;) ), je fais souvent la comparaison avec une méthode classique : Une activité peut avoir un retour, comme une méthode. Une activité peut avoir des arguments d'ent...
Cliquez pour lire la suite de l'article par JeremyJeanson
Logiciels
Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods Konvertor (4.00)KONVERTOR (4.00)Le logiciel est un gestionnaire multimedia affichant, jouant et convertissant plus de 2000 format... Cliquez pour télécharger Konvertor Xlite (v 3.0 build 41150)XLITE (V 3.0 BUILD 41150)c'est un logiciel qui permet de téléphoner par Internet à l'aide d'un compte SIP pratique pour le... Cliquez pour télécharger Xlite Academy System (10.9.3.0)ACADEMY SYSTEM (10.9.3.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|