의사는 랜덤 넘버 생성기 8bit MCU를

P

psubiaco

Guest
아무도 날 8bit 무작위 숫자의 순서를 가지고있는 아이디어를 보낼까?
내 생각 씨앗 모든 고쳐 기간 (타이머 인터럽트 루틴)이 숫자는 사이비 무작위 순서 obtaing 업데이 트에서 시작하도록했다.
난 대해 "어떻게 비트"의 스트림 또는 "하나의
숫자를 생성하는 방법"을 생성하는 몇 가지 예를 찾았지만, 아직은, 8bit 숫자의 스트림을 생성하는 루틴을 찾을 수 있지 않았는데, 난 몰라 RNG의 이론.

<img src="http://www.edaboard.com/images/smiles/icon_cry.gif" alt="울고 또는 아주 슬픈" border="0" />어떤 C 소스 코드 예제 또는 alghorithm 환영합니다.
사전에 감사합니다.파올로

 
여기에서 하나의 이전 프로젝트의 구현은 간단합니다 :

코드 :U16 RND_Num; / / 현재 임의의 숫자/ / 초기화 난수 생성기

무효 SRV_InitRnd (무효) (

RND_Num = 12345; / / 여기에 오는 초기 씨앗

)/ / 반환 0에서 임의의 숫자 (최대로 - 1)

U16 SRV_Rnd (U16 맥스) (

U16 난, j를;

난 = RND_Num>> 8;

일본 = RND_Num &0xFF;

나 = 내가 * 18273 j를;

일본 = 일본 * 29379 ;

RND_Num = (은 (i &를 0xFF) <<8) | (j를 &를 0xFF);

반환 (RND_Num % 최대);

)
 
시도는 할 수없는이 MCU의 한계 (8bit MCU를 holtek)로 인해, 일상지만 같은 기능을하는 경우에는 임의의 숫자는 8 비트로 적용해야하는지 궁금해.
그럼, 작은 숫자를 곱한 후 전환해야하고 새로운 임의의 숫자 형성 ORed 2 nibbles, 임의의 바이트로 분할.

때문에 절대적으로 (내게는 코딩에 대해 아무것도 몰라 쓴 캐주얼가 이제,이 기능을 사용하고 있는데, 잘 모르겠지만, 어떻게이 알고리즘에 의해 생성되는 순서입니다.

코드 :무효 random_next () (

/ /, 임의의 왼쪽 교대와 회 (N 1) b0 넣어 = B4에 (n)이 ^ B7 (n)

randomtmp = 0;

만약 (무작위 & 0x10) (/ / 비트 4 추출

randomtmp ;

)

/ / 무작위 randomtmp == 1 == 1의 경우 bit4

_c = 0; / / _c 연행입니다

_rlc (& 무작위); / / 왼쪽으로 회전을 통해 수행

만약 () randomtmp _c ^ = 1;

무작위 ^ = randomtmp;

)

 
구현의 숫자에는 난수를 생성하는 방법은 많아 휴대 automata implementin입니다.내가 당신을 어떻게 만들하지만 donot remmeber가 도와주고 싶어요.

 
PSoC 프로그래머블 마이크로 컨트롤러들은 블록에 PRN 발생기의 하드웨어 실현을 가질 수있습니다.

8월 2일 -에 -, 16 -, 24 - 또는 32 - 비트 범용 사이비 - random number generator의 3 또는 4 개의 PSoC 블록, 각각
1, 2, 사용
데이터 입력을 48 MHz의 최대 클럭

프로그램 다항식과 씨앗 값

직렬 출력 비트 스트림

계산된 사이비 - 직접 LFSR에서 읽을 수있는 임의의 숫자

여기에 하나의 애플 리케이션 노트 :
http://www.cypress.com/support/app_note.cfm?objectID=13F474D4-55F5-4D0B-A7D5A92FE01A10B0&fname=PSoC % 20Mixed % 2DSignal % 20Array & tid = A47EC41D - 4D8B - A212 - B3AA620F3AEB2978

 
psubiaco 썼습니다 :

시도는 할 수없는이 MCU의 한계 (8bit MCU를 holtek)로 인해, 일상지만 같은 기능을하는 경우에는 임의의 숫자는 8 비트로 적용해야하는지 궁금해.

 
the 의사 랜덤 넘버를 생성하는 가장 간단한 방법을 사용하고있습니다 - Sequency 남 씨앗과 초기.

첨부된 a MCU의 예를 및 24 단계입니다 남 - sequency.
미안하지만, 당신이 첨부 파일을보기 위해서는 로그인이 필요

 

Welcome to EDABoard.com

Sponsor

Back
Top