Revision 262 branch/duvernois/Emb_App/programme_principal_etud.c

View differences:

programme_principal_etud.c
131 131
	int valsaut;
132 132
	int Gainroue=1;
133 133
	int consignevitesse=20;	
134
	int Nump;
134 135

  
135 136
void position ()
136 137
{	
......
195 196
	}
196 197
}
197 198

  
199

  
198 200
void saut()
201
{                
202
        //Tourelle periph[MAX_PERIPHS];
203
        
204
        CanFrame comm;
205
        CanFrame demande;
206
        UINT flag;
207
        
208
        while(1)
209
        {        
210
        demande.data.id='C'; 
211
        demande.data.rtr=1;
212
        periph[ADDR('C')].ev=0x01;
213
        snd_dtq(CanTx,demande.msg);        
214
                dly_tsk(10);        
215
        wai_flg(ev_periph,0x01,TWF_ANDW, &flag);
216
        valsaut=periph[ADDR('C')].val; 
217
        Gainroue=1;        
218
        consignevitesse=20;        
219
        
220
        if (valsaut ==0x5603)
221
        {
222
                Gainroue=0;
223
                consignevitesse=45;
224
        }
225
        if (valsaut ==0x4203)
226
        {
227
                Gainroue=1;
228
                consignevitesse=15;        
229
        }
230
        comm.data.id='V';
231
        comm.data.rtr=0;
232
        comm.data.val=consignevitesse;
233
        snd_dtq (CanTx,comm.msg);
234
        dly_tsk(100);
235
        }
236
}
237

  
238
void Piste()
199 239
{		
200
	//Tourelle periph[MAX_PERIPHS];
201
	
202

  
203
	CanFrame comm;
204 240
	CanFrame demande;
205 241

  
206 242
	UINT flag;
207 243
	
208 244
	while(1)
209 245
	{	
210
	demande.data.id='C'; 
246
	demande.data.id='M'; 
211 247
	demande.data.rtr=1;
212
	periph[ADDR('C')].ev=0x01;
248
	periph[ADDR('M')].ev=0x01;
213 249
	snd_dtq(CanTx,demande.msg);	
214 250
		dly_tsk(10);	
215 251
	wai_flg(ev_periph,0x01,TWF_ANDW, &flag);
216
	valsaut=periph[ADDR('C')].val; 
217
	Gainroue=1;	
218
	consignevitesse=20;	
219
	
220
	if (valsaut ==0x5603)
221
	{
222
		Gainroue=0;
223
		consignevitesse=45;
252
	Nump=periph[ADDR('M')].val; 
224 253
	}
225
	if (valsaut ==0x4203)
226
	{
227
		Gainroue=1;
228
		consignevitesse=15;	
229
	}
230

  
231
	comm.data.id='V';
232
	comm.data.rtr=0;
233
	comm.data.val=consignevitesse;
234
	snd_dtq (CanTx,comm.msg);
235
	dly_tsk(100);
236
	}
237 254
}
238 255

  
256

  
257

  
239 258
	
240 259
void main()
241 260
{
......
248 267
    clavier_init(1);
249 268
	capture_init();
250 269

  
251
	sta_cyc(ID_acqui);
270
	sta_cyc(ID_acqui);
271
	
252 272
	sta_tsk(ID_periph_rx);
273
	sta_tsk(ID_Piste);
253 274
	sta_tsk(ID_tourelle);
254 275
	dly_tsk(2000);
255 276
	sta_tsk(ID_position);

Also available in: Unified diff