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 : Jérémy
Timer0 avec MikroC
Timer0 avec MikroC
Timer0 avec MikroC
Timer0 avec MikroC
- paulfjujo
Expert- Messages : 2597
- Âge : 73
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
Bonjour,
128µS , ce n'est que pour 1 tour du timer ...
Pour bien utiliser un timer , la 1ere chose est de bien definir quelle est la
frequence FOSC.. donc la duree d'un cycle MCU
Cela devient assez problematique avec les PIC 18F45xxx le 5 definissant qu'il a un port USB.
et donc plein de combinaison possibles pour FOSC .. avec la PLL et L'USB.
Sous mikroC, la config des bits (de config) est donc primordiale.
Cette config peut etre sauvegardee dans un fichier 18F45xx.cfgsch
Ensuite le timer0 ,en particulier, peut etre utilisé en mode 8 bits ou 16 bits..
Autant l'utiliser en mode 16 bits , ce qui donne une tres large possibilité de reglage.
On peut l'utiliser en mode pooling ...mais peut d'interret si on bloque 100% de la puissance MCU
pour faire une tempo.. autant la faire avec une boucle de comptage ..
Le mode INTERRUPT est le plus approprié pour utiliser les timers.
De preference , faire une initialisation detaillée du Timer0
pour mieux comprendre tous les paralmetres qui y sont associés.
La lecture de la D.S. du PIC est essentielle aussi !
Le HARDWARE du PIC doit etre prealablement initialisé.
et l'autorisation d'interruption faite au dernier moment .
Le timer 0 , à FOSC 8MHz peut permettre jusqu'à 8,3 sec de delai maxi et mini 1µS (+ quelques cycles..)
Pour faire des delais plus long , on peut rajouter un compteur qui va tester les debordement Timer ..
et donc maxima tempo ..presque infini
Il est preferable d'armer un flag dans l'interrupt Timerx
plutot que de faire le traitement à l'interieur de celle ci, surtout si le traitement risque d'etre
plus long que l'intervalle d'interruption..
pour des actions breve ex: basculer une led ( duree < 1µS) , aucune importance.
source MikroC
fichier excel
voir aussi sur le site Mikroe le programme :TimerCalculator.exe
128µS , ce n'est que pour 1 tour du timer ...
Pour bien utiliser un timer , la 1ere chose est de bien definir quelle est la
frequence FOSC.. donc la duree d'un cycle MCU
Cela devient assez problematique avec les PIC 18F45xxx le 5 definissant qu'il a un port USB.
et donc plein de combinaison possibles pour FOSC .. avec la PLL et L'USB.
Sous mikroC, la config des bits (de config) est donc primordiale.
Cette config peut etre sauvegardee dans un fichier 18F45xx.cfgsch
Ensuite le timer0 ,en particulier, peut etre utilisé en mode 8 bits ou 16 bits..
Autant l'utiliser en mode 16 bits , ce qui donne une tres large possibilité de reglage.
On peut l'utiliser en mode pooling ...mais peut d'interret si on bloque 100% de la puissance MCU
pour faire une tempo.. autant la faire avec une boucle de comptage ..
Le mode INTERRUPT est le plus approprié pour utiliser les timers.
De preference , faire une initialisation detaillée du Timer0
pour mieux comprendre tous les paralmetres qui y sont associés.
La lecture de la D.S. du PIC est essentielle aussi !
Le HARDWARE du PIC doit etre prealablement initialisé.
et l'autorisation d'interruption faite au dernier moment .
Le timer 0 , à FOSC 8MHz peut permettre jusqu'à 8,3 sec de delai maxi et mini 1µS (+ quelques cycles..)
Pour faire des delais plus long , on peut rajouter un compteur qui va tester les debordement Timer ..
et donc maxima tempo ..presque infini
Il est preferable d'armer un flag dans l'interrupt Timerx
plutot que de faire le traitement à l'interieur de celle ci, surtout si le traitement risque d'etre
plus long que l'intervalle d'interruption..
pour des actions breve ex: basculer une led ( duree < 1µS) , aucune importance.
source MikroC
fichier excel
voir aussi sur le site Mikroe le programme :TimerCalculator.exe
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Timer0 avec MikroC
Bonsoir,
j'avais posté sur Futura la procédure détaillée pour manipuler le timer0 en interruption, il suffit que tu reprennes point par point, à l'époque je t'avais dit que tu pouvais tout récupérer et le poster ici.
Paulfjujo a dit ce qu'il y avait à dire, si ça ne fonctionne toujours pas postes ton code complet qu'on puisse regarder de plus près.
Le mieux étant pour un problème donné de toujours poster un schéma, un code et de donner le max d'infos ça fait gagner du temps à tout le monde.
Il n'y a pas de différence de fonctionnement que ce soit en C ou en assembleur au passage, c'est même plus simple de le rédiger en assembleur quand on sait comment un PIC fonctionne.
Dans la pratique on écrit les fonctions bas niveau en assembleur et l'applicatif en C.
@+
j'avais posté sur Futura la procédure détaillée pour manipuler le timer0 en interruption, il suffit que tu reprennes point par point, à l'époque je t'avais dit que tu pouvais tout récupérer et le poster ici.
Paulfjujo a dit ce qu'il y avait à dire, si ça ne fonctionne toujours pas postes ton code complet qu'on puisse regarder de plus près.
Le mieux étant pour un problème donné de toujours poster un schéma, un code et de donner le max d'infos ça fait gagner du temps à tout le monde.
Il n'y a pas de différence de fonctionnement que ce soit en C ou en assembleur au passage, c'est même plus simple de le rédiger en assembleur quand on sait comment un PIC fonctionne.
Dans la pratique on écrit les fonctions bas niveau en assembleur et l'applicatif en C.
@+
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 110 invités