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 ---

MCP23S17 et MC145151 (PLL)

http://f5ad.free.fr/Docs_ATV/MC145151.pdf

Forum général sur le langage C !

Modérateur : Jérémy

folkeu08
Débutant
Débutant
Messages : 65
Enregistré en : novembre 2017
Localisation : Ardennes (08)
Contact :

MCP23S17 et MC145151 (PLL)

Messagepar folkeu08 » sam. 27 déc. 2025 13:52

Bonjour à tous,

Comme chaque année, je m'ennuie un peu en cette période de fêtes. J'en profite pour me pencher sur des projets électroniques. Pour cette édition, ce sera un "projet" qui ne fleuris pas dans la console google lorsque l'on tente une recherche. D'où son utilité pour le commun des mortels car c'est une autre façon de faire qui va être tentée.

Bref explication du projet : En FM, la fréquence d'émission est stabilisée par un circuit PLL. Il en existe 2 grandes variétés, ceux à entrée parallèle (la fréquence est programmée par des mini-switchs) et ceux à entrée série (mode SPI). Pour la première varité, nous trouverons les Mc145151, MC145152 de chez Motorola. Pour la seconde, les MC145157 et MC145170 du même fabriquant. Certains peuvent être précédés par un prédiviseur /10 ou par 64 afin d'adapter la fréquence à comparer à la fréquence admissible sur leur entrée.

J'ai trouvé un projet qui me sert de départ. Le processeur utilisé est un atmel, le PLL un MC145151 et le firmware est écrit en "C". Les informations nécessaires au MC145151 sont transmises par 2 ports de l'Atmel.

L'intêret de ce post est de déjà de migrer le projet sur un PIC (16f877A ou 18F4550) et de libérer 2 ports complets en utilisant une liaison SPI par un MCP23s17. Cette méthode avec un MC145151 n'est pas présente sur le net. Je n'ai rien trouvé en créant différentes requêtes sur google.

J'ai déjà consulté le code de l'atmel et il est trop optimisé pour que je ne comprenne correctement. J'ai demandé de l'aide à ChatGPT pour qu'il me l'explique ligne par ligne et j'ai pu y lire qu'il y a des rotations de bits.

Cela m'a donc fait pensé que le schéma (Kicad) premièrement créé de mon côté ne correcpondra pas obligatoirement au routage de la carte. Il sera certainement nécessaire de décaler des bits par firmware. Pour dire, j'ai jamais fait !

Voila la présentation du projet. J'y mets en pièce jointe le projet avec l'Atmel, et la première version de mon schéma. Le temps que vous prenniez connaissance de ce projet, je vais router les connections entre le MC145151 et le MC23s17 afin de définir les nouvelles rotations de bits à réaliser dans le firmware.

J'en suis de mon côté au tout début. J'ai juste dessiné le schéma, aucun code écris pour un Pic.
François

PLL-MC145151P2.CONTROL__V1.3 - 2022-10-30-1.zip

MC145151_1.pdf
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.

folkeu08
Débutant
Débutant
Messages : 65
Enregistré en : novembre 2017
Localisation : Ardennes (08)
Contact :

MCP23S17 et MC145151 (PLL)

Messagepar folkeu08 » sam. 27 déc. 2025 20:13

Re,
J'ai trouvé un utilitaire qui permet d'obtenir le programmation des port en entrée du MC145151 :
https://www.kuryazilim.com/pll-eng.htm
Il évite le calcul fastidieu à la main.
François

folkeu08
Débutant
Débutant
Messages : 65
Enregistré en : novembre 2017
Localisation : Ardennes (08)
Contact :

MCP23S17 et MC145151 (PLL)

Messagepar folkeu08 » mer. 4 mars 2026 22:18

Bonjour tous,
J'ai fait réaliser une carte d'affichage de la fréquence sur la base d'un MAX7219 accompagnée de 6 boutons poussoirs dont voici le schéma :
Cde et aff.png

J'utilise une platine de dev provenant de http://www.100MHz.com dont voici également le schéma :
PIC DIP40 MINI KIT.pdf

J'ai fait la liaison entre les 2 cartes avec des cordons de connexion F/F utilisés pour des cartes à trous d'essai.
Le firmware est écris en C avec MikroC :
FM.zip

La simulation fonctionne correctement sous Proteus
Lorsque je teste physiquement avec les 2 platines connectées, j'obtiens un affichage fixe ". .L. .7." qui ne correspond pas à la valeur du premier affichage souhaité "A-C ". L'affichage reste fixe et ne passe pas à la valeur suivante " U 4.00" après une petite temporisation.
J'ai aussi testé avec un programme démo de la carte de dev, tout fonctionne. J'avais un doute sur le quartz.
J'ai contrôlé plusieurs fois les pistes du MAX7219 aux bornes de chaque afficheur, c'est correct puis les 3 liges de Cde de l'afficheur vers le pic18f4550. C'est good aussi. Me semble t-il !
A force de regarder, regarder, ..... Je ne cherche peut être pas au bon endroit.
Un oeuil nouveau me serai bien utile pour débloquer cette situation jusqu'à maintenant insoluble.
Fichier proteus :
Txfm_dev.zip


Merci pour votre nouveau regard.
François
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.


Retourner vers « Langage C »

Qui est en ligne

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