Electromag1 Circuits électroniques et Picaxes

Petit site pour ceux qui bricolent en électronique en général et sur les PICAXES en particulier.
Les PICAXES sont des microprocesseurs (PIC de Microship) programmables en BASIC. Pleins de qualités, pas chers, ultra faciles à programmer.
Tout (ou presque) est sur le site du distributeur Gotronic (voir les liens).
Les pages  seront ajoutées ou modifiées petit à petit.
Dans le but d'améliorer ce blog, communiquez moi vos remarques et les erreurs que vous pouvez constater.
Pour me contacter: Envoyez un mail à l'adresse : mag1mic@free.fr .  Tout message reçoit une réponse
Pour retourner au menu, Cliquer sur "LISTE DES PAGES", ici ou en haut de la colonne de gauche
Pour laisser un message, allez dans le "LIVRE D'OR"
Bonne visite
 
 

Horloge fille IBM

L'horloge suisse décrite sur cette page demande des pulses positifs et négatifs de 24V alternés toutes les 30 secondes;
L'horloge IBM ci dessous demande des pulses positifs de 24V toutes les minutes.
Cette page fait suite à cette demande de mirdeni:
La version proposée est aussi cadencée par le comptage des alternances secteur.

Le schéma:
Le transfo utilisé est un 2x6v de 3W: Il est bien précisé que la tension à vide est de 10V par enroulement. En fait, après le redressement et la charge que représente le µC picaxe 08M2, la tension obtenue est de 24V.
Il y a toutefois un problème: le comptage doit se faire en continu pour ne perdre aucune alternance, le plus sûr est d'utiliser une interruption. Mais il faut envoyer un pulse (une valeur de 200ms semble convenir) sur une sortie.
Deux solutions pour le pulse:
Une pause, mais l'interruption intervient toute les 20ms et le retour saute la pause au bout de 20ms max.
Un pulsout, mais la commande suspend l'interruption et le comptage des alternances.
Le choix est finalement l'utilisation d'un programme "multitâches" de quatre tâches:
Une tâche pour le comptage, une pour le pulse horloge, une pour la mise à l'heure coup par coup, une dernière pour la mise à l'heure rapide.


Le programme:
;Horloge fille IBM MM 24/03/23
;façon multitâches
start0:    
#picaxe 08M2
#no_data
symbol entr=pinC.3
symbol coup=pinC.1
symbol rapid=pinC.2
symbol potar=C.4
symbol IBM=C.0
symbol Npuls=w13
symbol tpuls=w12
symbol Nmax=w11
symbol comp=b1
symbol minut=w9
    dirsC=%00001    ;
    pullup %1110    ;pullup sur C.1,2,3,    
    tpuls=200    ;temps de pulse 20000=>200000µs=200ms
    Nmax=3000     ;pour 1 mn: 50 x 60=3000
    low IBM
    pause 500    ;pour démarrer en douceur à la mise sous tension
    do            ;boucle principale avance minute            
        if Npuls>=Nmax then  ; passage de la minute 3000 pulses    
            Npuls=0;     ;RAZ compteur                
            inc minut
            if minut>=15 then
                readadc potar,comp    ;o à 255
                comp=comp/10        ;0 à 25
                Npuls = comp    ;
                minut=0
            endif            
            high IBM:pause tpuls:low IBM
        endif
    loop    
start1:        ;avance coup par coup
    pause 500
    do
        do loop while coup=1    ;attente coup=0  
        high IBM:pause tpuls:low IBM                
        do loop while coup=0    
        Npuls=0    ;RAZ compteur
    loop
rem
start2:        ;avance rapide
    pause 500    
    do
        do loop     ;attente rapid=0        
        do                
            high IBM:pause tpuls:low IBM
            pause 500        ;temps entre 2 pulses (à confirmer)            
        loop while rapid=0
        Npuls=0        
    loop    
start3:    ;comptage alternances
    pause 500
    Npuls=0        ;init compteur Npuls
    do
        do loop while entr=1    ;on attend le passage à 0
        do loop while entr=0    ;on est à 0, on attend 1
        inc Npuls                ;on est à 1, on compte        
    loop



 



Créer un site
Créer un site