欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1853|回復: 3
打印 上一主題 下一主題
收起左側

有關STM32單片機隨機數的問題想請教一下

[復制鏈接]
跳轉到指定樓層
樓主
在stm32中產生一個隨機數就是一句話的事,利用中斷按鍵程序可以讓它變化得產生隨機數,那么如何讓它可以隔一段時間自動產生不同的隨機數自動變化得去顯示呢



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:883242 發表于 2021-7-26 00:04 | 只看該作者
沒什么好辦法,C51里面隨機函數是偽隨機數,但是人類按鍵動作跟定時器運行是完全不相關的,所以以按鍵時定時器的值來做隨機種子,偽隨機算法一樣可以獲得真隨機數。

但是你要定時自動生成,我就想不出能弄出真隨機數的辦法了。
回復

使用道具 舉報

板凳
ID:57657 發表于 2021-7-26 00:11 | 只看該作者
隨機數可以用哈希算法產生,比如md5、sha256,計算需要一定時間。
回復

使用道具 舉報

地板
ID:123289 發表于 2021-7-26 08:59 | 只看該作者
告訴你,我在工作中采用的方法:
1、一定要基于一個隨機的輸入事件。只要是與IO口相連接的,輸入無規律的都可以拿來作為隨機事件。
2、建立一個高速循環計數器N。
3、建立一組隨機數存儲單元R[]用于儲存隨機數,數組數量由你根據需要而定。
4、每當IO發生輸入事件時(輸入是隨機的),就將N存入R[]中,也是輪流循環復蓋存儲。
如此:R[]中的數字(或其中的幾位,例如N是16位的,而你只要取0-127,則取其中的任意7位即可)就作為隨機數,供你使用。
本方式的使用條件是:取隨機數速率,小于IO隨機事件發生的速率。
為何要用數組儲存呢?偶爾兩次取隨機數間隔時間,會小于IO口輸入事件的間隔時間。用數組可以先儲存一些隨機數(事件前產生的)。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表