STM32F4. Урок 11 - Генератор випадкових чисел

Дана бібліотека дозволяє отримати випадкові числа. Генератор випадкових чисел використовує для роботи центральний процесор. Дана функція дозволяє отримувати випадкове значення в заданому діапазоні чисел, наприклад, між 50 та 100.

Приклад роботи:

Вимоги:

   Підключені модулі CooCox-IDE: RNG.
   Підтримувані бібліотеки: відсутні.

Функції:

void UB_Rng_Init(void);                                         // ініціалізація генератора випадкових чисел
uint32_t UB_Rng_makeZufall(uint32_t minwert, uint32_t maxwert); // згенерувати випадкове число між мінімальним і максимальним значеннями

Приклад використання:

//--------------------------------------------------------------
// Файл     : main.c
// Дата     : 23.02.2013
// Версія   : 1.0
// Автор    : UB
// EMail    : mc-4u(@)t-online.de
// Web      : www.mikrocontroller-4u.de
// CPU      : STM32F4
// IDE      : CooCox CoIDE 1.7.0
// Модуль   : CMSIS_BOOT, M4_CMSIS_CORE
// Функція  : Демонстрація бібліотеки RNG (випадкові числа)
// Примітка  : Ці два файли повинні бути на 8MHz
//              "cmsis_boot/stm32f4xx.h"
//              "cmsis_boot/system_stm32f4xx.c"
//--------------------------------------------------------------

#include "main.h"
#include "stm32_ub_led.h"
#include "stm32_ub_rng.h"


void Delay(volatile uint32_t nCount)
{
  while(nCount--)
  {
  }
}


int main(void)
{
  uint32_t zufall;
  uint32_t n;

  SystemInit(); // Ініціалізація налаштувань кварца

  UB_Rng_Init(); // Ініціалізація генератора випадкових чисел
  UB_Led_Init(); // Ініціалізація світлодіодів

  while(1)
  {
	// згенерувати випадкове число від 3 до 8
    zufall=UB_Rng_makeZufall(3,8);
    // мигнути світлодіодом згенероване число раз
    for(n=0;n

В додатку проект CooCox та окрема бібліотека для використання в інших проектах. Автор оригіналу статті просить задавати питання на його сайті німецькою або англійською мовами.

Оригінал статті

Прикреплені файли:

Top