Led yakma

Başlatan Mr.Thinking, 09 Aralık 2020, 22:48:55

Mr.Thinking

#60
Alıntı yapılan: OG - 16 Aralık 2020, 17:29:553-5 satırda ne yapacağını net yaz
beş dakikamızı alır.
Alıntı yapılan: JOKERAS - 16 Aralık 2020, 20:35:29Ne güzel,ben sizden siz benden istiyorsunuz  (Resim gizlendi görmek için tıklayın.)
Alıntı yapılan: JOKERAS - 16 Aralık 2020, 15:10:16Geçen kilitlenen konunuz da "Ben bilgi verip üyeleri Aydınlatmak istiyorum" diyordunuz.
İşte size fırsat:)Eminim benim gibi Aydınlanmak için bekleyen bir sürü üye vardır.

Rica ederim aydınlatın bizi.Selam ve Saygılarımı gönderiyorum.Daha ne olsun (Resim gizlendi görmek için tıklayın.)

Soru neydi?
Dışarıdan hiç bir müdahale, ektra devre, buton,ışık,ses,ısı etkisi vs...vs. olmadan sadece işlemci içinde rastgele bir sayı üretmekti...
Şu ana kadar onlarca algoritma denedim ama hiç biri bir mantığa dayalı olmadan tam anlamıyla rastgele bir sayı üretemedi.
Bunlardan cevaba en yakını, boşta bırakılan bir adc girişini 1000ms lik bir zaman sonunda okuyup o anki adc değerini çeşitli sayılarla çeşitli işlemlere sokmaktı. Bu yolun dışarıdan bir devre durumuna girip girmediğine karar veremedim. Fakat yine de en basit haliyle buraya koyuyorum. Gerçekte de çalışıyor. Bunun dışındaki önerilen tüm yolları hala denemeye devam ediyorum. Şimdilik saat geç olduğu için yarın tekrar yazarım. İyi geceler. Allah rahatlık versin...

#Config
 __config _XT_OSC & _WDT_ON & _LVP_OFF & _CP_OFF
#Endconfig
DEFINE OSC 4
DEFINE LCD_DREG  PORTB  'LCD data bacaklari hangi porta bagli ? 
DEFINE LCD_DBIT  4      'LCD data bacaklari hangi bitten basliyor ?
DEFINE LCD_EREG  PORTB  'LCD Enable Bacagi Hangi Porta bagli ?
DEFINE LCD_EBIT  3      'LCD Enable Bacagi Hangi bite bagli ?
DEFINE LCD_RSREG PORTB  'LCD RS Bacagi Hangi Porta bagli ?
DEFINE LCD_RSBIT 0      'LCD RS bacagi Hangi Bite bagli ?
DEFINE LCD_BITS  4      'LCD 4 bit mi yoksa 8 bit olarak ba?ly ?
DEFINE LCD_LINES 2      'LCD Kaç syra yazabiliyor ?

DEFINE ADC_BITS        10        'ADC 10 BİTLİK
DEFINE ADC_CLOCK      2
'-------------------------
 TRISA=%00000001
 TRISB=%00000000
 TRISc=%00000000
 PORTA=0:PORTB=0:PORTc=0
'-----------------------------------------------------------------------------
OPTION_REG.7=1 '
CMCON=7        '
'------------------------------------------------------------------------------
SYMBOL XLED=PORTc.1
SYMBOL YLED=PORTc.2
SYMBOL ZLED=PORTc.3
rastgelen var word'  16 bit rastgele değeri
rastgelen1
'-------------------------------
PAUSE 200
LCDOUT $FE,1

I:  'adc okunarak rastgele değer yakalama
pause 1000
ADCIN 0,rastgelen'burada birkaç okuma yapılıp değerler arası rastgele bir işlem yapılabilir
rastgelen=rastgelen*777' okunan değeri 777 ile çarp.. bu işlemler onlarca dallandırılabilir
rastgelen=rastgelen/333' çıkan sonucu 333 ye böl.

LCDOUT $FE,$C0,#rastgelen
PAUSE 100

  IF rastgelen>1 AND rastgelen<33 THEN goto x'bu değerler yukardaki formül sonucu aralığına göre düzenlenir

  IF rastgelen>33 AND rastgelen<66 THEN goto y

  IF rastgelen>66 AND rastgelen<99 THEN goto z

