新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 使用8051單片機的隨機數發生器

        使用8051單片機的隨機數發生器

        —— 使用8051的隨機數發生器
        作者: 時間:2023-03-27 來源:電子產品世界 收藏

        在這個項目中,我將解釋使用生成隨機數的電路和工作,即我將告訴你如何使用生成一個隨機數。

        本文引用地址:http://www.104case.com/article/202303/444919.htm

        這個項目在按下按鈕時產生一個0到100之間的隨機數。這是一個簡單的項目,你可能在嵌入式項目中找不到任何嚴肅的應用。該項目工作只是一個示范。

        如何編寫程序?

        代碼

        是一種物理設備,當按下一個按鈕時,在一定范圍內隨機產生一個數字。在這個項目中,當按下按鈕(連接P3.0)時,LCD(液晶顯示器)會隨機顯示數字。

        在這個項目中,計數器以高速從0到99遞增。如果你按下按鈕,那么LCD就會顯示當前的計數值。由于計數器高速遞增,在按下按鈕時選擇一個隨機數字。

        使用8051的電路圖

        Random Number Generator using 8051 Circuit Diagram

        所需元件

        AT89C51 (8051單片機)

        8051編程器 

        編程電纜

        5V電源

        16×2字母數字LCD

        2個陶瓷電容 - 33pF

        11.0592MHz晶體

        按鍵 - 3

        電解電容 - 10μF, 16V

        10KΩ 電阻器(1/4瓦) - 2個

        330Ω 電阻器(1/4 瓦) - 2

        波特 - 10KΩ

        1KΩ X 8 電阻器包

        連接導線 

        使用8051的的電路設計 

        該電路使用8051微控制器,16×2字母數字液晶顯示器,按鈕和一些無源元件。這個電路的主要部件是AT89C51微控制器。

        在上述電路中,兩個按鈕被連接到P3.0和P3.1,其中一個按鈕(Random - P3.0)將產生隨機數,而另一個按鈕(RST - P3.1)將重置計數。

        LCD的數據引腳連接到微控制器的PORT2,控制引腳RS、RW、En分別連接到P2.0、GND和P2.1。這里,LCD是以8位模式連接的,這就是為什么我們需要使用LCD的所有數據引腳。

        一個10KΩ電阻,一個10μF電容和一個按鈕將為8051微控制器提供復位電路。兩個33pF的電容和一個11.0592MHz的夸特晶體被用來為8051微控制器提供振蕩器。

        在這里,一個10KΩ的電位器被連接到LCD的VEE引腳,用來控制LCD的對比度。通過調整電位器的電阻,我們可以改變對比度或亮度。

        注意:如果你想減少LCD的數據線,你可以使用4位模式。

        Random Number Generator using 8051 Image 1

        Random Number Generator using 8051 Image 2

        Random Number Generator using 8051 Image 3

        如何編寫程序?

        現在讓我們看看如何使用8051單片機編寫隨機數發生器的程序。首先,取一個整數類型的計數變量并在8位模式下初始化LCD。現在用一個無限的while循環來永遠重復程序。在這個無限的WHILE循環中,增加整數的值直到按鈕被按下(通過使用另一個while循環)。

        遞增到99,當計數達到100(上限)時,使計數為0并重復這一過程。如果你想擴大隨機數發生器的上限,可以在循環中改變數值。一旦按下按鈕,計數就會停止,并在LCD上顯示當前的計數值。

        在這個程序中,如果你想擴大隨機數發生器的上限,你可以在程序中做一些小小的改動。由于我們使用的是LCD,所以有可能擴展隨機數發生器的上限,而如果使用2個七段顯示器,則不可能擴展上限(你也必須增加七段顯示器的數量)。

        代碼

        如何使用8051操作隨機數發生器電路?

        首先,在Keil μVision軟件中編寫隨機數發生器的程序,并生成hex文件。

        現在,在8051編程器的幫助下,將這個十六進制文件刻錄到AT89C51微控制器上。

        按照電路圖的要求進行連接。

        確保電路的電源是5V直流。

        現在打開電路的電源。

        你可以在LCD上看到 "Random Number Generator "字符串。

        然后,它將要求你按下按鈕來生成一個隨機數。

        按下按鈕,你可以在LCD上看到一個隨機數。這將一直顯示到你按下RST按鈕(連接到P3.1)。

        一旦你按下RST按鈕,將再次要求你按下按鈕生成一個隨機數。

        這個過程一直持續到你關閉電源。

        使用8051電路的隨機數發生器的應用

        這個項目用于我們需要生成隨機數的應用中

        用在噪聲發生器中

        在玩大富翁、蛇梯等游戲時,項目被用作傳統骰子的替代品。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 乌鲁木齐市| 九龙坡区| 嘉荫县| 平谷区| 资中县| 信丰县| 江北区| 连平县| 静宁县| 饶阳县| 锡林郭勒盟| 邯郸县| 望奎县| 珲春市| 台前县| 宜章县| 金堂县| 洪湖市| 沂南县| 开化县| 辛集市| 万州区| 会昌县| 鄂伦春自治旗| 郁南县| 和龙市| 泸西县| 金溪县| 吴桥县| 浠水县| 太白县| 盱眙县| 鄂州市| 周至县| 怀柔区| 鄂尔多斯市| 剑川县| 疏勒县| 大厂| 武川县| 友谊县|