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 ---
Forum général sur l'Assembleur !

Modérateur : mazertoc

Pic 18f25k42
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2903
Enregistré en : juillet 2016
Localisation : Terre

#11 Message par Temps-x » ven. 4 déc. 2020 22:20

Bonsoir chabb, et tout le forum,

oops Là je pense que le fichier Zip c'est mieux, pour ce cas, impossible de compiler le fichier avec MPASM version 5.86...

Tu configures pas tes registres, tu fais que leurs donner une nouvelle adresse, c'est pas bon, tu n'as pas besoin de le faire, car il y a le fichier p18f25k42.inc ou tout et déjà fait.

Même si les adresses était bonne, sa encombre le programme, et on n'y voit plus rien.

Début du programme

Code : Tout sélectionner



    Errorlevel
-302                        ; Supprime le message "Ensure that bank bits are correct" 

    radix dec                             
; par defaut en mode décimal

    list p
=18F25k42                       ; processeur utilisé                  
    
#include <p18F25k42.inc>              ; Définitions des constantes



Il faut mettre les partitions dans un tableau, par exemple comme ça

Code : Tout sélectionner


ORG H
'3000'
musique_1
      db 0x40
,0xC0,0x78,0x40,0xC0,0x78,0x40,0x00,0x04,0x3F,0x04,0x04,0x3F,0x04,0x04,0x00 
      db 0x00
,0x70,0x88,0xFC,0x08,0x30,0x00,0x00,0x00,0x18,0x20,0xFF,0x21,0x1E,0x00,0x00 
      db 0xF0
,0x08,0xF0,0x00,0xE0,0x18,0x00,0x00,0x00,0x21,0x1C,0x03,0x1E,0x21,0x1E,0x00 
      db 0x00
,0xF0,0x08,0x88,0x70,0x00,0x00,0x00,0x1E,0x21,0x23,0x24,0x19,0x27,0x21,0x10
      db 0x10
,0x16,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
      db 0x00
,0x00,0x00,0xE0,0x18,0x04,0x02,0x00,0x00,0x00,0x00,0x07,0x18,0x20,0x40,0x00
      db 0x00
,0x02,0x04,0x18,0xE0,0x00,0x00,0x00,0x00,0x40,0x20,0x18,0x07,0x00,0x00,0x00
      db 0x40
,0x40,0x80,0xF0,0x80,0x40,0x40,0x00,0x02,0x02,0x01,0x0F,0x01,0x02,0x02,0x00
      db 0x00
,0x00,0x00,0xF0,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x1F,0x01,0x01,0x01,0x00
      db 0x00
,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xB0,0x70,0x00,0x00,0x00,0x00,0x00
      db 0x00
,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01
      db 0x00
,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,0x00
      db 0x00
,0x00,0x00,0x00,0x80,0x60,0x18,0x04,0x00,0x60,0x18,0x06,0x01,0x00,0x00,0x00
      db 0x00
,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x0F,0x10,0x20,0x20,0x10,0x0F,0x00 
      db 0x00
,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00



Bon pour l'instant s'arrête là, car il y a du boulot avant que ton programme fonctionne

==> A+
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:

Pic 18f25k42
Jérémy
Administrateur du site
Administrateur du site
Messages : 2750
Âge : 46
Enregistré en : juillet 2015
Localisation : Dans le sud
Contact :

#12 Message par Jérémy » sam. 5 déc. 2020 09:26

Bonjour a tous,

 ! Message de modération :
Chabb merci de lire cette section : Afficher correctement son code


Effectivement u n ZIP avec les fichiers complets nécessaire à l'ouverture avec MPLAB me parait justifié dans ce cas. Aucun problème bien au contraire. Mon but étant seulement de mettre en garde sur les ZIP que peu de personnes ouvrent au final.
C'est en faisant des erreurs, que l'on apprend le mieux !!!

Pic 18f25k42
chabb
Débutant
Débutant
Messages : 38
Âge : 92
Enregistré en : décembre 2020
Localisation : 54600
Contact :

#13 Message par chabb » sam. 5 déc. 2020 12:01

