玩转X-CTR100 l STM32F4 l RNG硬件随机数发生器

我造轮子,你造车,创客一起造起来!塔克创新资讯【塔克社区 www.xtark.cn 】【塔克博客 www.cnblogs.com/xtark/ 】
本文介绍X-CTR100控制器 STM32F4硬件随机数发生器生成随机数功能,可用于滤波、算法加密、验证等问题。
原理
STM32F4自带了硬件随机数发生器(RNG),RNG处理器是一个以连续模拟噪声为基础的随机数发生器,在主机读数时提供一个32位的随机数。
STM32F4的随机数发生器框图。

例程
本例程实现产生任意随机数和0至99范围随机数,并串口输出显示。
硬件说明
硬件资源:
- 串口UART1
硬件连接:
使用MicroUSB数据线连接X-CTR100 COM接口。
软件生态
X-SOFT软件生态,X-API文件如下。
ax_rng.c——X-CTR100 硬件随机数产生器源文件
ax_rng.h——X-CTR100 硬件随机数产生器头文件
操作函数如下:
|
void AX_RNG_Init(void); //RNG初始化 int32_t AX_RNG_GetRandomNum(void); //RNG获取随机数 uint32_t AX_RNG_GetRandomNum_Range(uint32_t min, uint32_t max); //RNG获取范围内随机数 |
软件说明
主程序。
|
int main(void) { int32_t random;
/* X-CTR100初始化 */ AX_Init(115200); printf("***X-CTR100 RNG硬件随机数产生器例程***\r\n\r\n");
//模块初始化及配置 AX_RNG_Init();
while (1) { //获取任意随机数 random = AX_RNG_GetRandomNum(); printf("任意随机数:%d ", random);
//获取[0-99]任意随机数 random = AX_RNG_GetRandomNum_Range(0, 99); printf("随机数[0-99]:%d \r\n", random);
AX_Delayms(1000); AX_LEDG_Toggle(); } } |
实现效果
运行效果如下图所示。

玩转X-CTR100 l STM32F4 l RNG硬件随机数发生器的更多相关文章
- 玩转X-CTR100 l STM32F4 l ADC 模拟数字转换
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器 AD转换接 ...
- 玩转X-CTR100 l STM32F4 l MPU6050加速度陀螺仪传感器
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器 板载加速度 ...
- 玩转X-CTR100 l STM32F4 l X-CTR100与树莓派搭建机器人平台
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器与树莓派Linux系统 ...
- 玩转X-CTR100 l STM32F4 l 舵机控制
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器的舵机控制,X-CTR ...
- 玩转X-CTR100 l STM32F4 l DRV8825 A4988 步进电机控制
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器控制步进电机 ...
- 玩转X-CTR100 l STM32F4 l 基础例程printf、LED、蜂鸣器、拨码开关、位带操作
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器基础板载资源 ...
- 玩转X-CTR100 l STM32F4 l PS2无线手柄
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] SONY的PS2无线手柄是索尼游戏机的遥控手柄,控制 ...
- 玩转X-CTR100 l STM32F4 l DSP指令集性能测试
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器 DSP库的 ...
- 玩转X-CTR100 l STM32F4 l FPU单精度浮点性能测试
我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 本文介绍X-CTR100控制器如何开启ST ...
随机推荐
- 雷林鹏分享:jQuery EasyUI 窗口 - 自定义带有工具条和按钮的对话框
jQuery EasyUI 窗口 - 自定义带有工具条和按钮的对话框 您可以创建一个带有工具栏(toolbar)和按钮(button)的对话框(dialog),可以从 HTML 标记创建.这个教程描述 ...
- 雷林鹏分享:jQuery EasyUI 树形菜单 - 树形菜单拖放控制
jQuery EasyUI 树形菜单 - 树形菜单拖放控制 当在一个应用中使用树(Tree)插件,拖拽(drag)和放置(drop)功能要求允许用户改变节点位置.启用拖拽(drag)和放置(drop) ...
- 第十章 Call 和 Ret 指令
引言 想想程序之间的加载返回过程. call 和 ret 指令都是转移指令,它们都修改 IP,或同时修改 CS 和 IP. call 和 ret 经常被共同用来实现自程序的设计. 这一章,我们讲解 c ...
- tomcat启动问题,卡在 preparing launch delegate 100% 的解决方法
今天在打开eclipse中的tomcat时,每次用debug模式启动的时候总是会在preparing launch delegate到100%的时候卡主,起初以为是tomcat启动时间45s不够,于是 ...
- Spring Boot 获得帮助
如果你在使用 Spring Boot 的时候遇到了问题,我们很乐意为你提供帮助. 请访问 IX. How-to指南 中的内容 — 在这个指南中为常见的多数问题提供了解决方案. 学习更多有关 Sprin ...
- python生成随机整数
python生成随机不重复的整数,用random中的sample index = random.sample(range(0,10),10) 上面是生成不重复的10个从1~10的整数 python生成 ...
- spring boot(十七)上传文件
上传文件是互联网中常常应用的场景之一,最典型的情况就是上传头像等,今天就带着带着大家做一个Spring Boot上传文件的小案例. 1.pom包配置 我们使用Spring Boot最新版本1.5.9. ...
- 【其他】【服务器】【4】删除Windows系统中不想要的服务
步骤: 1,开始菜单栏查找“服务”,打开后找到想要删除的服务 2,右键单击想要删除的服务,选择“属性”-“常规”-“服务名称”,记下服务名称(AA) 3,开始菜单栏输入“cmd”打开命令行窗口,输入s ...
- stl中的for_each() 函数的注意事项
#include<iostream> using namespace std; #include"vector" #include"algorithm&quo ...
- 如何在VMware系统中的ubuntu16.04中建立与win7系统的共享文件夹
点击虚拟机设置一次得到如图所示 系统默认放在了 /mnt/hgfs文件夹 点击虚拟机安装vmware tools 解压vmware tools压缩包 运行sudo ./vmware-install.p ...