FEU DE CARREFOUR
Transcription
FEU DE CARREFOUR
FEU DE CARREFOUR Compétences associées C2 : Générer un programme et l’implanter dans le système cible CI3 : Analyser des constituants d’un système réel d’un point de vue structurel et comportemental. Thème sociétal : la sécurité Objectif du TP Vous connaissez tous votre code de la route. Les feux de carrefours ne doivent plus être un secret. Ces feux de carrefour peuvent être gérés par microcontrôleur. On vous demande, dans ce TP, de créer un programme et de l'implanter dans un microcontrôleur PIC. Votre programme devra être d'abord rédigé sous forme d'algorithme. Pour vérifier votre programmation, celui-ci sera implanté dans une carte Easy PIC 4 et permettra de visualiser l'allumage des feux. Détail du programme à produire Le jour, le feu fonctionne normalement. o Le temps de passage des voitures, pour le TP, est de 5 s. o Avant qu'une voie passe au vert, tous les feux sont rouges 1 s. o Le feu orange est allumé 1s. La nuit, le feu est clignotant avec une période de 2s. Le capteur nuit/jour sera modélisé par un contacteur Le programme sera réalisé à l'aide du logiciel Flowcode. Pour plus de simplicité une esquisse de celui-ci vous est donné dans le fichier "Feu Carrefour.fcf" Carte EASY PIC 4 La carte Easy pic4 est une carte sur laquelle on peut placer différentes puces PIC. Son avantage est que toutes les entrées-sorties que vous voyez y sont connectées, il sera donc inutile de réaliser les branchements nécessaires nous-mêmes. Attention, le programme Flowcode devra être configuré pour la puce présente (à vous de voir son type) SSII MERMOZ Les différentes LED sont déjà connectées à des sorties de la puce, vous veillerez à bien choisir celles-ci dans votre programme. TP FEU de CARREFOUR Page 1 sur 2 Alléger le programme Pour alléger un peu le programme, il est possible de piloter plusieurs sorties en même temps en utilisant non pas un appel à routine mais une sortie. En pilotant un port complet, on peut mettre plusieurs sorties à l'état 1 en donnant une valeur. Les sorties à l'état 1 sont définies par le code hexadécimal de la valeur donnée. Exemple : À une sortie sur port B, on assigne une valeur de 48. 48 = $ 1 1 0 0 0 0 les bits de rang 5 et 6 à l'état 1, B0=0 B1=0 B2=0 B3=0 B4=1 B5=1 Soit B5 et B4 à l'état 1. Conseil, disposez vos sorties comme ceci : 1 2 3 4 Port A Port B SSII MERMOZ Port C TP FEU de CARREFOUR Page 2 sur 2