Bonjour, Merci Satinas de jeter un oeil à mon programme. Cet opéra hier soir était très fantaisiste (comme mon Pic). Où j'ai récupéré ce code? Je l'ai tout simplement écrit (entièrement conçu et réalisé par moi-même) avec juste l'appui de la notice Microchip : Data-sheet-40001869D.pdf 400 pages en anglais, qui traite le Pic 18F25K42.
Je vois que le prog. que j'ai envoyé est plutôt confus c'est Fantaspic qui retasse tout vers la gauche. Si les tab sont remplacées par des espaces cela va doubler la taille du fichier.
Si vous avez le temps et l'envie - (attention, ce program est nocif pour les neurones un depassement de la dose quotidienne peut les détruire) Gare à la migraine. un virus suffit pour l'instant à nous em. . . . .er-
Vous pouvez voir ma page perso à
"www.bernard.chabbert.pagesperso-orange .fr"
Sur la page d'accueil vers le bas cliquez sur Bam pour accéder à la page Boite à musique et là on peut télécharger : l'explication du projet, le prog. assembler, schéma etc. Le prog est pour le Pic 18f2520 ,je ne monte pas celui pour 18 f25k42 car je considère qu'il n'est pas au point. Ceci afin d'éviter d'encombrer ce forum.
Je pense que la recherche d'erreur doit surtout se faire sur le system d'interruption et l'initialisation des SFR.
Encore grand merci. B.C.

Pic 18f25k42
satinas
Expert
Expert
Messages : 1497
Enregistré en : novembre 2015

#14 Message par satinas » sam. 5 déc. 2020 13:31

Bonjour à tous

Et bien bravo pour ce programme remarquable, et bien documenté, chabb.

Le fait de s'affranchir de tous les fichiers include en tapant les adresses à la main d'après le datasheet est une démarche que j'apprécie dans l'absolu, bien que je ne vais pas jusque là. Pas d'intermédiaire, on est en direct avec la cpu en assembleur :-)
Le revers de la médaille est que cela multiplie les sources d'erreur et qu'il vaut mieux pas changer de processeur trop souvent. C'est pourquoi les conseils de Tempx-x me semble utile, il y a moyen de raccourcir le programme et le rendre plus accessible pour les autres.

Tu utilises quel programmateur hardware ?
Les clones de PicKit3 sont à 10 euros, ok pour le 18F25K42.
Est-ce que le programme 18F2520 marche correctement ?
Sinon quels sont les problèmes rencontrés ?

https://www.youtube.com/watch?v=dt3rpgWyKno
J'avais testé celle-ci faite par Markus Gritsch avec un Pic32, juste pour entendre cette belle musique que les amateurs du jeu vidéo Portal ont pour récompense en fin de jeu. Le programme est inspiré du travail de ChaN.
http://elm-chan.org/works/mxb/report.html

Pic 18f25k42
chabb
Débutant
Débutant
Messages : 38
Âge : 92
Enregistré en : décembre 2020
Localisation : 54600
Contact :

#15 Message par chabb » sam. 5 déc. 2020 14:16

hello Satinas. je croyais avoir dit plus haut; Je programme en assembleur parce que j'ai besoin de connaitre exactement le temps de déroulement d'un boucle d'instructions. J'utilise Mplabxide v5.35. les versions v5.40 et v5.45 n'admettent plus le langage ASM (c'est un scandale!) le chip est programmé avec l'outil Microchip Pickit4 branché d'un côté sur un port USB est de l'autre a mon chip qu'ils appellent du nom barbare de Target. seulement 5 fils : VDD 0volt, VCC 5volts fourni par le pickit4, rb7/pgd data, rb6/pgc clock et mclr barre.
J'ai changé de processor parce que j'ai besoin de plus de rapidité (64Mhz) pour donner plus de justesse au notes. ma réalisation complète avec le 18f2520 fonctionne parfaitement. Vous pouvez tout voir à l'adresse que je vous ai indiquée. Merci pour votre appréciation.

Pic 18f25k42
satinas
Expert
Expert
Messages : 1497
Enregistré en : novembre 2015

#16 Message par satinas » sam. 5 déc. 2020 16:43

