首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 单片机栏
ATmega1 28单片机的真随机数发生矗
来源:本站整理  作者:佚名  2009-12-16 15:39:00



1.2 方 法
1.2.1 RC电路充放电过程
    I/O口配置策略为:PG3 口(第18脚)作为充电输出口,PG4 口(第19脚)作为检测输入口。当PG3输出为高时,输出电流通过电阻对电容进行充电;当PG3输出为低时,电容通过电阻放电。PG4用于检测电容上的电平状态。充放电过程如图2所示。

1.2.2 AVR单片机获得不确定的2位二进制数据
    AVR单片机主时钟采用普通晶体振荡器。用该主时钟来测量RC电路的充放时间,用AVR单片机的定时器(1个16位定时器)来量化充放电时间。由于主时钟的周期远远小于RC充放电时间,观察实验数据,最低2位二进制有效数字具有不确定性。以下为AVR单片机定时器对外部RC电路进行3次充电和2次放电所花时间的量化值:
    1597 1588 1584 1588 1588
    1589 1588 1589 1584 1589
    1589 1589 1589 1584 1589
    1584 1588 1588 1588 1588
    1588 1588 1589 1589 1587
    1596 1588 1588 1589 1589
    1589 1588 1588 1588 1589
    1588 1584 1589 1589 1589
    1589 1589 1588 1588 1588
    1588 1589 1588 1588 1588
    1588 1584 1589 1588 1588
    1588 1589 1589 1588 1589
    1589 1589 1588 1588 1588
    1588 1588 1589 1588 1590
    1588 1589 1588 1588 1588
    1597 1589 1588 1597 1587
    1588 1588 1587 1588 1588
    1588 1588 1588 1588 1588
    1589 1589 1589 1588 1589
    1588 1588 1589 1588 1588
    1588 1588 1588 1588 1588
    1588 1588 1589 1588 1589
    1596 1589 1588 1589 1588
    1588 1588 1588 1589 1584
    1589 1589 1589 1588 1585
    1589 1588 1588 1588 1589
    1589 1588 1589 1588 1588
    1589 1589 1589 1588 1597
    1589 1588 1589 1589
1.2.3 程序设计
    由以上数据统计特征可见,每次测量结果仅有两位不确定二进制数据。为了产生1个8位数据,设计了C语言程序控制专用函数测量4次,每次得到了2个二进制随机数,这样调用该函数1次即可得到1字节的随机数。
    主要程序如下:

上一页  [1] [2] [3] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:247,460.90000 毫秒