51单片机c语言随机函数,[转载]51单片机中生成随机数

2023-11-09

随机数在单片机的应用中也是很多的,当然产生随机数的方法有很多,当中有一个就是利用单片机定时器,取出未知的定时器THX和TLX的值,再加以运算得到一个规定范围内的随机数值。这做法也是可行的。或者预先写好一个随机数表,然后进行取数据。也是可以的。等等

今天给大家介绍另外一个在单片机中产生随机数的方法。这里介绍的方法是利用C语言中rand();函数来产生随机数。

大家可以打开KeilC51HLP文件夹下的C51lib.chm文件索引“rand”,看一下该函数的解释和使用方法。

我这里简单跟大家介绍一下rand()函数

rand()函数生成一个0~32767之间的的伪随机数,函数运行完后将返回这个伪随机数,另外还可以看到void srand(int

seed);

void srand(int seed);

函数可以设置一个初值,然后调用rand()函数生成一个初值与32767之间的随机数。如:

int a;

srand(500);

a=rand();

这时,a的值将是500~32767之间的一个随机数

文章来源:http://www.jhmcu.com/how-to-generate-random-numbers-in-the-single-chip/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

51单片机c语言随机函数,[转载]51单片机中生成随机数 的相关文章

  • 数据库配置时useUnicode=true&characterEncoding=UTF-8

    数据库连接时经常会写到 jdbc url jdbc mysql localhost 3306 db1 useUnicode true characterEncoding UTF 8 添加的作用是 指定字符的编码 解码格式 例如 mysql数
  • mvvm设计模式总结

    要了解mvvm 首先要了解mvc和mvp 我们也先简单说一下mvc和mvp MVC MVC全名是Model View Controller 是模型 model 视图 view 控制器 controller 的缩写 一种软件设计典范 用一种业
  • HyperLedger Fabric实战(一):基础环境构建

    1 简介 本文档说明了HyperLedger Fabric 1 4 0版本的区块链网络搭建所需的基本环境组件以及安装流程 最后再记录了安装过程中可能会遇到的一些问题 采用的操作系统为ubuntu 18 04 具有参考价值的网站 Hyperl
  • PAT初级1015德才论(C++)

    PAT初级1015德才论 C 代码 include
  • FreeRtos队列,队列集合学习使用

    我们都知道队列可以进行消息的管理 比如在一个task中发消息 另一个task监听队列中是否有消息 这样比读flag的效率要高很多 更好的利用资源 一 介绍一下接下来需要使用到的接口函数 创建队列 使用的是xQueueCreate uxQue
  • Redis-入门与springboot整合

    Redis入门 一 Redis基础命令 二 常用数据类型 1 String类型 2 List类型 3 Set集合 4 hash集合 5 Zset集合 三 Redis发布和订阅 四 新数据类型 1 Bitmaps 2 HyperLogLog
  • Java常用类:System类

    文章目录 System类概述 1 arraycopy 方法 概述 语法 举例 2 currentTimeMillis 方法 概述 语法 举例 3 gc 方法 概述 语法 举例 4 exit int status 方法 概述 语法 举例 Sy
  • openwrt18.06.4配置strongswan对接山石网科(hillstone)记录①

    首先感谢https blog csdn net d9394952 article details 90734469 原贴作者 摸索了一个礼拜 将过程记录如下 首先将路由器连上网 更新opkg root OpenWrt ping www ba
  • aivms--CentOS7.6安装/JDK1.8/ThingsBoard CE /PostgreSQL

    先决条件 yum install y nano wget yum install y https dl fedoraproject org pub epel epel release latest 7 noarch rpm 1 安装JDK8
  • Catowice City【Codeforces 1248 F】【BFS】

    Codeforces Round 594 Div 2 F 一开始是听闻有人说这是一道Tarjan好题 然后就点进来做了 但是想来想去 却想了个另类的法子 我们可以看到 如果N个人都要选择的话 那么每个人都只能是审判者 或者是参赛者 所以 我
  • hutool工具常用API

    hutool工具常用API 依赖 工具API 1 convert 2 DataUtil 3 StrUtil 4 ClassPathResource 5 ReflectUtil 6 NumberUtil 7 BeanUtil 8 CollUt
  • 使用C++11变长参数模板 处理任意长度、类型之参数实例

    变长模板 变长参数是依靠C 11新引入的参数包的机制实现的 一个简单的例子是std tuple的声明 template
  • Python六大基本数据类型介绍

    Python基本数据类型 一 数字型 一 整型 二 浮点型 三 布尔型 四 复数类型 二 字符串 三 列表 四 元组 五 集合 六 字典 一 数字型 一 整型 1 整型 int 在数字中 正整数 0 负整数都称为整型 例 intvar 10
  • 零知识证明zkSNARK

    最近接触学习零知识证明 很是头疼 没有一些背景知识 只能硬看了 而且也没有别的好方法 为什么要学习零知识证明 因为区块链的去中心化 导致信息都是公开透明的 比特币 以太坊 EOS等目前绝大部分项目区块链上的交易都是公开的 发送者的地址 金额
  • 试用版MindMaster思维导图转XMind方法分享

    在用MindMaster做导图的时候主题总是达到上限 于是想换成没有上限的XMind 就打算把已经做好的导图转到XMind上 现在网上的方法是通过导出docx文件或者复制大纲到word中然后再复制到XMind中 但受试用版限制 没办法导出w
  • 调用兄弟目录中的模块

    使用sys path append把父目录的加到模块搜索路径列表中即可 下面是具体原理分析 比如目前的目录结构如下 parDir dir1 test1 py dir2 test2 py 现在我需用在test1 py中导入dir2的test1
  • 合泰BS8116A-3触摸芯片开发踩坑指南

    一 硬件说明 引脚图 接线 说明 由于用到了唤醒检测 所以KEY16引脚用作IRQ中断唤醒功能 未使用引脚拉低 二 IIC配置说明 1 最大波特率 实际单片机配置最好不要设置波特率100Khz容易出错 50Khz就可以了 2 从机地址 注意
  • OpenCV基本知识

    1 OpenCV概述 1 什么是OpenCV 开源C C 计算机视觉库 面向实时应用进行优化 跨操作系统 硬件 窗口管理器 通用图像 视频载入 存储和获取 由中 高层API构成 为Intel 公司的 Integrated Performan
  • Vue ly-tab组件使用

    Vue ly tab组件的使用 目录 Vue ly tab组件的使用 安装 引入 使用 安装 这里使用指定版本安装 如果安装其他版本使用方法可能不一致 npm install ly tab 2 1 2 S 或者 cnpm install l

