Kazalo:

Besedna ura s štirimi črkami z generatorjem besed Akafugu in navdihujočimi stavki: 3 koraki
Besedna ura s štirimi črkami z generatorjem besed Akafugu in navdihujočimi stavki: 3 koraki

Video: Besedna ura s štirimi črkami z generatorjem besed Akafugu in navdihujočimi stavki: 3 koraki

Video: Besedna ura s štirimi črkami z generatorjem besed Akafugu in navdihujočimi stavki: 3 koraki
Video: Терренс Дикон раскрывает скрытую связь: сознание и энтропия 2024, Julij
Anonim
Image
Image
Besedna ura s štirimi črkami z generatorjem besed Akafugu in navdihujočimi stavki
Besedna ura s štirimi črkami z generatorjem besed Akafugu in navdihujočimi stavki
Besedna ura s štirimi črkami z generatorjem besed Akafugu in navdihujočimi stavki
Besedna ura s štirimi črkami z generatorjem besed Akafugu in navdihujočimi stavki

To je moja različica ure s štirimi črkami, ideja, ki je nastala v sedemdesetih letih prejšnjega stoletja. Ura prikazuje vrsto štirimestnih besed, ki nastanejo bodisi iz algoritma za ustvarjanje naključnih besed ali iz baze podatkov sorodnih štiričrkovnih besed.

Ta različica uporablja sodobnejše 14-segmentne LED zaslone in mikrokrmilnik Atmega 328p za prikaz besed in časa. Podprta sta dva načina ustvarjanja besed. Prva uporablja algoritem za ustvarjanje štiričrkovnih skupin besed, ki bodo verjetno dejanske besede, podobne izvirniku. Vsaka naslednja beseda ni povezana s prejšnjo. Drugi način uporablja podatkovno bazo relacijskih besed iz "Edinburškega asociativnega tezavra", dokument besednih združenj, ki temelji na odzivih ljudi na vprašanje prve besede, ki jim pride na misel, potem ko jim je dal začetno besedo, nato pa postopek nadaljuje z odzivno besedo. Podatkovno zbirko je korporacija Akafugu prilagodila pisanju štirih črk, ki je ustvarila 57-kilobajtno podatkovno datoteko, ki je shranjena v zunanjem EEPROM-u za obdelavo pri Atmegi. Rezultat je, da ura uporablja čas Unixa kot naključno seme in ustvari niz povezanih štiričrkovnih besed na podlagi človeških odzivov in ne nekega algoritma.

Opomba: Baza besed Akafugu vsebuje nekaj spolno eksplicitnih in potencialno žaljivih besed. Če vas to moti, vklopite način naključnih besed. To lahko povzroči tudi nekaj žaljivih besed, vendar vsaj ne bo prikazalo tokov povezanih žaljivih besed!

"Edinburški pridruženi tezaver" je bil sestavljen na podlagi odgovorov ljudi, ki so v zgodnjih 60. letih živeli v Angliji. Besedni odnosi vsekakor odražajo to pristranskost! Besedi "NAJBOLJŠE" na primer pogosto sledi "PETE". Nobena očitna povezava ne obstaja, razen če kdo ve, da je bil Pete Best prvotni bobnar Beatlov v začetku 60. let! Številne so druge pristranskosti do britanske kulture 60 -ih let. Mislim, da je zelo zanimivo gledati!

Naprava vsebuje tudi naslovljiv modul za realno časovno uro I2C z rezervno baterijo za ponovno polnjenje. Ura prikazuje 5 besed iz enega od dveh izbirnih algoritmov, nato pa prikaže čas, datum, dan v tednu in leto. Ura in načini delovanja so nastavljeni s tremi stikali. Načini delovanja so shranjeni v nehlapnem EEPROM-u in preživijo ponastavitev ali izpad napajanja. RTC še naprej deluje približno eno leto po izklopu napajanja z izjemno temperaturno kompenzirano natančnostjo. Pravilen čas se samodejno prikaže ob ponovni vzpostavitvi napajanja.

