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 : mazertoc
mplab importation code
bonjour
voici ci dessous le code que j'ai pris sur le forum par un copier, assembler sans debug mais cette fois ci run=>build project et c'est pareil donc je le recopie de mon mplab pour le remetre sur le forum
voici ci dessous le code que j'ai pris sur le forum par un copier, assembler sans debug mais cette fois ci run=>build project et c'est pareil donc je le recopie de mon mplab pour le remetre sur le forum
Code : Tout sélectionner
;********************************************************************
; descriptif du projet:
;Decompteur programmable, sur 4 digits 7 segemnts,
;2 BP un plus variables,un validation deplacement et demarrage decompteur.
;
;;********************************************************************
;
; Auteur :JMarc maï
; Version :1.0
; Date :2016
;
;*******************************************************************************
; Note:PIC 16F877a par exemple
;
;*******************************************************************************
ERRORLEVEL-302
list p=16f877 ;liste directive du 16F877
#include "p16f877.inc"
;********************** chargement des Macros **********************************
;***************************** Configuation des fuses **************************
;
; CONFIG
; __config 0x3D3A
__CONFIG _FOSC_HS & _WDTE_OFF & _PWRTE_OFF & _CP_OFF & _BOREN_OFF & _LVP_OFF & _CPD_OFF & _WRT_OFF
;
;
;*********************** déclaration des variables *****************************
;Toutes ces variables sont globales pour le fichier source,MEM MEM_us MEM1
;MEM1_us MEM2 pour l'ensemble du projet.
;
;*******************************************************************************
GLOBAL MEM,MEM1 ;variables utilisables dans tout le projet
GLOBAL MEM_us,MEM1_us ; pour macro delay
GLOBAL MEM2
Group_gobal udata 0x20
MEM res 1 ;MEM :MEM2 sont necessaires
MEM_us res 1
MEM1 res 1 ;pour les macros delay
MEM1_us res 1
MEM2 res 1 ;
Group_Local udata 0x30
ComptSu res 1 ;comteur seconde
ComptSd res 1
ComptMu res 1 ;compteur minute
ComptMd res 1
Index res 1 ;lors programmation digit concerné
Temp res 1 ;compteur temps
Temp_Val res 1 ;compteur temps touche val
Sauv res 2 ;pour sauvegarde registres lors INT
;*********************** Definition des Externes *******************************
;
;*********************** Déclarations des définitions **************************
#DEFINE _XTAL_FREQ .4000000 ;ici FOSC =4MHz
#DEFINE BP_Plus PORTB,0
#DEFINE BP_Val PORTB,1
;*********************** Assignations ou constantes ****************************
DRAM EQU 0x20 ;début Mémoire Ram banque0
;*********************** MACROS ************************************************
Banque0 MACRO
BCF STATUS,RP0 ;Acces bank0
BCF STATUS,RP1
ENDM
Banque1 MACRO
BSF STATUS,RP0 ;Acces bank1
BCF STATUS,RP1
ENDM
Banque2 MACRO
BCF STATUS,RP0 ;acces bank2
BSF STATUS,RP1
ENDM
Banque3 MACRO
BSF STATUS,RP0 ;Acces bank4
BSF STATUS,RP1
ENDM
;*********************** Affichage sur 4 digits ********************************
Aff7 MACRO
BSF PORTA,0 ;allumage digit0
MOVFW ComptSu ;charge la donnée
CALL LedTable ;recherche donnée
MOVWF PORTC ;envoi donnée
CALL Tem2ms ;petite tempo 2ms
BCF PORTA,0 ;arrêt digit0
BSF PORTA,1
MOVFW ComptSd
CALL LedTable
MOVWF PORTC
CALL Tem2ms ;idem digit1
BCF PORTA,1
BSF PORTA,2
MOVFW ComptMu
CALL LedTable
MOVWF PORTC
CALL Tem2ms ;idem digit2
BCF PORTA,2
BSF PORTA,3
MOVFW ComptMd
CALL LedTable
MOVWF PORTC ;idem digit3
CALL Tem2ms
BCF PORTA,3
ENDM
;*********************** TOUT COMMENCE ICI *************************************
org 0X00 ;au rest le pointeur instruction est ICI
GOTO debut ;saut sur le label debut
org 0X04
MOVWF Sauv ;sauve W
SWAPF STATUS,W ;
MOVWF Sauv+1 ;sauve status
BTFSS PIR1,TMR1IF ;test flag si TIMER1
GOTO Int0 ;NON
MOVLW 0x3C ; int toute le 100ms
MOVWF TMR1H
MOVLW 0xB3
MOVWF TMR1
BCF PIR1,TMR1IF ;RAZ du drapeau de TMR1
INCF Temp,F ; à 10 cela fera 1s
INCF Temp_Val,F ;tempo BP Val
GOTO IntS
Int0 BTFSS INTCON,T0IF ;Test flag si TIMER0
GOTO IntS ;on sort pour gerer l'affichage
BCF INTCON,T0IE ;ARRET INT TMR0
Aff7
MOVLW 0XA
MOVWF TMR0 ; charge Timer0 pour 1ms
BCF INTCON,T0IF ;RAZ Flag TIMER0
BSF INTCON,T0IE ;mise en service INT TMR0
IntS SWAPF Sauv+1,0
MOVWF STATUS ;restaure status
SWAPF Sauv, 1
SWAPF Sauv, 0 ;restaure W
RETFIE
;*********************** Alumage segments afficheur ****************************
LedTable
addwf PCL,f ; ajout au PC
retlw B'00111111' ; LED allum?es pour afficher 0
retlw B'00000110' ; LED allum?es pour afficher 1
retlw B'01011011' ; LED allum?es pour afficher 2
retlw B'01001111' ; LED allum?es pour afficher 3
retlw B'01100110' ; LED allum?es pour afficher 4
retlw B'01101101' ; LED allum?es pour afficher 5
retlw B'01111101' ; LED allum?es pour afficher 6
retlw B'00000111' ; LED allum?es pour afficher 7
retlw B'01111111' ; LED allum?es pour afficher 8
retlw B'01100111' ; LED allum?es pour afficher 9
;**********ici c'est votre programme principale ou main ************************
debut
;*********************** Mise a zéro de la mémoire RAM banque0 *****************
MOVLW DRAM
MOVWF FSR
Effa CLRF INDF
INCF FSR,F ;RAZ RAM
BTFSS FSR,7
GOTO Effa
;*********************** Initialisation des ports ******************************
CLRF PORTA
CLRF PORTB ;efface les sorties des ports
CLRF PORTC
Banque1 ;accés bank1
CLRF TRISA ;RA:RA5 en sortie
MOVLW B'00000111' ;RB0:RB1 en entrées
MOVWF TRISB
CLRF TRISC ;RC0:RC7 en sortie
MOVLW B'00000110' ;PORTA digitale
MOVWF ADCON1
;*********************** validation des INT ************************************
MOVLW (1<<GIE)|(1<<PEIE)|(1<<T0IE)|(0<<INTE)|(0<<RBIE)|(0<<T0IF)|(0<<INTF)|(0<<RBIF)
MOVWF INTCON ;Initialisation des INT
BSF PIE1,TMR1IE ;valide int TMR1
;******************* Initialisation des timers/compteurs ***********************
; ici on va travailler avec le TIMER1 et TIMER0
;*******************************************************************************
MOVLW 0x01
MOVWF OPTION_REG
Banque0
MOVLW 0xA
MOVWF TMR0
;**********************
BSF T1CON, 0x4
BCF T1CON, 0x5
MOVLW 0x3C
MOVWF TMR1H
MOVLW 0xB3
MOVWF TMR1
BSF T1CON,TMR1ON ; mise en service Timer1
;********************** Boucle principale **************************************
BouP GOTO BouP
;********************** ici c'est des SPG **************************************
Tem2ms
MOVLW 0x3
MOVWF MEM1
MOVLW 0x98
MOVWF MEM
temp DECFSZ MEM, F
GOTO temp
DECFSZ MEM1, F
GOTO temp
RETURN
END ;fin pour le compilateur
mplab importation code
bonsoir
j'ai copier le code ci dessus, dans mon projet 16F j'ai ouvert un nouveau fichier ASM que j'ai collé, et compile sans aucun problème.
ICI le résultat
A+
j'ai copier le code ci dessus, dans mon projet 16F j'ai ouvert un nouveau fichier ASM que j'ai collé, et compile sans aucun problème.
ICI le résultat
A+
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Modifié en dernier par Anonymous le ven. 25 nov. 2016 17:33, modifié 1 fois.
mplab importation code
mplab importation code
mplab importation code
- Claudius
Passioné- Messages : 260
- Âge : 69
- Enregistré en : septembre 2015
- Localisation : ELANCOURT (78 - YVELINES)
- Contact :
Bonsoir,
Mais pourquoi s'obstiner à passer par un copier/coller avec le presse papier (qui, soit dit en passant, pourrait être plein à craquer - faire la même opération avec l'ancestral bloc-note de Windows pour lever le doute ;-) et par conséquent utiliser la méthode standard de l'importation de fichiers (et donc des sources de programmes ) au moyen de:
Files Outside of Project Folder
When adding a source file that is not in the project folder, add the file as “Relative”. This will create an external folder (_ext) so the project can find the file when building.To make use of navigation features such as
The file context menus, you must tell the project where the files are located. To do this:
1. In the Projects window, right click on the project name and select “Properties”.
2. Under “Categories”, click “General”.
3. Next to “Source Folders”, click Add
4. Browse to the path to the external file(s) you have added to the project.
5. Click Apply or OK. Then rebuild the project.When you import an MPLAB IDE v8 project, the source files are a not in the project folder. Use File>Import>MPLAB IDE v8 Project to automatically import the files.
A suivre...
Mais pourquoi s'obstiner à passer par un copier/coller avec le presse papier (qui, soit dit en passant, pourrait être plein à craquer - faire la même opération avec l'ancestral bloc-note de Windows pour lever le doute ;-) et par conséquent utiliser la méthode standard de l'importation de fichiers (et donc des sources de programmes ) au moyen de:
Files Outside of Project Folder
When adding a source file that is not in the project folder, add the file as “Relative”. This will create an external folder (_ext) so the project can find the file when building.To make use of navigation features such as
The file context menus, you must tell the project where the files are located. To do this:
1. In the Projects window, right click on the project name and select “Properties”.
2. Under “Categories”, click “General”.
3. Next to “Source Folders”, click Add
4. Browse to the path to the external file(s) you have added to the project.
5. Click Apply or OK. Then rebuild the project.When you import an MPLAB IDE v8 project, the source files are a not in the project folder. Use File>Import>MPLAB IDE v8 Project to automatically import the files.
A suivre...
Enregistreur de traces GPS & Boussole GPS parlante (PIC & Arduino)
mplab importation code
Bonjour claudius
Je passe par le presse papier car du forum a mon Pc je ne sais faire autrement.
De plus avec le test de maï qui a repris le code qui est passé 2 fois par mon presse papier et qui fonctionne chez lui lève le doute du dysfonctionnement du mien.
J'ai du toucher une case dans Mplab mais je ne trouve pas la quelle
Merci
Je passe par le presse papier car du forum a mon Pc je ne sais faire autrement.
De plus avec le test de maï qui a repris le code qui est passé 2 fois par mon presse papier et qui fonctionne chez lui lève le doute du dysfonctionnement du mien.
J'ai du toucher une case dans Mplab mais je ne trouve pas la quelle
Merci
mplab importation code
- Claudius
Passioné- Messages : 260
- Âge : 69
- Enregistré en : septembre 2015
- Localisation : ELANCOURT (78 - YVELINES)
- Contact :
Bonjour JMarc et à tous,
Ok pour cette raison légitime, mais fais alors un fichier texte depuis le presse papier via un éditeur comme Bloc Notes ou Notepad++ et importe ledit fichier dans MPLAB comme indiqué dans mon précédent post ... cela aura le mérite de lever le doute car, sauf erreur de ma part, MPLAB n'y ait pour rien ...
Ok pour cette raison légitime, mais fais alors un fichier texte depuis le presse papier via un éditeur comme Bloc Notes ou Notepad++ et importe ledit fichier dans MPLAB comme indiqué dans mon précédent post ... cela aura le mérite de lever le doute car, sauf erreur de ma part, MPLAB n'y ait pour rien ...
Enregistreur de traces GPS & Boussole GPS parlante (PIC & Arduino)
mplab importation code
mplab importation code
Bonsoir Maï et Claudius
J'ai une piste
J'ai pris un editeur hexadecimal et changer dans le fichier source recupéré du forum tout les code 0xA0 en 0x20 et sa fonctionne
les affaires reprennent, une semaine de perdu (Maï, pense a reporté le delais pour la mise en ligne de la solution )
Il faut maintenant que je trouve le pourquoi mplab ne prend pas ce code dans le fichier asm et a vous oui mais je chercherai plus tard, trop perdu de temps
J'ai une piste
J'ai pris un editeur hexadecimal et changer dans le fichier source recupéré du forum tout les code 0xA0 en 0x20 et sa fonctionne
les affaires reprennent, une semaine de perdu (Maï, pense a reporté le delais pour la mise en ligne de la solution )
Il faut maintenant que je trouve le pourquoi mplab ne prend pas ce code dans le fichier asm et a vous oui mais je chercherai plus tard, trop perdu de temps
Retourner vers « Langage ASM »
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 48 invités