随机推荐

  • 深入理解采样定理 + Matlab 仿真 Sa 函数的采样与恢复

    建议配合国宝老师的视频食用 信号与线性系统分析 吴大正 郭宝龙 文章目录 1 采样的说明 1 为什么要取样 2 什么是取样 2 采样定理 1 为什么要有奈奎斯特频率 2 什么是采样定理 3 信号的恢复 4 Matlab的Sa函数取样仿真 1
  • nginx通过四层代理实现端口转发

    公司原有的测试数据库在主机192 168 10 5上边 现在数据库转移到了192 168 10 4上 为了不让各个地方都需要更改地址 现在需要一个四层代理工具 将原来请求到192 168 10 5的3306端口转发到192 168 10 4
  • ChatGPT数据泄露,技术细节公布

    事件发生后 OpenAI 临时关闭了 ChatGPT 服务以调查问题 后续 Open AI 的首席执行官 Sam Altman 也亲自发了推文 承认他们确实遭遇了重大问题 不过当时并没有公布问题的细节 只表示是一个开源库的错误导致的 由于一
  • 支持WIN7的VSCode版本

    我有台13年底买的电脑 装的WIN7 使用时发现 最新的VSCode已经不支持WIN7 目前VSCode官网上写的最低支持WIN8 经过确认 最后支持WIN7的版本是1 70 3 不论32位还是64位 都是这个版本
  • easyui 下拉框联动

    supplierCode combobox onChange function n o var supplierCodes n join ajax type post url pageContext request contextPath
  • 前端代码 录音样式 类似微信发送语音

    先来上图 wxml代码 不是小程序的就换成div
  • Python: 基于DearPyGUI的环境变量查看器

    文章目录 1 目的 2 效果 3 实现思路 获取环境变量 分隔环境变量取值 界面显示 4 代码实现 1 目的 无论是 Windows 还是 Linux 下 编辑环境变量总是绕不开的一个基本功 也许你已经熟练使用 vim 来查询和就地替换 P
  • npm下载依赖报错 Invalid dependency type requested: alias

    报这个是alias需要高版本的npm 查看一下npm版本 npm version alias这个好像得是6 9 0版本以上 我使用的是nvm管理node版本 我切换到12版本就可以了 成功安装 在此记录一下踩坑
  • 强化学习的模型

    文章目录 前言 一 强化学习是什么 二 基本模型 1 基本框架 2 学习过程 三 马尔科夫决策过程 Markov Decision Process MDP 1 马尔科夫性质 2 MDP的基本组成部分 3 MDP的基本流程 四 基于模型和免模
  • Tensorflow激活函数--tf.nn.dropout

    前言 激活函数 Activation Function 运行时激活神经网络中某一部分神经元 将激活信息向后传入下一层的神经网络 神经网络的数学基础是处处可微的 所以选取激活函数要保证数据输入与输出也是可微的 激励函数的作用 如果不使用激活函
  • 基于ARIMA算法的时间序列数据预测——matlab实现

    基于ARIMA算法的时间序列数据预测 matlab实现 时间序列分析是一种重要的数据分析方法 它可以对时间序列数据进行统计和预测 ARIMA Autoregressive Integrated Moving Average 是一种常用的时间
  • Spring boot ,dubbo整合异常

    Caused by java lang IllegalArgumentException java lang ClassCastException com guooo boot acc serv impl HelloDubboService
  • 5.39 综合案例2.0 - STM32蓝牙遥控小车2(语音控制)

    综合案例2 0 蓝牙遥控小车1 语音控制 成品展示 案例说明 器件说明 小车连线 小车源码 语音模块遥控 语音遥控连线 模块使用说明 1 MLT BT05 4 0 蓝牙模块 2 ASRPRO 2m模块 下载代码连线 模块编程说明 成品展示
  • css设置内外边框距离

    margin属性可以有一到四个值 p gt margin 25px 50px 75px 100px 上边距为25px 右边距为50px 下边距为75px 左边距为100px margin 25px 50px 75px 上边距为25px 左右
  • Ubuntu20.04 安装 Tomcat 9.0.34

    最近开始使用 Ubuntu 在上面安装 Tomcat了 记录一下 具体步骤和直接在 CentOS 上面的差不多 一 解压安装包 tar zxvf apache tomcat 9 0 34 tar gz 二 修改目录所有权 用ll命令查询 修
  • PAT——团体程序设计天梯赛-练习集(5分题集)Python 3

    该博客记录我参加天梯赛 1 Hello World print Hello World 2 计算摄氏温度 print fahr 100 celsius format int 5 100 32 9 3 计算指数 n int input pri
  • Webservice接口数据抽取_kettel<一>

    在进行ETl数据抽取的时 有时会遇到Webservice接口服务的情况 这里对kettel工具和java脚本两种抽取方式来简单的介绍一下 由于篇幅较长 我分四篇来介绍 下一篇地址 Webservice接口数据抽取 kettel lt 二 g
  • xml 入门 shema_01

    shema基础 shema的使用 shema的属性和语法 相应的源码 1 shema的格式
  • Java静态代理、动态代理(JDK代理、CGLIB代理)常见面试题

    小结 静态代理不灵活 静态代理类似模板方法设计模式 动态代理灵活 方便 每个框架都会使用到 例如 spring中的AOP 默认为JDK实现方式 也可选择CGLIB实现方式 JDK动态代理只能代理实现接口的类或者直接代理接口 限制 必须要有接
  • 51单片机c语言随机函数,[转载]51单片机中生成随机数

    随机数在单片机的应用中也是很多的 当然产生随机数的方法有很多 当中有一个就是利用单片机定时器 取出未知的定时器THX和TLX的值 再加以运算得到一个规定范围内的随机数值 这做法也是可行的 或者预先写好一个随机数表 然后进行取数据 也是可以的