J'ai testé tes 2 programmes sur un 18F2620 et un 18F27K42 et il y a bien des signaux périodiques qui semblent identiques sur RA1 et RA2. Pour aller plus loin, il faudrait avoir le hardware analogique qui va avec, pour ne pas fonctionner en aveugle.

Pic 18f25k42
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2903
Enregistré en : juillet 2016
Localisation : Terre

#17 Message par Temps-x » sam. 5 déc. 2020 16:46

Bonjours chabb, satinas, et tout le forum,

Personnellement j'aurais pris un Pic comme Pic18F26K22 ou Pic18F27K42 qui à beaucoup plus de mémoire programme, sdram, eeprom

chabb a écrit :Source du message J'utilise Mplabxide v5.35. les versions v5.40 et v5.45 n'admettent plus le langage ASM (c'est un scandale!)

:roll: Oui, mais MPASM existera toujours, et pour nous c'est tout ceux qui nous faut

Merci ! pour le lien de ton site ou je me suis empressé de lire ton fichier Boite à music, j'ai vu que tout été docummenté. :wink:

Je vais regarder ton fichier pour voir ce qui ne va pas, mais je te promets rien, car j'ai pas mal de chose à faire en ce moment.

J'ai moi même écrit un petit programme pour PC qui lit les fichier RTTT je le joins en bas de page, avec quelque exemple de composition (en écrivant ce programme j'ai beaucoup appris sur la musique)

Pour ne pas planté le programme, il faut décompiler les fichier à la racine de C:\, et avoir un haut parleur de PC, qui est plutôt rare à notre époque, pour ceux qui ne dispose pas d'un haut parleur de PC il vous faudra attendre que je fasse l'interface midi (qui est en court de finition).

Par la suite vous pourrais créer vos propre morceau, pour les mettre dans un microcontrôleur, mais il faut que je trouve la motivation pour le faire.

Fichiers joints : ICI

==> A+
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Modifié en dernier par Temps-x le dim. 6 déc. 2020 16:03, modifié 14 fois.
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:

Pic 18f25k42
paulfjujo
Avatar de l’utilisateur
Maître
Maître
Messages : 3260
Âge : 75
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#18 Message par paulfjujo » sam. 5 déc. 2020 18:29

bonsoir à tous ,

:+1: Bravo Chabb pour ta presentation de "boite à musique" et ton programme en ASM bien documenté sur ton site.
il est vrai que ton application packée (via MPLAB) en zip serait plus visible ici qu'un listing non identé.

Penses tu qu'il soit possible d'en faire une version en C ( j'ai un 27K42 sous la main)
Certaines partie sensibles pouvant etre en ASM dans le C ...
et à 64MHz , ca decoiffe.

est-ce que le NCO (Numerical Controled Oscillator) pourrait aider ?
j'ai vu une appli musical basée sur cette nouvelle fonctionalité ..
et j'ai déja testé ce NCO pour évaluer
la gamme de fréquence pouvant en sortir.
l'avantage est que ça ne mobilise pas le CPU
je n'ai pas encore testé l'autre mode : Pulse..
Aide toi, le ciel ou FantasPic t'aidera

Pic 18f25k42
satinas
Expert
Expert
Messages : 1497
Enregistré en : novembre 2015

#19 Message par satinas » sam. 5 déc. 2020 21:53

Chaque fois que tu écris un port, utilise LAT au lieu de PORT, il faut le faire systématiquement.
A part cela rien à signaler.
Les 2 timers fonctionnent de la même façon avec une durée max de 65ms, vérifiés avec une pulse ajoutée dans l'interruption. Pour le reste c'est censé être le même code qui tourne.
Pas vu de problème dans la gestion des banks Sur le 18F27K42.
Quels sont les symptômes ?
Les caractéristiques électriques des pins ne sont pas les mêmse entre les 2 modèles de pic.

Pic 18f25k42
chabb
Débutant
Débutant
Messages : 38
Âge : 92
Enregistré en : décembre 2020
Localisation : 54600
Contact :

#20 Message par chabb » dim. 6 déc. 2020 15:18

Bonjour à tous. J' ai compressé mon dossier Mplabx boite à musique avec 7z j'espère qu'il est complet, faites-moi savoir si ça ne va pas.
bam25k42.X.7z
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.


Retourner vers « Langage ASM »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 2 invités