summaryrefslogtreecommitdiff
path: root/2004/n/asserv/src/main.c
diff options
context:
space:
mode:
Diffstat (limited to '2004/n/asserv/src/main.c')
-rw-r--r--2004/n/asserv/src/main.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/2004/n/asserv/src/main.c b/2004/n/asserv/src/main.c
index e729ce4..d8f0622 100644
--- a/2004/n/asserv/src/main.c
+++ b/2004/n/asserv/src/main.c
@@ -54,9 +54,9 @@ A1-5 B2-7 C4-5 D2-6 E0-2
/* Configuration générale. */
#fuses H4,WDT,WDT128,PUT,NOBROWNOUT,NOLVP
-#use delay(clock=39321600)
+#use delay(clock=40000000)
#use rs232(baud=9600,xmit=PIN_C6,parity=N,rcv=PIN_C7,bits=8)
-#priority EXT,RDA,TBE,TIMER2
+#priority RB,RDA,TBE,TIMER2
#include "motor.c"
#include "serial.c"
@@ -69,18 +69,18 @@ main_init (void)
setup_psp (PSP_DISABLED);
/* Configuration de l'interface SPI : non utilisée. */
setup_spi (FALSE);
- /* Le timer0 est utilisé pour les pas en avant du moteur droit. */
+ /* Le timer0 est utilisé pour les pas du moteur gauche. */
setup_timer_0 (RTCC_EXT_L_TO_H | RTCC_8_BIT | RTCC_DIV_1);
- /* Le timer 1 est utilisé pour les pas en arrière du moteur gauche. */
- setup_timer_1 (T1_EXTERNAL | T1_DIV_BY_1);
+ /* Le timer1 est inutilisé. */
+ setup_timer_1 (T1_DISABLED);
/* Configuration du TIMER 2.
* Tpwm = (PR2 + 1) * 4 * Tosc * TMR2_prescale
* Fpwm = 20kHz
* Tint2 = TMR2_postscale * Tpwm
* Tint2 = 0,5ms
*/
- setup_timer_2 (T2_DIV_BY_4, 121, 10);
- /* Le timer3 est utilisé pour les pas en arrière du moteur droit. */
+ setup_timer_2 (T2_DIV_BY_4, 124, 10);
+ /* Le timer3 est utilisé pour les pas du moteur droit. */
setup_timer_3 (T3_EXTERNAL | T3_DIV_BY_1);
/* Désactivation de l'ADC. */
setup_adc_ports (NO_ANALOGS);
@@ -91,9 +91,10 @@ main_init (void)
set_pwm1_duty (0);
set_pwm2_duty (0);
/* Configuration des interruptions activées. */
- enable_interrupts (INT_EXT);
enable_interrupts (INT_TIMER2);
enable_interrupts (INT_RDA);
+ disable_interrupts (INT_TBE);
+ enable_interrupts (INT_RB);
enable_interrupts (GLOBAL);
}
@@ -101,8 +102,8 @@ void
main (void)
{
delay_ms (20);
+ main_init ();
motor_init ();
serial_init ();
- main_init ();
motor_main ();
}