W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
要生成隨機(jī)數(shù),可以使用Arduino隨機(jī)數(shù)函數(shù)。我們有兩個(gè)函數(shù):
randomSeed(seed)函數(shù)重置Arduino的偽隨機(jī)數(shù)生成器。雖然random()返回的數(shù)字的分布本質(zhì)上是隨機(jī)的,但是順序是可預(yù)測(cè)的。你應(yīng)該將發(fā)生器重置為某個(gè)隨機(jī)值。如果你有一個(gè)未連接的模擬引腳,它可能會(huì)從周圍環(huán)境中拾取隨機(jī)噪音。這些可能是無(wú)線電波,宇宙射線,手機(jī)的電磁干擾,熒光燈等。
randomSeed(analogRead(5)); // randomize using noise from analog pin 5
random函數(shù)生成偽隨機(jī)數(shù)。以下是語(yǔ)法。
long random(max) // it generate random numbers from 0 to max long random(min, max) // it generate random numbers from min to max
long randNumber; void setup() { Serial.begin(9600); // if analog input pin 0 is unconnected, random analog // noise will cause the call to randomSeed() to generate // different seed numbers each time the sketch runs. // randomSeed() will then shuffle the random function. randomSeed(analogRead(0)); } void loop() { // print a random number from 0 to 299 Serial.print("random1="); randNumber = random(300); Serial.println(randNumber); // print a random number from 0to 299 Serial.print("random2="); randNumber = random(10, 20);// print a random number from 10 to 19 Serial.println (randNumber); delay(50); }
讓我們現(xiàn)在重溫我們對(duì)一些基本概念的知識(shí),例如位和字節(jié)。
位只是一個(gè)二進(jìn)制數(shù)字。
二進(jìn)制系統(tǒng)使用兩個(gè)數(shù)字,0和1。
與十進(jìn)制數(shù)字系統(tǒng)類似,數(shù)字的位數(shù)不具有相同的值,位的“意義"取決于其在二進(jìn)制數(shù)中的位置。例如,十進(jìn)制數(shù)666中的數(shù)字相同,但具有不同的值。
一個(gè)字節(jié)由8位組成。
如果一個(gè)位是一個(gè)數(shù)字,邏輯上字節(jié)表示數(shù)字。
可以對(duì)它們執(zhí)行所有數(shù)學(xué)運(yùn)算。
一個(gè)字節(jié)中的數(shù)字也不具有相同的意義。
最左邊的位具有被稱為最高有效位(MSB)的最大值。
最右邊的位具有最小值,因此稱為最低有效位(LSB)。
由于可以以256種不同的方式組合一個(gè)字節(jié)的八個(gè)0和1,所以可以由一個(gè)字節(jié)表示的最大十進(jìn)制數(shù)是255(一個(gè)組合表示零)。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: