单片机-产生随机数-无AD无EEPROM无按键-Ask For Help

2020-02-06 10:34发布

一款小商品上需要用到低成本的单片机,于是我选用PIC12F509的替代单片机麦肯的”MDT10P509“,单价在0.5¥左右。
该产品是超再生无线控制的,所以需要编码。
这就涉及到一个问题:1千个产品,用同一个程序怎么实现不一样的编码(或者说多个产品放在一起用怎么不会相互干扰?)。

选用的这款低成本的单片机:没有AD,没有EEPROM,所以无法从外部引入一个种子变量。

用户在给产品上电时,单片机产生一个随机数,用这个随机数去编码(只需要单片机上电时产生一次随机数就可以了)。

我目前的思路是:利用软件延时和定时器延时的时间差不一样来产生一个随机数(即软件延时的时间有误差)。
可是我用STM80ss3的单片机试了下,单片机每次上电发送的串口数据都是一样的(由于PIC12单片机还不是很熟悉,所以先用STM8S单片机试一下能不能产生随机数)。

还望各位前辈不吝赐教!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
32条回答
wang479871
1楼-- · 2020-02-09 07:51
 精彩回答 2  元偷偷看……
棋间卒
2楼-- · 2020-02-09 11:13
dadatou 发表于 2014-6-7 15:53
用一个IO口,外面加一个RC电路,R接电源,C接地,开机IO输出低一段时间,使C的电放完,然后将IO变为输入, ...

RC固定,还是随机的吗?RC一样,充电时间不是差不多的吗
dadatou
3楼-- · 2020-02-09 11:22
棋间卒 发表于 2014-6-9 09:47
RC固定,还是随机的吗?RC一样,充电时间不是差不多的吗

利用元器件的差异啊,另外定时器的时钟足够快。
棋间卒
4楼-- · 2020-02-09 16:15
dadatou 发表于 2014-6-9 10:02
利用元器件的差异啊,另外定时器的时钟足够快。

哦,知道了,那定时越快,越具有随机性
geniuskim
5楼-- · 2020-02-09 21:58
wang479871 发表于 2014-6-9 09:32
“两个时钟”,您指的是单片机用两个时钟源吗?
我这个电路是用内部时钟 ...

内置外置都行啊,不过有内置的就比较省事了。

有的片子有多个RC振荡器,或者flash操作、ad操作有独立的时钟。
funnybow
6楼-- · 2020-02-09 23:45
 精彩回答 2  元偷偷看……

一周热门 更多>