реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Помогите, Гениратор случайных чисел
коваленко2
сообщение Oct 12 2007, 17:45
Сообщение #1





Группа: Новичок
Сообщений: 4
Регистрация: 12-10-07
Пользователь №: 31 301



Здраствуйте пожалуйсто помогите осуществить генератор случайных чисел на базе msp430x16x, хотябы идейку, на чем основывать???

Сообщение отредактировал коваленко2 - Oct 12 2007, 17:45
Go to the top of the page
 
+Quote Post
rezident
сообщение Oct 12 2007, 18:19
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Самый простой генератор случайного состояния это младший бит АЦП. Без шуток!
Go to the top of the page
 
+Quote Post
АДИКМ
сообщение Oct 12 2007, 19:43
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 630
Регистрация: 2-08-05
Пользователь №: 7 294



Посмотрите вот на этот пример.
http://focus.ti.com/mcu/docs/mcusupporttec...actName=slaa338


--------------------
летаю на пепелаце...
Go to the top of the page
 
+Quote Post
VAI
сообщение Oct 13 2007, 02:50
Сообщение #4


Профессионал
*****

Группа: Модераторы
Сообщений: 1 120
Регистрация: 17-06-04
Пользователь №: 37



А чем не удовлетворяет функция из стандартной библиотеки С?
int rand( void );


--------------------
Если зайца бить, его можно и спички научить зажигать
Сколько дурака не бей - умнее не будет. Зато опытнее
Go to the top of the page
 
+Quote Post
коваленко2
сообщение Oct 13 2007, 04:53
Сообщение #5





Группа: Новичок
Сообщений: 4
Регистрация: 12-10-07
Пользователь №: 31 301



Цитата(rezident @ Oct 12 2007, 22:19) *
Самый простой генератор случайного состояния это младший бит АЦП. Без шуток!

Как сопоставить это с числами???вообще не понимаю(((
Go to the top of the page
 
+Quote Post
yura-w
сообщение Oct 13 2007, 08:59
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 305
Регистрация: 22-06-07
Из: Санкт-Петербург
Пользователь №: 28 617



Цитата(коваленко2 @ Oct 13 2007, 08:53) *
Как сопоставить это с числами???вообще не понимаю(((


всетаки обратите внимание на:

VAI:
А чем не удовлетворяет функция из стандартной библиотеки С?
int rand( void );
Go to the top of the page
 
+Quote Post
коваленко2
сообщение Oct 13 2007, 13:04
Сообщение #7





Группа: Новичок
Сообщений: 4
Регистрация: 12-10-07
Пользователь №: 31 301



Цитата(yura-w @ Oct 13 2007, 12:59) *
всетаки обратите внимание на:

VAI:
А чем не удовлетворяет функция из стандартной библиотеки С?
int rand( void );

дело в том что генератор долже быть!!!на базе mspшки, в этом и проблема
Go to the top of the page
 
+Quote Post
VAI
сообщение Oct 14 2007, 13:14
Сообщение #8


Профессионал
*****

Группа: Модераторы
Сообщений: 1 120
Регистрация: 17-06-04
Пользователь №: 37



Цитата
дело в том что генератор долже быть!!!на базе mspшки, в этом и проблема

Я прекрасно понимаю, что радиостанция на танке, а не на транзисторах, но всё же, Вы пишете сразу в машинных кодах? Или Вы используете какой-либо компилятор (IAR очень популярен, ну или ССЕ от TI)?
Даже если Вы пишете на ассемблере, всегда есть возможность подключить С-шную библиотеку, которая содержит функцию rand().
И работать всё будет именно в msp-шке и результаты работы функции rand() Вы легко сможете
Цитата
Как сопоставить это с числами???


--------------------
Если зайца бить, его можно и спички научить зажигать
Сколько дурака не бей - умнее не будет. Зато опытнее
Go to the top of the page
 
+Quote Post
коваленко2
сообщение Oct 14 2007, 17:40
Сообщение #9





Группа: Новичок
Сообщений: 4
Регистрация: 12-10-07
Пользователь №: 31 301



Цитата(VAI @ Oct 14 2007, 17:14) *
Я прекрасно понимаю, что радиостанция на танке, а не на транзисторах, но всё же, Вы пишете сразу в машинных кодах? Или Вы используете какой-либо компилятор (IAR очень популярен, ну или ССЕ от TI)?
Даже если Вы пишете на ассемблере, всегда есть возможность подключить С-шную библиотеку, которая содержит функцию rand().
И работать всё будет именно в msp-шке и результаты работы функции rand() Вы легко сможете

Нет я пишу на си, проблема в том что я начинающий.С таймером разобрался, с прерыванием тоже а вот это не понимаю(((
P.S. компилятор gss

Сообщение отредактировал коваленко2 - Oct 14 2007, 17:41
Go to the top of the page
 
+Quote Post
VAI
сообщение Oct 15 2007, 03:38
Сообщение #10


Профессионал
*****

Группа: Модераторы
Сообщений: 1 120
Регистрация: 17-06-04
Пользователь №: 37



Так попробуйте вызвать из своей программы

Код
a =  rand();


Вот исходник ИАРовского rand()

В файле stdlib.h
Код
#define RAND_MAX        32767


Код
/*                      - RAND.C -

   The ANSI "rand" function.
          
   $Name: Tyrone3 Tyrone2 Tyrone1b Tyrone1 V3_34O V3_34N Spiff7 V3_34M V3_34L V3_34K V3_34J V3_34I V3_34H V3_34G $

   Copyright 1986 - 1999 IAR Systems. All rights reserved.
*/

#include "stdlib.h"

unsigned long int __next_rand = 1;

int rand(void)
{
  __next_rand = __next_rand * 1103515245 + 12345;
  return (unsigned int) (__next_rand >> 16) & RAND_MAX;
}


--------------------
Если зайца бить, его можно и спички научить зажигать
Сколько дурака не бей - умнее не будет. Зато опытнее
Go to the top of the page
 
+Quote Post
rezident
сообщение Oct 15 2007, 04:30
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Тут на форуме уже была тема про генерацию случайных чисел. Там в одном из сообщений есть аттач Интеловской статьи. Почитайте.
http://electronix.ru/forum/index.php?s=&am...ost&p=55207
Цитата(VAI @ Oct 15 2007, 09:38) *
Вот исходник ИАРовского rand()

Это так называемая M-последовательность, генератор ПСЕВДОслучайных чисел. Период у него довольно большой, но не бесконечный.
P.S. вот еще одна статья про генерацию случайных чисел на основе звуковой карты. Принципы изложенные там можете переложить на свою платформу.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th July 2025 - 11:33
Рейтинг@Mail.ru


Страница сгенерированна за 0.01448 секунд с 7
ELECTRONIX ©2004-2016