Dodatna funkcija je 107 citatov o času, ki so naključno prikazani vsakih 10 minut. Ti citati se pomikajo od desne proti levi med štirimi znaki in pogosto spodbujajo in navdihujejo! Shranjevanje stavkov je v zunanjem EEPROM -u z zbirko besed Akafugu. Databse zavzame le 57 Kbajtov od 64 Kbajtov, ki so na voljo v napravi, tako da ostane prostora za 107 stavkov. Izraz "hvalisanje" je vedno prvi, ki se prikaže, ko se ura prvič vklopi v naslednjih 10 minutah.

Enota uporablja skupne katodne 14-segmentne zaslone (po 2 katodi za vsako števko), ki jih multipleksira rutinska servisna rutina s časovnikom, zaradi česar se štirimestni zaslon osveži pri 100 Hz. Kadarkoli se izvaja ISR, izklopi prejšnji pol-znak, pridobi 7 od 14 segmentov za enega od štirih znakov, vklopi ustrezne odseke segmenta in ozemlji ustrezno katodo. Zasloni so nekoliko nenavadni, vendar sem imel velik presežek, ki sem ga želel uporabiti. Dvojna skupna katoda zmanjša število potrebnih zatičev na števko s 15 na 9. Zatiči na Atmegi 328p so ravno dovolj za omogočanje neposrednega pogona zaslona brez registra premikov.

NALOGA: Spremenite kodo za uporabo 4-mestnega alfanumeričnega modula LED Adafruit

1. korak: Zgodovina

Zgodovina
Zgodovina
Zgodovina
Zgodovina
Zgodovina
Zgodovina
Zgodovina
Zgodovina

Prvotna ura FLW je bila zgrajena z velikimi alfanumeričnimi neonskimi cevmi Burroughs B7971, odstranjenimi iz razstavljenih plošč za prodajo zalog. Te so podobne številskim nixie cevkam tistega časa, vendar so uporabile 14-segmentni zaslon za oblikovanje vseh znakov ASCII. Ura je uporabila diskretno logiko in izbirala črke iz tabele, da je oblikovala naključne štiri kombinacije črk, ki so bile utežene, da bi verjetno ustvarile prave besede.

Z algoritmom V prvotnem modelu iz leta 1972 se na vsakem mestu pojavijo le določene črke. Narejena je bila ročno analizo več sto štirimestnih besed in prešteta je bila pogostost črk na vsakem od štirih mest. Uporabljenih je bilo deset najpogostejših črk vsakega položaja, razen na drugem mestu, ki je vsebovalo le osem črk.

Za vsak položaj je preprost števec BCD (0-9) (74LS90 IC) prosto tekel in štetje je bilo zajeto in zadržano približno enkrat na nekaj sekund do enkrat na minuto, odvisno od nastavitve hitrosti. Posnetek števca je bil nato uporabljen na matriki za dekodiranje diod (z uporabo približno 150 diod) za oblikovanje znakov.

Ker je bilo za vsako mesto izbranih le deset (ali osem) najpogostejših črk, ne glede na kombinacije črk, se lahko pojavi veliko drugih besed, na primer FRLR, LREE, LLLL itd.

Upoštevajte, da je imela druga pozicija samo osem črk, saj sta imeli deveta in deseta črka v vzorcu sorazmerno nizko frekvenco, medtem ko sta imela prva in druga izjemno visoko frekvenco-zato sta bili podvojeni. Tako je 10 x 8 x 10 x 10 = 8000 permutacij. Črke, ki so bile programirane v prvi model 1973, so prikazane na eni od zgornjih slik.

2. korak: Koda in shema

Koda in shema
Koda in shema
Koda in shema
Koda in shema
Koda in shema
Koda in shema
Koda in shema
Koda in shema

Shema je priložena.

Ura je lahko zgrajena s katerim koli Arduinom na osnovi Atmega 328p.

Za uporabo s samostojnim Atmega 328p, kot je prikazano na shemi, je treba za programiranje mikrokrmilnika preko Arduino IDE uporabiti programer ISP. Po programiranju je treba varovalke nastaviti z naslednjim ukazom avrdude (WinAVR mora biti nameščen). Zamenjajte vrata com in tip programerja. Najlažje je uporabiti Arduino kot programerja ponudnika internetnih storitev. Google za podrobnosti.

