Writing /var/lib/dokuwiki/data/meta/teaching/ie0624/actividad_stm32_timer_uart.meta failed
teaching:ie0624:actividad_stm32_timer_uart
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
teaching:ie0624:actividad_stm32_timer_uart [2018/10/29 20:26] – dgarcia | teaching:ie0624:actividad_stm32_timer_uart [2022/09/20 00:08] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 84: | Line 84: | ||
| | ||
void system_init(void) { | void system_init(void) { | ||
- | rcc_clock_setup_hsi(& | + | rcc_clock_setup_hsi(& |
leds_init(); | leds_init(); | ||
} | } | ||
Line 138: | Line 138: | ||
| | ||
/* Reset TIM1 peripheral. */ | /* Reset TIM1 peripheral. */ | ||
- | timer_reset(TIM1); | + | |
+ | rcc_periph_reset_pulse(RST_TIM1); | ||
| | ||
/* Timer global mode: | /* Timer global mode: | ||
Line 234: | Line 235: | ||
==== Opcional ==== | ==== Opcional ==== | ||
+ | |||
+ | En esta parte opcional se logrará reproducir una pieza simple con el STM. Necesita el STM32F3 Discovery, un [[https:// | ||
* Cree la función '' | * Cree la función '' | ||
* Cree la función '' | * Cree la función '' | ||
- | * A continuación se muestra | + | |
+ | | ||
<code C> | <code C> | ||
+ | /* | ||
+ | * delay(time_ms) | ||
+ | * Waits a certain amount of mili seconds | ||
+ | * time_ms: integer with the miliseconds to wait | ||
+ | * | ||
+ | * Example: delay(100); | ||
+ | * Will wait for 100 miliseconds | ||
+ | */ | ||
+ | void delay(uint32_t time_ms); | ||
+ | | ||
+ | /* | ||
+ | * tone(port, pin, frequency, duration) | ||
+ | * Sends a square signal to the port/pin at the specified frequency, for duration miliseconds | ||
+ | * port: Port at which the signal must be sent | ||
+ | * pin: The pin that should be used | ||
+ | * frequency: Frequency in Hz of the desired signal | ||
+ | * duration: duration of the tone in miliseconds | ||
+ | * | ||
+ | * Example: tone(GPIOE, GPIO09, 440, 100); | ||
+ | * Will generate a sqare signal at pin E9, for 100 milisceonds at 440Hz | ||
+ | */ | ||
+ | void tone(uint32_t gpioport, | ||
+ | | ||
+ | /* | ||
+ | * song() | ||
+ | * Reproduces a song | ||
+ | * | ||
+ | * Eample: song() | ||
+ | * Reproduces a song | ||
+ | */ | ||
+ | void song(void); | ||
+ | </ | ||
- | * recuerde crear el archivo timer.h con las definiciones | + | * También se incluye la implementación |
- | * Compile y corra dicho program. **1) Describa lo que sucede** | + | |
- | * Comente | + | |
- | </ | + | <code C> |
+ | void song(void) { | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(100); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(550); | ||
+ | tone(9, | ||
+ | delay(575); | ||
+ | |||
+ | tone(9, | ||
+ | delay(450); | ||
+ | tone(9, | ||
+ | delay(400); | ||
+ | tone(9, | ||
+ | delay(500); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(330); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(200); | ||
+ | tone(9, | ||
+ | delay(200); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(350); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(500); | ||
+ | |||
+ | tone(9, | ||
+ | delay(450); | ||
+ | tone(9, | ||
+ | delay(400); | ||
+ | tone(9, | ||
+ | delay(500); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(330); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(200); | ||
+ | tone(9, | ||
+ | delay(200); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(350); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(500); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(100); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(100); | ||
+ | tone(9, | ||
+ | delay(220); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(100); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(100); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(100); | ||
+ | tone(9, | ||
+ | delay(420); | ||
+ | |||
+ | tone(9, | ||
+ | delay(450); | ||
+ | |||
+ | tone(9, | ||
+ | delay(420); | ||
+ | |||
+ | tone(9, | ||
+ | delay(360); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(100); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(100); | ||
+ | tone(9, | ||
+ | delay(220); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(100); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(100); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(100); | ||
+ | tone(9, | ||
+ | delay(420); | ||
+ | |||
+ | tone(9, | ||
+ | delay(450); | ||
+ | |||
+ | tone(9, | ||
+ | delay(420); | ||
+ | |||
+ | tone(9, | ||
+ | delay(360); | ||
+ | |||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | |||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(350); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(350); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(600); | ||
+ | |||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(350); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(550); | ||
+ | |||
+ | tone(9, | ||
+ | delay(325); | ||
+ | tone(9, | ||
+ | delay(600); | ||
+ | |||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(350); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(350); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(600); | ||
+ | |||
+ | tone(9, | ||
+ | delay(150); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(100); | ||
+ | tone(9, | ||
+ | delay(300); | ||
+ | tone(9, | ||
+ | delay(550); | ||
+ | tone(9, | ||
+ | delay(575); | ||
+ | } | ||
+ | </ | ||
===== Referencias ===== | ===== Referencias ===== | ||
teaching/ie0624/actividad_stm32_timer_uart.1540844764.txt.gz · Last modified: 2022/09/20 00:08 (external edit)