ESP32 및 Arduino IDE를 사용하여 난수 생성

Esp32 Mich Arduino Ideleul Sayonghayeo Nansu Saengseong



ESP32를 사용하여 다양한 프로젝트를 만들고 여러 문제를 해결할 수 있는 고유한 제품을 만들 수 있습니다. ESP32는 마이크로컨트롤러 보드이므로 Arduino IDE 프로그래밍 기능을 사용하여 흥미로운 출력을 생성할 수 있습니다. 이 단원에서는 ESP32 보드를 사용하여 난수를 생성하는 방법을 안내합니다.

난수란?

난수는 보안 및 암호화에서 중요한 역할을 합니다. Google 비밀번호 제안을 사용했을 수 있습니다. 그것은 임의의 숫자를 생성하는 것과 다소 유사한 원리로 작동합니다.

난수는 예측할 수 없는 일련의 숫자이며 일련의 숫자 중에서 선택된 숫자입니다.







난수가 필요한 이유

난수는 암호화 작업, 현대 컴퓨팅 및 시뮬레이션에 중요합니다. 난수는 또한 컴퓨터 보안을 강화하는 데 도움이 됩니다. 난수의 주요 응용 분야는 다음과 같습니다.



  • 알고리즘에 사용되는 난수
  • 임의의 이미지, 이름 및 기타 여러 항목과 같이 절차적으로 생성된 콘텐츠
  • 패턴, 주사위 셔플 및 날씨 패턴과 같은 비결정적 시뮬레이션의 경우

이제 우리는 ESP32 난수 생성기의 기본 응용 프로그램을 이해하므로 코드를 살펴보고 일부 난수를 생성할 수 있습니다.



ESP32에서 난수 생성 기능

ESP32 보드에는 함수를 사용하는 하드웨어 난수 생성기가 포함되어 있습니다. esp_random() .





esp_random() 인수를 받지 않고 0에서 UINT32_MAX까지 무작위로 생성된 값을 제공합니다(부호 없는 int가 내부에 저장할 수 있는 최대값).

메모 : 여기서 기억해야 할 한 가지는 ESP32 하드웨어 난수 생성기가 WiFi와 Bluetooth를 사용하여 작동한다는 것입니다. 진실 난수 둘 다 활성화된 경우에만 생성됩니다. 이 두 가지가 비활성화되면 ESP32는 의사 번호 . 자세한 내용은 다음을 확인하십시오. Espressif ESP32 난수 문서 .



흥미로운 정보 : ESP32 하드웨어 난수 생성기에 대한 흥미로운 정보는 ESP32가 Dieharder 난수 Testsuite WiFi가 활성화된 상태에서 ESP32를 사용하여 2GB의 데이터 샘플을 채취한 경우. Die harder는 난수 생성기 테스트입니다.

통사론
난수에 대한 ESP32 함수의 구문은 다음과 같습니다.

esp_random ( )

반품
이 함수는 0과 UINT32_MAX 사이의 임의의 값을 반환합니다.

난수를 생성하는 코드

Arduino IDE를 열고 ESP32에서 주어진 코드를 업로드하여 0에서 4294967295(부호 없는 최대 정수 값) 사이의 난수를 생성합니다.

무효 설정 ( ) {
직렬 시작 ( 115200 ) ; /* 전송 속도 정의 */
}
무효 루프 ( ) {
Serial.println ( '************' ) ;
직렬.인쇄 ( '임의의 숫자= ' ) ;
Serial.println ( esp_random ( ) ) ; /* 임의의 숫자 출력 0 가장 큰 unsigned int */
지연 ( 2000년 ) ; /* 지연 2 비서 */
}

산출
코드를 업로드하면 직렬 모니터에서 출력을 볼 수 있습니다. 여기에서 ESP32가 두 개의 서로 다른 난수를 생성한 것을 볼 수 있습니다.

특정 범위 사이에 난수를 생성하는 코드

ESP32 WiFi가 활성화되지 않은 경우 기능에 대한 대안이 있다고 가정합니다. esp_random() . Arduino 난수 생성기 기능을 사용할 수 있습니다. (무작위의()) .

이 함수를 사용하면 지정된 범위에서 난수를 생성할 수 있습니다.

Arduino IDE를 열고 10-20 사이의 임의의 숫자를 제공하는 주어진 코드를 업로드합니다.

무효 설정 ( ) {
직렬 시작 ( 115200 ) ; /* 전송 속도 정의 */
}
무효 루프 ( ) {
Serial.println ( '************' ) ;
직렬.인쇄 ( '10과 20 사이의 임의의 숫자= ' ) ; /* 사이의 임의의 숫자를 인쇄하십시오. 10 그리고 스물 */
Serial.println ( 무작위의 ( 10 , 스물 ) ) ;
지연 ( 2000년 ) ; /* 지연 2 비서 */
}

산출
직렬 모니터에서 다음 출력을 볼 수 있습니다. 2초마다 임의의 숫자가 생성됩니다.

우리는 ESP32가 난수를 생성하는 데 사용한 기능을 성공적으로 다루었습니다.

결론

난수는 확률과 통계에서 중요한 역할을 합니다. 보안 암호화 및 암호화 작업에도 유용합니다. 이 단원에서는 다양한 난수를 생성하는 방법을 안내합니다. 임의의 숫자를 얻기 위해 범위를 정의할 수도 있습니다.