avrdude -c arduino -P com13 -b 19200 -p atmega328p -U l varovalka: w: 0xFF: m -U hfuse: w: 0xDF: m -U efuse: w: 0x05: m

Te nastavitve onemogočijo vektor za ponastavitev zagonskega nalagalnika, tako da se koda takoj začne od vektorja glavne kode. Varovalke so nastavljene tudi za zunanji 16MHz oscilator. Ko je zapisan, čipa ne boste mogli več programirati, dokler kristala in kondenzatorjev ne povežete, kot je prikazano na shemi, saj je privzeti notranji oscilator onemogočen s temi nastavitvami varovalk.

Za dostop do rutine ure RTC mora biti nameščena knjižnica DS3231 Arduino. V knjižnici je treba omogočiti časovno podporo Unixa tako, da razkomentirate vrstico "#define CONFIG_UNIXTIME" v datoteki config.h knjižnice DS3231 RTC. Čas Unix se uporablja kot seme za generator naključnih števil, tako da se zaporedja besed in besednih zvez ne ponovijo vsakič, ko se ura vklopi.

Sam modul ure DS3231 RTC je pogosta sorta, ki se prodaja na ebayu. Modul je prikazan zgoraj. Poiščite tip z rezervno baterijo za ponovno polnjenje.

Poleg programiranega mikrokrmilnika je potrebno pridobiti in programirati tudi serijski EEPROM Microchip 24LC512 s podatkovno zbirko besed in seznamom fraz Akafugu. To se naredi s preprostim vezjem, zgrajenim z Arduinom, in kartico SD, oblikovano kot FAT32, na kateri je datoteka output2.dat. Skica prebere podatke s kartice SD in jih zapiše v EEPROM. Podrobnosti najdete na naslednjih dveh povezavah. V tem navodilu za uporabo uporabite programsko skico in podatkovno datoteko, saj v povezavi Akafugu manjka zbirka fraz. Sledite postopku na povezavah.

Pregled baze podatkov Akafugu FLW

Navodila za zapisovanje podatkovne datoteke v EEPROM

3. korak: Nastavitev in nadzor ure

Za nastavitev ure se uporabljajo naslednje kombinacije gumbov:

Nastavljena ura: Med normalnim delovanjem držite gumb 1.

Nastavljene minute: Med normalnim delovanjem držite gumb 2. Drugi so samodejno ponastavljeni na "00"

Sekunde ponastavljene na nič: Med normalnim delovanjem držite gumb 3, spustite za sinhronizacijo z začetkom nove minute

Nastavi mesec: Med normalnim delovanjem držite gumba 1 in 2 skupaj

Nastavite datum: Med normalnim delovanjem držite gumba 1 in 3 skupaj

Nastavite leto: Med normalnim delovanjem držite gumba 2 in 3 skupaj

Nastavite dan v tednu: Med normalnim delovanjem držite gumbe 1, 2 in 3 skupaj

Ko se enota prvič vklopi, se načini delovanja hitro prikažejo, preden se začne ustvarjanje besed:

"EE" pomeni zunanji EEPROM I2C, ki vsebuje podatkovno zbirko besed Akafugu in seznam fraz.

"NOEE" pomeni, da EEPROM ni bil zaznan. Enota se vrne v naključno ustvarjanje besed in brez prikaza fraze.

"CK" pomeni, da sta čas in datum prikazana po 5 zaporednih besedah.

"NOCK" pomeni, da je čas/datum izklopljen. Neprekinjeno se prikazuje stalen tok besed, ki jih vsakih 10 minut prekine stavek.

"RND" pomeni, da se uporablja način ustvarjanja naključnih besed

"REL" pomeni, da se uporablja relacijski način ustvarjanja podatkovne zbirke besed "Akafugu"

Če želite spremeniti in shraniti načine, odklopite uro in jo znova vklopite, medtem ko držite enega od označenih gumbov. Nato spustite gumb. Novi način je shranjen in prikazan:

Gumb 1: Preklopite in shranite način ustvarjanja naključnih ali relacijskih besed

Gumb 2: Vklopite ali izklopite prikaz datuma/časa po 5 zaporednih besedah

Priporočena: