Moin,
bin gerade ein bisschen am Programmieren und habe mich gefragt, ob schon einer von euch es geschafft hat mit dem Jumper (JP1) zu arbeiten.
Da beide über den ADC gehen bin ich mir nicht sicher ob ich dann ein bit als Output (IO_INPUT_2) und den anderen dann mit adc_read(IO_INPUT_3) auslesen soll. Wenn ich beide auslese konnen da nicht die gleichen werte raus, und es hat nicht viel mit nicht/gejumpert zu tun
Code:adc_init(IO_INPUT_2_BIT); int j1=adc_read(IO_INPUT_2_BIT); char test[10]; sprintf(test,"%d",j1); gfx_move(0,55); gfx_print_text(test); adc_init(IO_INPUT_3_BIT); int j2=adc_read(IO_INPUT_3_BIT); char test2[10]; sprintf(test2,"%d",j2); gfx_move(50,55); gfx_print_text(test2);
und dann meine zweite frage:
Wie läuft bei euch copro_setTargetRel(r,l, spd), bzw copro_setTargetAbs(r,l,spd)?
denn bei mir wartet die funktion nicht solange bis sie den wert erreicht hat, sondern ich muss es mit nem delay/bzw while schleife machen.
Bspeigentlich habe ich auch schon mit "copro_setPositionParameters(6,5,7);" die Regelungsparameter gesetzt.Code:while(copro_ticks_r !=0){ copro_update(); if((copro_current_r |copro_current_l) >=16 && copro_speed_l<=0){ copro_stop(); run_display(); while (PIND&(1<<4)) { //warten auf Betätigung von S3 zum Starten delay(1500); PORTE=0xFF; //alle rot LEDs einschalten delay(100); PORTE=0x00; //alle rot LEDs ausschalten } } copro_setTargetRel(-101,-101, 10); //könnte hier ja genauso copro_setSpeed(-10,-10) nehmen }
ich hatte auch schon versucht mit "uint16_t copro_target_distance;" den fehler zu finden. dabei ist mir aufgefallen das die target_distance oft noch 0 ist.







Zitieren

Lesezeichen