'goto I

x:
xled=1
END

y:
yled=1
END


z:
zled=1
END



ego=1/Knowledge

Mr.Thinking

#61
.
ego=1/Knowledge

power20

Rastgele üretildiğini bilimsel olarak nasıl doğrulayacaksınız? "100 defa denedim bir kural göremedim" şeklinde mi?

Mr.Thinking

Alıntı yapılan: Kılıç - 17 Aralık 2020, 00:50:36Rastgele üretildiğini bilimsel olarak nasıl doğrulayacaksınız? "100 defa denedim bir kural göremedim" şeklinde mi?
En mantıklı yol bu tabiki. Belki 1000 defa
ego=1/Knowledge

power20

Neresi mantıklı? 250.000 tane sonra başa dönüyor yine aynı sıra ile 250.000 çeşit oluyor. Sistem sizinle kafa buluyor olabilir

Mr.Thinking

#65
Alıntı yapılan: Kılıç - 17 Aralık 2020, 00:53:31Neresi mantıklı? 250.000 tane sonra başa dönüyor yine aynı sıra ile 250.000 çeşit oluyor. Sistem sizinle kafa buluyor olabilir

Bunu söylerken O anda okunan rastgele adc değerini hesaba katıyor musunuz? Tam anlamadım!
Aslında tamda  istediğim sistemin benimle kafa bulması
ego=1/Knowledge

power20

#66
Onu katmamıştım fakat yine de matematiksel olarak doğrulamak gerekir. Belki yine de rastgele olmamıştır. 250.000 farklı durumdan sonra başa dönecektir ?

Bu kadar ihtimal  hükmen rastgele sayılır
 diyerek bir kabul yapmak lazım. Sonraki sürüm 500 bin ihtimalli  olarak çıkabilir

Oyuncak hayvan gibi düşünelim. 5 çeşit hareket var. Sonraki hareket ve ses tahmin edilebilir hale gelmişse çok sıkıcı olur. 500 çeşit olsa idare eder. Bülbül sesi veren cihaz gibi. Hep aynı sesler çıkmıyorMuş gibi çalışmalı. Gerçekte böyle bir düzenek var mı bilmiyorum. Sürekli dinlenen natürel orman sesi. 1 dakikalık olan sıkıcı gelir. 10 saatlik olsa iyi



Mr.Thinking

Alıntı yapılan: Kılıç - 17 Aralık 2020, 00:58:59Onu katmamıştım fakat yine de matematiksel olarak doğrulamak gerekir. Belki yine de rastgele olmamıştır. 250.000 farklı durumdan sonra başa dönecektir ?

Belki bu kadar ihtimal yeterli diyerek bir kabul yapmak yerinde olur.
Boşta bırakılan 10 bitlik bir adc pininde çevredeki parazitik etkilerden dolayı oluşan gerilim çok fazla olmuyor.Yani tutupta +3.3v veya +5 volt oluşmuyor Bu nedenle okunan minik değeri 777 gibi büyük bir rakamla veya daha büyüğü ile çarptım ki word değerini bir kaç kere aşıp daha daha rastgele sayılar oluştursun.
Çıkan sonuçlarıda aşağı yukarı aralıklara bölüp ledlerin aktif oluşunu bu aralıklara göre koşullandırdım.
Tabiki çok tutarlı bir yöntem değil ama istediğim cevaba en yakın sonucu veren yöntem bu şimdilik.
Yarın farklı yöntemlerle de yapıp denemediğim bir yöntem bırakmamaya çalışacağım. sonuçları yazarım.
ego=1/Knowledge

z

