# PIC mikrokontrolleri >  Gadījuma skaitļu ģenerēšana

## kvaris

Sveika, tauta!

Man lieta tāda, ka es gribētu ģenerēt gadījuma skaitļus. Kādu metodi lai izmanto? Dažos forumos salasījos, ka var izmantot diožu vai rezistoru trokšņus un tādā veidā to izdarīt. Kāda Jums pieredze?

Tnx!

kvaris

----------


## JDat

Vikingam ir pieredze. Es atkal gribu gadījumskaitļus ar diviem kvarca ģeneratoriem pamēģināt. Viens ātrs, otrs lēns. Internetā bija teorija. Tikai man šobrīd tas nav aktuāli...

----------


## Vikings

Nē, fuj, neāksties ar analogajiem signāliem kā random avotu pie ciparu proča. Es reiz biju atradis normālu programmiņu random ģenerēšanai, to principu pielāgoju un izmantoju baltā trokšņa ģenerēšanai vienā audio ģeneratora projektiņā. Ja interesē, vakarā mājās atradīšu un varēšu izlikt C source kodu.
Edit: JDat, beidz mani reklamēt.  ::

----------


## zzz

Pielietojamaas metodes ir stipri atkariigas no taa cik labus ciparus gribi, cik aatri tev vinjus vajag un cik skaitljoshanas resursu vari prieksh taa velltiit.

----------


## JDat

> Edit: JDat, beidz mani reklamēt.


 Es tak redzēju tavu kodu.  ::  Pa smuko...

----------


## Vikings

Pa smuko būtu, ja tas būtu bijis ASM iekš C, bet tā kā to nepieprotu, tā bija vnk C funkcija. Tā izpildījās pietiekami ātri un tā dēļ neiespringu uz optimizēšanu.
OK, labi, nespamojam, vakarā būs kods.

----------


## next

Programmisko realizaaciju (pseudo random) asmaa vislabaak taisiit peec Horowitz Hill rekomendaacijaam ieksh "The Art of Elektronics".
656 lpp.
http://thetektons.com/Library/E-Books/E ... 20hill.pdf

PS.Laba graamata, rekomendeeju.

----------


## jeecha

Ja pietiek ar pseudorandom skaitljiem tad tam ir pietiekami daudz gatavas realizaacijas uz dajebkaadas arhitektuuras dajebkaadaa programmeeshanas valodaa. Ja ar pseudorandom tieshaam nepietiek (es gan nespeeju iedomaaties nevienu praktisku piemeeru iekaartai uz mikrokontroliera kur buutu vajadziigi kvalitatiivaaki gadiijumskaitlji) - jaataisa analogais baltaa trokshnja gjenerators un tad rezultaats jaaciparo. Tiesa njem veeraa ka ieguut pietiekami kvalitatiivus (vismaz kvalitatiivaakus par labiem pseudorandom) gadiijumskaitljus taadaa veidaa nemaz nav triviaali. Ja der arii diezgan nekvalitatiivi pseudorandom skaitlji - var izmantot funkciju no Microchip appnotes http://ww1.microchip.com/downloads/e...tes/00544d.pdf - ar tiem lielaakajai dziives gadiijumu daljai vajadzeetu pilniigi pietikt.

----------


## ezis666

uz avr es nolasu skaitītāja vērtību, kas notiek sargsuņa pārtraukums. tik ne visiem viņš ir.Sargsuns iet no cita nesinhrona generatora.Sanāk tīri labi cipari, hardvariski generēti.Frekvenču attiecībai jābūt vismaz 1/50,tad tikai nāk labi cipari

----------


## defs

Jdats uz pareizā ceļa-ņemam 2 ģeneratorus,laižam abus signalus iekšā loģiskā elementa ieejās,izejā iegustam rnd.

----------


## JDat

> Jdats uz pareizā ceļa-ņemam 2 ģeneratorus,laižam abus signalus iekšā loģiskā elementa ieejās,izejā iegustam rnd.


 Var uz loģiskā, var uz 555, var uz MCU. kāda šķirba? viss atkarīgs ko un kādiem mērķiem lietos.

Kaut ko līdzīgu ezis666 idejai štukoju... RND nav aktuāli, bet ir interesanti. Vajadzētu kādu gudrāku karstu palasīt. Wiki der tikai rupjai idejas aprakstīšanai. A gribās ta kāda nehifilistiska profesora pētījuma rezultātu palasīt. pat ja esmu dumš un firmulas neapratīšu  ::

----------


## jeecha

Kas juus visi galvu saspiedushi esiet? Tieshaam domaajat ka ar shaadaam metodeem ieguusiet kvalitatiivaaku gadiijumskaitlju distribuuciju nekaa ar vienkaarshu pseidorandoma gjeneratoru?
Paarbaudes uzdevums - nosaukt kaut vienu praktisku mikrokontroliera projektu kur ar pseidogadiijumskaitljiem (kvalitatiiviem) nepietiek.

----------


## JDat

Šīs, alternatīvās, metodes ir apmēram tas pats kas lietot peldošā punkta matemātiku, tur kur var iztikt pat bez fiksētā punkta matemātis. Neskatoties uz to visu, varbūt kādam ir interesanti...

----------


## zzz

Kaartiigi nejaushie skaitlji - analogais trokshnja gjenerators, komparators, garsh regjistrs, kriptograafiskaa hash funkcija.   Prasa bishkji hardware resursu un diezgan daudz (mikrokontrolera meerogaa) software. Nopeerkami kaa usb puljkji, tikai ja cilveeks ir pietiekami paranojisks, tad tachu neuzticeesies puljkjim no aarpuses.


Kur praksee vareetu vajadzeet kaartiigus nejaushos skaitljus? 

A vienkaarshi - ekstraseksu testeeshanai. Un aiz miilestiibas pret maakslu.  ::

----------


## habitbraker

> Pa smuko būtu, ja tas būtu bijis ASM iekš C, bet tā kā to nepieprotu, tā bija vnk C funkcija. Tā izpildījās pietiekami ātri un tā dēļ neiespringu uz optimizēšanu.
> OK, labi, nespamojam, vakarā būs kods.


 
 ::  Varbuut vari to kodu paraadiit?

----------


## Vikings

Fuck, šo biju pimirsis.
kods nav pa rokai, bet atradu avotu, no kura iedvesmojos:
http://www.avrfreaks.net/index.php?name ... c&p=715681
14. posts ar paskaidrojumiem ar šo te kodu:


```
; ***************************************** 
; **** RANDOM NOISE GENERATOR BY RADBRAD 
; ***************************************** 
mov t1,nze 
andi t1,66 
breq nsj1 
cpi t1,66 
rjmp nsj2 
nsj1: 
clc 
nsj2: 
rol t2 
rol t3 
rol nze
```

----------


## habitbraker

Paldies.  ::  Buus jauzraksta pic ekvivalents

----------

