Мазмұны:
Бейне: Akafugu сөз генераторы мен шабыттандыратын фразалармен төрт әріптен тұратын сағат сағаты: 3 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:24
Бұл менің төрт әріптен тұратын сағат сағаттарының нұсқасы, бұл идея 1970 жылдары пайда болған. Сағат кездейсоқ сөз генераторының алгоритмінен немесе байланысты төрт әріптен тұратын мәліметтер базасынан жасалған төрт әріптен тұратын сөздердің сериясын көрсетеді.
Бұл нұсқада сөздер мен уақытты көрсету үшін заманауи 14 сегментті жарықдиодты дисплейлер мен Atmega 328p микроконтроллері қолданылады. Сөз құрудың екі режиміне қолдау көрсетіледі. Біріншісі түпнұсқаға ұқсас нақты сөздер болуы мүмкін төрт әріптен тұратын сөз таптарын құру үшін алгоритмді қолданады. Әр кезекті сөз алдыңғы сөзбен байланысты емес. Екінші режимде «Эдинбург ассоциативті тезаурусы» реляционды сөздердің дерекқоры пайдаланылады, бұл сөздердің ассоциациясының құжаты, оларға тұқым сөзін бергеннен кейін ойға келетін бірінші сөзді сұрауға жауап береді, содан кейін процесті жауап сөзімен жалғастырады. Деректер қоры Akafugu корпорациясымен төрт әріптен тұратын сөз құруға бейімделді, ол 57 Kbyte деректер файлын құрды, ол Atmega өңдеу үшін сыртқы EEPROM-да сақталады. Нәтижесінде сағат Unix уақытын кездейсоқ тұқым ретінде пайдаланады және кейбір алгоритмге емес, адамның жауаптарына негізделген төрт әріптен тұратын сөздердің тізбегін жасайды.
Ескертпе: Akafugu сөздер қорында бірнеше сексуалды және ықтимал қорлайтын сөздер бар. Егер бұл сізді мазаласа, кездейсоқ сөз режимін қосыңыз. Бұл сондай -ақ кейбір қорлайтын сөздерді тудыруы мүмкін, бірақ, кем дегенде, қатысты ренішті сөздер ағынын көрсетпейді!
«Эдинбург қауымдастық тезаурусы» 60 -жылдардың басында Англияда тұратын адамдардың жауаптары негізінде құрастырылды. Қарым -қатынас сөзі бұл жағымсыздықты көрсетеді! Мысалы, «ЕҢ ҮЗДІК» сөзінен кейін «ПЕТЕ» жиі келеді. Пит Бест 60 -жылдардың басында Битлз үшін барабаншы болғанын білмейінше, ешқандай айқын байланыс жоқ! 60 -шы жылдардағы Ұлыбритания мәдениетіне қатысты басқа көзқарастар көп. Менің ойымша, қарау өте қызықты!
Сондай -ақ, құрылғыда зарядталатын батареяның резервтік көшірмесі бар I2C адрестелетін нақты уақыт сағаты модулі бар. Сағат екі алгоритмнің бірінен 5 сөзді көрсетеді, содан кейін уақытты, күнді, аптаның күнін және жылын көрсетеді. Сағат пен жұмыс режимі үш түйме қосқышының көмегімен орнатылады. Жұмыс режимдері тұрақты емес EEPROM-де сақталады және қалпына келтіруден немесе электр қуатының үзілісінен аман қалады. РТЖ электр қуаты өшірілгеннен кейін шамамен бір жыл бойы жұмыс істеуін жалғастырады, бұл температураның өте жоғары дәлдігімен. Қуат қалпына келтірілгенде дұрыс уақыт автоматты түрде көрсетіледі.
Қосымша мүмкіндік - бұл әр 10 минут сайын кездейсоқ көрсетілетін уақыт туралы 107 дәйексөз. Бұл цитаталар оңнан солға қарай төрт таңбаны айналдырады, олар жиі жігерлендіреді және шабыттандырады! Сөз тіркестерін сақтау сыртқы EEPROM -де Akafugu сөздер базасы бар. Деректер қоры құрылғыда бар 64 Кбайттың тек 57 Кбайтын алады, бұл 107 фраза үшін бос орын қалдырады. Келесі 10 минуттық интервалда сағат бірінші рет қосылған кезде «мақтаншақ» фразасы әрқашан бірінші болып көрсетіледі.
Құрылғы 14 сегментті жалпы катодты дисплейлерді пайдаланады (әр цифр үшін 2 катод), олар таймердің үзіліс қызметімен мультиплексияланады, нәтижесінде төрт таңбалы дисплей 100 Гц жиілікте жаңартылады. ISR іске қосылған сайын, ол алдыңғы жартылай таңбаны өшіреді, төрт сегменттің біреуі үшін 14 сегменттің 7-ін шығарады, сәйкес сегмент түйреуіштерін қосады және сәйкес катодты қосады. Дисплейлер сирек кездеседі, бірақ менде қолданғым келетін үлкен артықшылық бар еді. Қосарланған катод бір цифрға қажетті түйреуіштердің санын 15-тен 9-ға дейін азайтады. Atmega 328p дисплейде ауысу регистрінсіз дискіні тікелей басқаруға мүмкіндік беретін түйреуіштер жеткілікті.
Іс-әрекет: Adafruit 4 таңбалы әріптік-сандық жарықдиодты модульді пайдалану үшін кодты өзгертіңіз
1 -қадам: Тарих
Түпнұсқалық FLW сағаты пайдаланудан шығарылған акциялардың сауда тақталарынан тазартылған үлкен Burroughs B7971 неонды -артық санды түтіктермен салынған. Олар сол кездегі сандық никси түтіктеріне ұқсас, бірақ барлық ASCII таңбаларын қалыптастыру үшін 14 сегментті дисплейді қолданды. Сағат дискретті логиканы қолданып, кестеден әріптерді таңдап, нақты сөздерді шығаруға болатын салмақты төрт әріптік комбинацияны құрды.
Алгоритммен 1972 жылғы бастапқы модельде әр позицияда тек белгілі әріптер пайда болады. Бірнеше жүз төрт сөзден тұратын таблицалық талдау жасалды және әр төрт позициядағы әріптердің жиілігі есептелді. Тек сегіз әріптен тұратын екінші позицияны қоспағанда, әр позициядағы ең жиі кездесетін он әріп қолданылды.
Әр позиция үшін BCD (0-9) қарапайым есептегіші (74LS90 IC) еркін жүгірді және санау жылдамдық параметріне байланысты бірнеше секундтан минутына бір рет түсіріліп, ұсталды. Есептегіш суреті кейіпкерлерді қалыптастыру үшін диодты декодтау матрицасына (шамамен 150 диодты қолданып) қолданылды.
Әр позиция үшін ең көп таралған он (немесе сегіз) әріп таңдалғандықтан, әріптердің комбинациясын ескерместен, көптеген сөзсіз сөздер пайда болуы мүмкін, мысалы, FRLR, LREE, LLLL және т.б.
Назар аударыңыз, екінші позиция тек сегіз әріптен тұрады, өйткені үлгідегі тоғызыншы және оныншы әріптер пропорционалды төмен жиілікке ие болды, ал бірінші және екінші жиілік өте жоғары болды, сондықтан олар екі еселенді. Осылайша 10 x 8 x 10 x 10 = 8000 ауыстыру. 1973 жылдың бірінші үлгісіне бағдарламаланған әріптер жоғарыдағы суреттердің бірінде көрсетілген.
2 -қадам: код және схема
Схема қоса беріледі.
Сағат кез келген Atmega 328p негізіндегі Arduino көмегімен жасалуы мүмкін.
Схемада көрсетілгендей, дербес Atmega 328p -мен қолдану үшін Arduino IDE арқылы микроконтроллерді бағдарламалау үшін Интернет -провайдер бағдарламашысын қолдану қажет. Бағдарламалаудан кейін сақтандырғыштарды келесі avrdude пәрмені арқылы орнату керек (WinAVR орнатылуы керек). Компорт пен бағдарламашының түрін ауыстырыңыз. Arduino -ны провайдер ретінде пайдалану ең оңай. Толық ақпарат алу үшін Google.
avrdude -c arduino -P com13 -b 19200 -p atmega328p -U lfuse: w: 0xFF: m -U hfuse: w: 0xDF: m -U efuse: w: 0x05: m
Бұл параметрлер жүктеушіні қалпына келтіру векторын өшіреді, сондықтан код бірден негізгі код векторынан басталады. Сақтандырғыштар 16 МГц сыртқы осцилляторға да орнатылған. Жанғаннан кейін, кристалл мен конденсаторлар схемада көрсетілгендей қосылмағанша, чипті қайта бағдарламалай алмайсыз, себебі бұл сақтандырғыш параметрлерінің көмегімен әдепкі ішкі осциллятор өшірілген.
DS3231 Arduino кітапханасы RTC сағаттарына қол жеткізуді қамтамасыз ету үшін орнатылуы керек. DS3231 RTC кітапханасының config.h файлындағы «#define CONFIG_UNIXTIME» жолын түсіндіру арқылы кітапханада Unix уақыттық қолдауын қосу қажет. Unix уақыты кездейсоқ сандар генераторының тұқымы ретінде пайдаланылады, сондықтан сағат қосылған сайын сөздер мен сөз тіркестері қайталанбайды.
DS3231 RTC сағат модулінің өзі ebay -де сатылатын қарапайым сорт. Модуль жоғарыда көрсетілген. Қайта зарядталатын резервтік батареясы бар түрді іздеңіз.
Бағдарламаланған микроконтроллерден басқа, Akafugu сөздер қоры мен фразалар тізімі бар Microchip 24LC512 сериялық EEPROM алу және бағдарламалау қажет. Бұл Arduino көмегімен жасалған қарапайым схеманы және FAT32 форматындағы SD2 картасын, онда output2.dat файлы бар. Эскиз SD картасынан деректерді оқиды және оны EEPROM -ге жазады. Толық ақпаратты келесі екі сілтеме бойынша табуға болады. Осы нұсқаулықта бағдарламалау нобайы мен деректер файлын пайдаланғаныңызға сенімді болыңыз, себебі Akafugu сілтемесінде фразалық мәліметтер базасы жоқ. Сілтемелердегі процедураны орындаңыз.
Akafugu FLW дерекқорына шолу
Деректер файлын EEPROM -ге жазу нұсқаулары
3 -қадам: сағатты орнату және басқару
Сағатты орнату үшін келесі түймелер комбинациясы қолданылады:
Сағат орнатылды: қалыпты жұмыс кезінде 1 түймесін басып тұрыңыз.
Минут жиынтығы: қалыпты жұмыс кезінде 2 түймесін басып тұрыңыз. Екіншісі автоматты түрде «00» қалпына келтіріледі
Секунд нөлге қалпына келтірілді: қалыпты жұмыс кезінде 3 батырмасын басып тұрыңыз, жаңа минуттың басталуымен синхрондау үшін жіберіңіз
Айды орнату: 1 және 2 түймелерін қалыпты жұмыс кезінде бірге ұстап тұрыңыз
Күнді орнату: 1 және 3 түймелерін қалыпты жұмыс кезінде бірге ұстап тұрыңыз
Жылды орнату: 2 және 3 түймелерін қалыпты жұмыс кезінде бірге ұстап тұрыңыз
Апта күнін орнату: қалыпты жұмыс кезінде 1, 2 және 3 түймелерін бірге басып тұрыңыз
Құрылғы бірінші рет қосылған кезде, сөз генерациясы басталмай тұрып жұмыс режимдері тез көрсетіледі:
«EE» - бұл Akafugu сөз қоры мен фразалар тізімі бар I2C сыртқы EEPROM дегенді білдіреді.
«NOEE» EEPROM анықталмағанын білдіреді. Құрылғы кездейсоқ сөз генерациясына оралады және фразаны көрсетпейді.
«CK» - қатарынан 5 сөз көрсетілгеннен кейін уақыт пен күннің шығуын білдіреді.
«NOCK» уақыты/күні өшірілгенін білдіреді. Әр 10 минут сайын фразамен үзілген тұрақты сөздер легі үздіксіз көрсетіледі.
«RND» сөздерді кездейсоқ құру режимі қолданылғанын білдіреді
«REL» реляциялық «Akafugu» деректер қорын құру режимі пайдаланылғанын білдіреді
Режимдерді өзгерту және сақтау үшін көрсетілген түймелердің бірін ұстап тұрып, сағатты ажыратып, қайта қосыңыз. Содан кейін түймені босатыңыз. Жаңа режим сақталады және көрсетіледі:
1 -түйме: Кездейсоқ немесе реляциялық сөз құру режимін ауыстырып -қосады және сақтайды
2 батырмасы: қатарынан 5 сөзден кейін күнді/уақытты көрсетуді қосу немесе өшіру
Ұсынылған:
Сөз сағаты (неміс орналасуы): 8 қадам
Сөз сағаты (неміс тілінің орналасуы): Сәлеметсіз бе, бұл біздің жобалар. Бұл өте маңызды. Аллердингтер " нормалы " Өте жақсы, Word Clock. Бастапқыда сіз мақала бойынша мақала таба аласыз, бірақ бұл
«Дөңгелек» сөз сағаты (голланд және ағылшын тілдерінде!): 8 қадам (суреттермен)
«Дөңгелек» сөз сағаты (голланд және ағылшын тілдерінде!): Бірнеше жыл бұрын мен интернетте Word Clock -ты бірінші рет көрдім. Содан бері мен әрқашан өз бетімше жасағым келді. Нұсқаулықтар көп, бірақ мен түпнұсқа жасағым келді. Мен электроника туралы көп білмеймін, сондықтан мен
Радуга әсері мен фондық жарығы бар сөз сағаты: 6 қадам
Кемпірқосақ эффектісі мен фондық жарығы бар сөз сағаты: Басы сонда, алдыңғы тақтай 40 -тан 40 см -ге дейін және дайын
Ауа райына негізделген музыка генераторы (ESP8266 негізіндегі Midi генераторы): 4 қадам (суреттермен)
Ауа -райына негізделген музыкалық генератор (ESP8266 негізіндегі Midi генераторы): Сәлеметсіз бе, мен бүгін ауа -райына негізделген музыкалық генераторды қалай жасау керектігін түсіндіремін, ол ESP8266 негізінде жасалған, ол Arduino сияқты, ол температураға, жаңбырға жауап береді. және жарық қарқындылығы.Ол бүкіл әндер мен аккордтар жасайды деп күтпеңіз
Arduino мен RTC көмегімен сөз сағаты: 7 қадам (суреттермен)
Arduino мен RTC қолданатын сөз сағаты: Мен қызымның туған күніне ерекше сыйлық жасауды шештім. Біз екеуіміз де электрониканы жақсы білетіндіктен, «электроника» жасау жақсы болды. Сонымен қатар, біз бұрын бір -бірімізге осындай сыйлықтар сыйладық