#68
ADC girisini bosta birakmayacaksin. Daha once yazmistim girise direncli gerilim bolucu uzerinden 1v gibi bir voltaj gireceksin. (Full range'in ortasi gibi) ADC olcumleri zaten gurultu icerecegi icin en dusuk bit(ler) gurultuden etkilenir.

Sen bu bitleri paketleyerek byte word vs elde edeceksin.

Aksi halde ADC den full range'i dolduran  gurultu okuyamazsin.

Ancak bu yontemle random veriler ureteceksen MCU devreden peryodik akimlar ceken surusler kullanmaman gerekir. (PWM ile bir seyler falan calistirma.)

Aksi halde besleme gerilimine mudahale etmis olursun ve veriler random ozelligini kaybeder.

Bu isi tamamen digital tekniklerle yapacaksan LFSR ile ugrasman gerekecek. (Fakat sahte random olur.)

https://en.wikipedia.org/wiki/Linear-feedback_shift_register

Diyod gurultusunu yabana atmayin. Bu konuda gecmisten bolca deneyimim var.

Asil calismalarim bir yana davulda zil/firca sesi icin de diyod gurultusunu bolca kullandim.

Gene ayni sekilde midi cipim de muzik sentezlemede LFSR teknigiyle digital gurultu kullaniyor.

Bana e^st de diyebilirsiniz.   www.cncdesigner.com

Mr.Thinking

Alıntı yapılan: z - 17 Aralık 2020, 01:17:14ADC girisini bosta birakmayacaksin. Daha once yazmistim girise direncli gerilim bolucu uzerinden 1v gibi bir voltaj gireceksin. (Full range'in ortasi gibi) ADC olcumleri zaten gurultu icerecegi icin en dusuk bit(ler) gurultuden etkilenir.

Sen bu bitleri paketleyerek byte word vs elde edeceksin.

Aksi halde ADC den full range'i dolduran  gurultu okuyamazsin.

Ancak bu yontemle random veriler ureteceksen MCU devreden peryodik akimlar ceken surusler kullanmaman gerekir. (PWM ile bir seyler falan calistirma.)

Aksi halde besleme gerilimine mudahale etmis olursun ve veriler random ozelligini kaybeder.

Bu isi tamamen digital tekniklerle yapacaksan LFSR ile ugrasman gerekecek. (Fakat sahte random olur.)

https://en.wikipedia.org/wiki/Linear-feedback_shift_register

Diyod gurultusunu yabana atmayin. Bu konuda gecmisten bolca deneyimim var.

Asil calismalarim bir yana davulda zil/firca sesi icin de diyod gurultusunu bolca kullandim.

Gene ayni sekilde midi cipim de muzik sentezlemede LFSR teknigiyle digital gurultu kullaniyor.


Evet hocam. Sizin yönteminizi de deneyeceğim. Paketleme önerisi mantıklı.
ego=1/Knowledge

JOKERAS

Alıntı yapılan: elektro77 - 16 Aralık 2020, 20:57:30doğaçlama
ad
1.
hiç hazırlanmadan, birdenbire ve içine doğduğu gibi söyleme biçimi.
"Televizyon canlı yayın olarak verdi, yapıt doğaçlamayla ortaya çıktı"
2.
TİYATRO TERİMİ
bir metne dayanmadan, içe doğduğu gibi konuşma ve oynama.
Kavramlara takılmamak lazım.Doğaçlama ifadesi Doğurmaktan gelir.
En azından ben öyle düşünerek benzetim yaptım.Belki ifade biçimim yanlış olabilir.

elektro77 ,bu yazdığınız hangi dil?
Bu kodu gerçekte de denedinizmi?
Kodlarınız Algoritmanız mükemmel görünüyor.
Ama bu kadar felsefi konuşmadan sonra mükemmel olmasını beklemek
çok fazla şey olmasa gerek:)

Bu sayede Accayip Aydınlandık.Allah razı olsun.Sizde çok Yardımseversiniz.
Ve ayrıca Çok kibar bir beyefendisiniz.Her yerinizden Kibarlık akıyor Maşallah.
Allah nazarlardan korsun İnşallah.

Selamlar Saygılar hürmetler efenim Naçizane sürçilisan ettiysek affola  :)
Kendinize iyi bakın,üşütmeyin Lütfen.


power20

#71
Nolmuş yani, teknik içerik üretemezsek, edebiyat yaparız.

Mr.Thinking

#72
Alıntı yapılan: JOKERAS - 17 Aralık 2020, 14:10:33Kavramlara takılmamak lazım.Doğaçlama ifadesi Doğurmaktan gelir.
En azından ben öyle düşünerek benzetim yaptım.Belki ifade biçimim yanlış olabilir.

elektro77 ,bu yazdığınız hangi dil?
Bu kodu gerçekte de denedinizmi?
Kodlarınız Algoritmanız mükemmel görünüyor.
Ama bu kadar felsefi konuşmadan sonra mükemmel olmasını beklemek
çok fazla şey olmasa gerek:)

