Home » Archives for macerobotics » Page 6

Author: macerobotics

Contrôle d’une led avec un µC STM32

Exemple de contrôle d’une led sur le port PE8 avec un microcontrôleur STM32F407 :

[pastacode lang=”c” manual=”void%20led_init(void)%0A%7B%0AGPIO_InitTypeDef%20GPIO_InitStruct%3B%0A%0A%09%20%20%2F%2F%20configuration%20en%20sortie%0A%09%20%20GPIO_InitStruct.Pin%20%3D%20GPIO_PIN_8%3B%0A%09%20%20GPIO_InitStruct.Mode%20%3D%20GPIO_MODE_OUTPUT_PP%3B%0A%09%20%20GPIO_InitStruct.Pull%20%3D%20GPIO_NOPULL%3B%0A%09%20%20GPIO_InitStruct.Speed%20%3D%20GPIO_SPEED_FREQ_LOW%3B%0A%09%20%20HAL_GPIO_Init(GPIOE%2C%20%26GPIO_InitStruct)%3B%0A%0A%7D%0A%0Avoid%20led_control(GPIO_PinState%20state_led)%0A%7B%0A%09HAL_GPIO_WritePin(GPIOE%2C%20GPIO_PIN_8%2C%20state_led)%3B%0A%7D%0A%0Avoid%20led_toggle(void)%0A%7B%0A%20%20HAL_GPIO_TogglePin(GPIOE%2C%20GPIO_PIN_8)%3B%0A%7D” message=”” highlight=”” provider=”manual”/]

 

Gestion du buzzer et de la led RGB

Un tutoriel pour gérer le buzzer et le led RGB du robot mobile MRPiZ (version 0.8) en langage C.

Exemple n°1 : faire du bruit

Un exemple pour utiliser le buzzer :

[pastacode lang=”c” manual=”%23include%20%22MRPiZ.h%22%0A%0A%0Aint%20main(int%20argc%2C%20char*%20argv%5B%5D)%0A%7B%0A%0A%20%20init()%3B%0A%0A%20%20buzzer(100)%3B%20%2F%2F%20fr%C3%A9quence%20de%20100%20Hz%0A%0A%20%20sleep(3)%3B%0A%0A%20%20buzzer(200)%3B%20%2F%2F%20fr%C3%A9quence%20de%20200%20Hz%0A%0A%20%20sleep(3)%3B%0A%0A%20%20buzzer(0)%3B%0A%7D” message=”” highlight=”” provider=”manual”/]

  • frequency : fréquence du signal
buzzer(frequency)

Exemple n°2 : faire de la lumière

Un exemple pour utiliser la led RGB :

 

[pastacode lang=”c” manual=”%23include%20%22MRPiZ.h%22%0A%0A%0Aint%20main(int%20argc%2C%20char*%20argv%5B%5D)%0A%7B%0A%0A%20%20init()%3B%0A%0A%20%20while(1)%0A%20%20%7B%0A%0A%20%20%20%20ledRGB(1%2C0%2C0)%3B%0A%0A%20%20%20%20sleep(3)%3B%0A%0A%20%20%20%20ledRGB(0%2C1%2C0)%3B%0A%0A%20%20%20%20sleep(3)%3B%0A%0A%20%20%20%20ledRGB(0%2C0%2C1)%3B%0A%0A%20%20%20%20sleep(3)%3B%0A%20%20%7D%0A%7D” message=”” highlight=”” provider=”manual”/]

  • red, green, blue :
    • 0 : off
    • 1 : on
ledRGB(red, green, blue)