I2_TP2x - IUT de Valence

reactionparadiseΗλεκτρονική - Συσκευές

7 Οκτ 2013 (πριν από 4 χρόνια και 2 μήνες)

115 εμφανίσεις


T
P

Informatique


I2



Page
1
/
2

TP


2

Les
communications

séries

Auteurs

:
André Lagrèze
-

Nicolas Fourty


Luc Pastorino


O
BJECTIF

Le but de ce TP est de
mettre en œuvre une liaison
série

RS232 entre un PIC 18F458
Microchip

et un ordinateur.

Nous illustrerons cette
liaison par un
écho

du
caractère

émis
depuis le terminal de l’ordinateur puis nous aborderons les fonctionnalités étendue
s
.
Par
ailleurs, nous garderons en tête que le code écrit dev
ra facilement être réu
tilisable.

E
XERCICE
1:

E
MISSION D

UN CARACTERE


On souhaite configurer la liaison série du
microcontrôleur

afin d’établir une liaison
bidirectionnelle RS232 au format suivant

: 1200 bauds, 8 bits de données, 1 bit de stop, pas
de parité, et pas de contrôle

de flux.

Rappel

: la fréquence de l’oscillateur vaut
4
MHz.

1.

A l’aide de la documentation du PIC 18F458, du TD et du cours, écrire une procédure

void Init_Liaison_Serie()

qui configurera correctement les registres du
microcontrôleur pour réaliser cette con
figuration.

2.

Ecrire une fonction
void emettre_caractere(char em_car)
qui permettra
l’envoi d’un caractère par la liaison série (utiliser le bit TXIF du registre PIR1).

3.

Ecrire un programme simple qui procède à l’initialisation du microcontrôleur, de la
liais
on série et qui envoie en boucle un caractère vers un terminal sur l’ordinateur
(Hyperterminal ou Terminal)

Attention, il faut configurer le terminal avec les paramètres de vitesse et format de votre
liaison série.


E
XERCICE
2

:

E
CHO

D

UN CARACTERE


1.

A
l’aide de la documentation du PIC 18F458, du TD et du cours, écrire une procédure

char recevoir_caractere()

qui permettra de recevoir un caractère par la liaison
série (utiliser le bit RCIF du registre PIR1).

2.

Ecrire un programme simple qui proc
ède à
l’initialisation du micro
contrôleur, de la
liaison série et qui reçoit un caractère et le retourne vers le terminal sur l’ordinateur


E
XERCICE
3

:

T
RANSMISSION

SERIE
,

CODE
ASCII

ET MASQUES

En vous aidant des programmes fournis aux différentes séances de TP
, écrire un programme
qui satisfait les conditions de fonctionnement suivantes

:

A partir de l’émission de caractère sur le port COM1 de votre poste de travail

depuis
une
fenêtre
Terminal

:

a)

La réception du caractère «

A

» sur la carte PICDEM 2PLUS doit all
umer la diode
Led0. La réception du caractère «

E

» doit alors l’éteindre.

b)

La réception du caractère «

Q

» permet de rentrer dans le mode
affichage

de
Quartet.


T
P

Informatique


I2



Page
2
/
2

Dans ce mode
on affiche sur les LED le quartet de poids fort ou de poids faible du
caractère tra
nsmis depuis l’ordinateur par une liaison série (1200,8,N,1)
.
Si par
exemple, on
tape
le caractère
‘A’ en ASCII

0x41 , les

deux quartet
s

pourront
être

‘4’
ou

’1’

. La sélection de l’un ou de l’autre se faisant à l’aide de l’interrupteur S2 (S2
appuyé quarte
t de poids fort, S2 relâché quartet de poids faible)
.

c)

La réception du caractère «

Q

» permet de quitter le mode «

Quartet

».

d)

S’il vous reste du temps

: La

réception du caractère «

C

»
(chenillard)
doit mettre en
allumage

successif l’ensemble des 4 LED
. Une

deuxième réception de ce même
caractère annule cette fonction.


C
OMPTE
-
RENDU



Listing des programmes en respectant
la structure
.

Votre code devra être abondamment commenté
, indenté

et chaque fonction devra être
parfaitement décrite et commentée dans son en
-
tête.

Les règles de rédaction et de programmation qui vous ont été fournies devront être
respectées.

(minuscules, majuscules, prototypes…
)