Bu sayede Accayip Aydınlandık.Allah razı olsun.Sizde çok Yardımseversiniz.
Ve ayrıca Çok kibar bir beyefendisiniz.Her yerinizden Kibarlık akıyor Maşallah.
Allah nazarlardan korsun İnşallah.

Selamlar Saygılar hürmetler efenim Naçizane sürçilisan ettiysek affola  :)
Kendinize iyi bakın,üşütmeyin Lütfen.


Sözlerinizdeki ironik ima dikkatimden kaçmış değil. Yorum yapmayacağım. Gerek yok.
Yazdığım dil pic basic
evet gerçekte denedim. Çalışıyor ama tutarlı rastgelelikler değil.
Kodlar zor olmasın istemiştiniz. Zor olunca anlamak zor oluyor demiştiniz.
Alıntı yapılan: JOKERAS - 16 Aralık 2020, 15:10:16Basit olsun ama.Zor olunca anlaşılmıyor.
ego=1/Knowledge

Mr.Thinking

#73
Bu başlığı açmadaki asıl amaç led yakmak değildi zaten. İrade kavramının yazılımsal bir dille tanımlanıp tanımlanamayacağı konusunda fikir edinmekti. "İ noktası" aslında "irade" kelimesinin baş harfi idi.
Yöntemim doğru olmayabilir, buna katılırım. Ama bu yöntemle ben bu soruyu sormadan, hem ilgisi olanları düşündürdüm hem de gelen cevaplarla felsefik boyuta  ulaştım.
Afedersiniz ama, sizin olayın felsefi boyutuna çıkabildiğiniz konusunda emin değilim artık.
Yada şöyle yazsam daha hoşunuza gider miydi?
Kibar olmadan;
Jokeras, niye iğneliyorsun kardeşim güceniyorum ama. Bana haksızlık ediyorsun
ego=1/Knowledge

JOKERAS

Alıntı yapılan: elektro77 - 17 Aralık 2020, 14:23:21evet gerçekte denedim. Çalışıyor ama tutarlı rastgelelikler değil.
Kodlar zor olmasın istemiştiniz. Zor olunca anlamak zor oluyor demiştiniz.
Nasıl çalışıyor?Wdt'yi açık unutmuşsun:)

Alıntı yapılan: elektro77 - 17 Aralık 2020, 14:40:02Bu başlığı açmadaki asıl amaç led yakmak değildi zaten. İrade kavramının yazılımsal bir dille tanımlanıp tanımlanamayacağı konusunda fikir edinmekti. "İ noktası" aslında "irade" kelimesinin baş harfi idi.
Yöntemim doğru olmayabilir, buna katılırım. Ama bu yöntemle ben bu soruyu sormadan, hem ilgisi olanları düşündürdüm hem de gelen cevaplarla felsefik boyuta  ulaştım.
Afedersiniz ama, sizin olayın felsefi boyutuna çıkabildiğiniz konusunda emin değilim artık.
Yada şöyle yazsam daha hoşunuza gider miydi?
Kibar olmadan;
Jokeras, niye iğneliyorsun kardeşim güceniyorum ama. Bana haksızlık ediyorsun
Bak Dostum ben seni tanıyormuyum?Sen beni tanıyormusun?
Bu forumda benim yüz yüze tanıdığım 2 kişi var,onlar da pek gelmez yorum yapmaz zaten.
Tanımadığım İnsanlara İğneleme yapmak gibi bir huyum yoktur.Sadece Şaka,espri yaparım müsade ederse.
Felsefe dedin yaptık,Bir sürü edebiyat parçaladık.
Kök,ağaç,Dallar,Budaklar,Elmalar dedik vs,Doğurmak,Çoğalmak dedik genişlemek dedik vs.
Havva ile Adem'i düşün.2 İnsandan 8 Milyara ulaştı.

Daha ilk mesajımda Timer için soru sordum kaale alıp cevap yazmadın.
Önerilen bir çok yönteme kulp taktın.Timer ve Adc dışarıda değil içeride dedik,
yerel değişkenler Rastgele değer alır dedik duymadın.
Şimdi bu kadar şeyden sonra da gelip İğneleme yapıyorsun diyorsun.
Eğer ben İğneliyorsam Sen Çuvaldızlıyorusn Sayın elektro77  :)