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 та окрема бібліотека для використання в інших проектах. Автор оригіналу статті просить задавати питання на його сайті німецькою або англійською мовами.
Прикреплені файли:
- ub_stm32f4_rng_v100_RUS.rar (4 Кб)
- Demo_11_RNG_RUS.rar (157 Кб)