Revision 52 branch/bacher/Emb_App/programme_principal_etud.c
programme_principal_etud.c | ||
---|---|---|
123 | 123 |
int retour=0; //contient la valeur retourner par le p?riph |
124 | 124 |
int k=1; //contient le gain du correcteur |
125 | 125 |
int valeur=0; //contient la valeur ? envoyer |
126 |
|
|
126 |
|
|
127 |
|
|
128 |
void asserv0() |
|
129 |
{ |
|
130 |
CanFrame comm; |
|
131 |
CanFrame demande; |
|
132 |
CanFrame reponse; |
|
133 |
while(1){ |
|
134 |
|
|
135 |
demande.data.id='R'; |
|
136 |
demande.data.rtr=1; |
|
137 |
|
|
138 |
snd_dtq (CanTx,demande.msg); // Interrogation du peripherique |
|
139 |
rcv_dtq (CanRx,&reponse.msg); // Attente de la reponse |
|
140 |
retour=reponse.data.val; // contient la valeur de retour du simulateur. |
|
141 |
|
|
142 |
comm.data.id='T'; |
|
143 |
comm.data.rtr=0; |
|
144 |
comm.data.val=valeur; |
|
145 |
snd_dtq (CanTx,comm.msg); //on envoie la modification ? effectuer |
|
146 |
if(retour!=cons) valeur=k*(cons-retour); |
|
147 |
|
|
148 |
} |
|
149 |
} |
|
127 | 150 |
void main() |
128 | 151 |
{ |
129 |
CanFrame comm; |
|
130 |
CanFrame demande; |
|
131 |
CanFrame reponse; |
|
152 |
|
|
132 | 153 |
|
133 | 154 |
ports_mcu(); |
134 | 155 |
lcd_init(); |
... | ... | |
141 | 162 |
|
142 | 163 |
sta_cyc(ID_acqui); |
143 | 164 |
// sta_tsk(ID_periph_rx); |
144 |
|
|
165 |
sta_tsk(ID_asserv0); |
|
166 |
|
|
145 | 167 |
while(1) |
146 | 168 |
{ |
147 | 169 |
//LED_J=1; |
148 | 170 |
//dly_tsk(100); |
149 | 171 |
//LED_J=0; |
150 | 172 |
//dly_tsk(100); |
151 |
demande.data.id='R'; |
|
152 |
demande.data.rtr=1; |
|
153 |
|
|
154 |
snd_dtq (CanTx,demande.msg); // Interrogation du peripherique |
|
155 |
rcv_dtq (CanRx,&reponse.msg); // Attente de la reponse |
|
156 |
retour=reponse.data.val; // contient la valeur de retour du simulateur. |
|
157 |
|
|
158 |
comm.data.id='T'; |
|
159 |
comm.data.rtr=0; |
|
160 |
comm.data.val=valeur; |
|
161 |
snd_dtq (CanTx,comm.msg); //on envoie la modification ? effectuer |
|
162 |
|
|
163 |
if(retour!=cons) valeur=k*(cons-retour); |
|
164 |
|
|
165 |
|
|
166 | 173 |
|
167 | 174 |
} |
168 | 175 |
} |
Also available in: Unified diff