Перейти к содержанию
    

Nios || генерация случайного числа

Имеется байт 0x00 в котором необходимо в каждый последующий момент времени (каждый цикл в 2 мс) случайным образом установить в 1 один из 8_ми бит. Посоветуйте please как это можно реализовать программно в Nios ||. Какие библиотеки необходимо подключить в .c файл для работы функции rand()? Или может другие варианты...

Пробовал так

    srand(time(NULL));
    char chislo = rand();

Но компилятор пишет implicit declaration of function 'rand'

 

Изменено пользователем Acvarif

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Имеется байт 0x00 в котором необходимо в каждый последующий момент времени (каждый цикл в 2 мс) случайным образом установить в 1 один из 8_ми бит. Посоветуйте please как это можно реализовать программно в Nios ||. Какие библиотеки необходимо подключить в .c файл для работы функции rand()? Или может другие варианты...

Пробовал так

    srand(time(NULL));
    char chislo = rand();

Но компилятор пишет implicit declaration of function 'rand'

 

#include <stdlib.h> не забыли?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

#include <stdlib.h> не забыли?

Да, подключил.

Пробую так

                    srand(time(NULL));
                    chl = rand();

Вызов кода делаю один раз в секунду. chl (локальная) должно меняться каждую секунду. Но оно всегда = 0xFF

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а это подключили:

#include <time.h>

Подключил. Странно, что не работает.

Придется в основном цикле сделать что-то вроде

    alt_u8  chl, ch = 0x2;
    alt_u8  dirch = 0;
        if(ch & 0x81)
            dirch = (dirch ^ 0x1);
        if(dirch)
            ch = ch >> 1;
        else
            ch = ch << 1;

потом по запросу (по прерыванию) присваивать

chl = ch;
printf("Число: %x \n", chl);

Не понятно почему rand не работает...

А.. srand(time(NULL)); нужно вызывать перед основным циклом. Заработало...

Изменено пользователем Acvarif

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...