Სარჩევი:
- ნაბიჯი 1: Spectrum Lab პროგრამული უზრუნველყოფა
- ნაბიჯი 2: დრო, როგორც სიხშირის თანმიმდევრობა
- ნაბიჯი 3: აჩვენეთ ყოველი მეათე წამი
- ნაბიჯი 4: ტალღის ფორმები
- ნაბიჯი 5: თვითნებური ბიტმაპების ჩვენება
- ნაბიჯი 6: "ინსტრუქციის" დიგიტალიზაცია
- ნაბიჯი 7: შედეგიანი ჩვენება
- ნაბიჯი 8: სიხშირეების თანმიმდევრობა
- ნაბიჯი 9: რობოტის დიგიტალიზაცია
- ნაბიჯი 10: რობოტი კომპიუტერის ეკრანზე
- ნაბიჯი 11: აპარატურა
- ნაბიჯი 12: პრინციპი
ვიდეო: Hellschreiber საათი: 13 ნაბიჯი (სურათებით)
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:21
პატარა მიკროკონტროლერი დაპროგრამებულია ტონების სერიის გამოსასვლელად, რომელიც კომპიუტერის ხმოვან ბარათზე მიწოდებისას და სპექტრის ანალიზატორის პროგრამით დამუშავებისას აჩვენებს მიმდინარე დროის გამოსახულებას.
ნაბიჯი 1: Spectrum Lab პროგრამული უზრუნველყოფა
ტონის გაანალიზებისა და ჩვენების ყველა მძიმე სამუშაო შესრულებულია უფასო პროგრამული უზრუნველყოფის საშუალებით, "სპექტრის ლაბორატორია", რომელიც დაწერილია სამოყვარულო რადიოს მოყვარულის, DL4YHF- ის მიერ. იგი აანალიზებს ხმას, რომელიც იკვებება ხმის ბარათით და აჩვენებს შედეგს სურათის სახით.
აქ გამოყენებულ ეკრანის ტიპს ეწოდება "ჩანჩქერის" ჩვენება და ის გადაადგილებულია მარჯვნივ მარცხნივ. ის ტრადიციულად გადადის ზემოდან ქვემოდან და, შესაბამისად, ტერმინი, ჩანჩქერი. ამ პროგრამას იყენებენ მოყვარულები, სხვა საკითხებთან ერთად დედამიწის ნახევარ გზაზე ვატის ფრაქციებთან დასაკავშირებლად. ეს არის ძალიან ქმედითი პროგრამა და აქვს მრავალი პარამეტრი, რომელიც უნდა იყოს მორგებული ზუსტად ისე, რომ მოხდეს კარგი ჩვენება. ტერმინი "Hellschreiber" წარმოიშვა ტელეგრაფიის სფეროში, დიდი ხნის წინ და სიტყვასიტყვით ნიშნავს წერას შუქით. შესავალზე ნაჩვენები ჩვენება არის სიხშირის ინტენსივობის ნაკვეთი დროის საწინააღმდეგოდ. მიკროკონტროლერი დაპროგრამებულია, რათა გამოიმუშაოს მთელი რიგი ტონები, ისე, რომ ინფორმაციის სურათი ამ პროგრამით იყოს დახატული. ეს რეჟიმი განისაზღვრება, როგორც "თანმიმდევრული მრავალ ტონიანი Hellschreiber" და გამოიყენება შორ მანძილზე კომუნიკაციისთვის შედარებით მარტივი გადამცემი აღჭურვილობის გამოყენებით.
ნაბიჯი 2: დრო, როგორც სიხშირის თანმიმდევრობა
ეს ეკრანის სურათი აჩვენებს საათის გადაღებას, რომელიც აგზავნის თანმიმდევრულ წამს ინფორმაციას. სინამდვილეში ეს არის ყალბი, ვინაიდან ციფრების თითოეულ ნაკრს გენერირება სჭირდება რამდენიმე წამი და ეკრანები მოიცავს დროის უფრო დიდ ინტერვალს, ვიდრე შემოთავაზებული სამი წამი.
ციფრების ხაზის ზემოთ დანახული წერტილების ნიმუში განპირობებულია ტონების ჰარმონიულობით: მიკროკონტროლერი ქმნის ტონებს პორტის ხაზის მიწოდებაზე ან მიწაზე გადართვით, ხოლო წარმოქმნილ მართკუთხა ტალღას აქვს მრავალი ჰარმონიკა. ვინაიდან ეს პირდაპირ კვებავს ხმის ბარათს, ეკრანი აჩვენებს ყველა ამ ჰარმონიკას სასურველ ფუნდამენტურ სიხშირესთან ერთად. ვინაიდან სუფთა სინუსური ტალღის მოწყობა რთულია, ჩვენება ჩვენებისათვის გამოყენებულ მაქსიმალურ და მინიმალურ სიხშირეებს შორის უნდა იყოს ოქტავაზე ნაკლები. სხვა სიტყვებით რომ ვთქვათ, მაქსიმალური სიხშირე უნდა იყოს ორჯერ ნაკლები, ვიდრე მინიმალური სიხშირე.
ნაბიჯი 3: აჩვენეთ ყოველი მეათე წამი
ფიგურაში ნაჩვენები ეკრანი უფრო რეალისტურია საათისგან მიღებული შესრულების სახის მიხედვით: განაახლოთ ყოველ ათ წამში.
ციფრები დაპროგრამებულია ისე, რომ იყოს დაშორებული ვიზუალურად უფრო ლამაზი. ყველა პროგრამა, რომელმაც წარმოადგინა ეს დისპლეები, შეტანილია zip ფაილში ამ ინსტრუქციის ბოლო ეტაპზე. მიკროსქემის დიაგრამა ASCII ფორმატში შედის asm ფაილებში. მიკროკონტროლი იყო მიკროჩიპი 12F510, რვა ტყვიის მიკროკონტროლერი, რომელიც 32,768 კჰც სიხშირით იყო დაკავებული საათის პატარა ბროლის გამოყენებით. მხოლოდ ერთი გამომავალი ხაზი იყო გამოყენებული, რის გამოც ორი I/O ხაზი და ერთი შემავალი ხაზი თავისუფალია სხვა გამოყენებისთვის.
ნაბიჯი 4: ტალღის ფორმები
ორი ფიგურა აჩვენებს ტალღის ფორმას, რომელიც შედის ხმის ბარათში, რათა შესაძლებელი იყოს ეს ჩვენებები.
პირველი აჩვენებს შვიდივე სიხშირის გამოსვლას თანმიმდევრობით და პირველი სიხშირე ისევ. ეს არის ციფრი "1", შვიდი სიხშირის გარბენი, რომელიც იწვევს ვერტიკალურ ხაზს, ხოლო საბოლოო არის ბაზის მარჯვენა მხარე. მეორე გვიჩვენებს, თუ როგორ იწვევს ხარვეზები ეკრანზე ცარიელ ადგილებს. თუ პერსონაჟის ფორმირების წერტილოვან მატრიცაში კონკრეტული სივრცე ცარიელია, შესაბამისი სიხშირე არ იგზავნება მისი დროის მონაკვეთის განმავლობაში, რითაც იქმნება ხასიათი მსუბუქი ლაქებით და ცარიელი სივრცით.
ნაბიჯი 5: თვითნებური ბიტმაპების ჩვენება
დროის ან სხვა ამგვარი ალფანუმერული მონაცემების ჩვენება კარგია, მაგრამ ზოგჯერ ჩვენ გვსურს შემთხვევითი საგნების საკმაოდ კარგი ჩვენება.
ეს შეიძლება გაკეთდეს, როგორც ეს იქნება განხილული და ნაჩვენები. მე დავწერ პროგრამებს, რომლებიც აჩვენებენ ტექსტის სტრიქონს "Instructables" როგორც ბიტმაპს და ინსტრუქციულ რობოტს, გრაფიკული სახით 24 პიქსელით. უპირველეს ყოვლისა, საჭირო სურათები უნდა იყოს ციფრული. საწყისი ნაბიჯი არის მათი დახატვა გრაფიკულ ქაღალდზე. "Instructables" დაიწერა შრიფტით ხუთი პიქსელის სიმაღლეზე. ვინაიდან ეს გადაეცემა ბიტმაპას, მე ყველგან ვწერ ასოებს, სადაც ეს შესაძლებელია, წაკითხვის დარღვევის გარეშე. ინსტრუქტორული რობოტის გამოსახულება შემცირდა 24 პიქსელამდე ვერტიკალურად, შემდეგ მე მისი მონახაზი წერტილებით აღვნიშნე და ინტერიერშიც რამდენიმე წერტილი დავამატე. მე ვფიქრობ, რომ ხალხი ამოიცნობს რობოტს, განსაკუთრებით იმ შემთხვევაში, თუ წინასწარ ეტყვით მათ, რომ ეს არის ის, რაც უნდა იყოს.
ნაბიჯი 6: "ინსტრუქციის" დიგიტალიზაცია
სურათი გვიჩვენებს, თუ როგორ არის ციფრული ტექსტის სტრიქონის ბიტმაპი.
მაგალითად, მარცხენა სვეტის აღებით, მისი ყველა პიქსელი შავია. ასე რომ, ისინი ყველა ერთია: 11111 ჩვენ ვჯგუფებთ ოთხს, ვაკეთებთ ორ ნიბლს: 1 1111 ეს ორი შემდეგ გამოიხატება ჰექსადეციალურად, კომპაქტური გამოსახულებისთვის: 1 F ვინაიდან სიმბოლოები ხუთი ბიტიანი სიმაღლისაა, პირველი ციფრი იქნება 0 ან 1, ხოლო მეორე ციფრი უნდა იყოს 0-1, AF. ქვედა ითვლება უფრო მნიშვნელოვანი დასასრული. მეორე სვეტი ცარიელია, ასე რომ ყველა ნულოვანი: 00 ექვსკუთხედი. მესამე სვეტს აქვს პირველი სამი, რასაც მოყვება ორი ნული: 1 1100 -> 1 C და ასე გრძელდება, ზუსტად ბოლომდე. ეს ყველაფერი შეფუთულია ჩართულ ფაილში, სახელწოდებით "instructlables.inc". ამრიგად, ძირითადი პროგრამის ჩართვის ფაილის მითითების ხაზის შეცვლით, თქვენ შეგიძლიათ შეცვალოთ ნაჩვენები ბიტმაპი. იმ შემთხვევაში, თუ თქვენ გააკეთებთ სხვა ბიმაპს, რომელიც აჩვენებს თქვენს სახელს, მაგალითად, შეგიძლიათ ჩაწეროთ იგი ფაილში "yourname.inc" და დარეკოთ მთავარ პროგრამაში.
ნაბიჯი 7: შედეგიანი ჩვენება
ის მუშაობს, როგორც ხედავთ ეკრანზე გამოსახულების შედეგად.
Spectrum Lab პროგრამული უზრუნველყოფა საშუალებას გაძლევთ შეარჩიოთ ეკრანის ფერები და ჩრდილები, ასე რომ გონივრული შერჩევით შეგიძლიათ აჩვენოთ ძალიან ლამაზი ტექსტი ამ პროგრამის გამოყენებით.
ნაბიჯი 8: სიხშირეების თანმიმდევრობა
მოდით უფრო ახლოს განვიხილოთ, თუ როგორ ჩამოყალიბდა ეს სურათი.
ქვემოთ მოყვანილ პირველ სურათზე ნაჩვენებია მიკრო მიერ გამოყოფილი სიხშირეების თანმიმდევრობა, მოკლე დროის გარჩევადობით. ის ნათლად გვიჩვენებს ტონების კიბეებზე ბუნებას, რადგან წერტილების შემქმნელი ტონები გამოიცემა სერიული თანმიმდევრობით. თქვენ ასევე შეგიძლიათ ნახოთ, თუ რატომ ჩამოყალიბდნენ პერსონაჟები ყველა ფერდობზე მარჯვნივ. მეორე აჩვენებს ერთსა და იმავე ეკრანს, განსხვავებული ფილტრის პარამეტრებით. ამ ფილტრის დროის გარჩევადობა მცირდება, ისე რომ წერტილები უფრო მეტ დროს იკავებს. შედეგად მიღებულ ჰორიზონტალურ ნაცხს აქვს ტექსტის წაკითხვის გაადვილების შედეგი. სიგნალს უნდა ჰქონდეს პროგრამის შესაბამისი პარამეტრი, სანამ ის ცნობადი გამოსახულების სახით გამოჩნდება.
ნაბიჯი 9: რობოტის დიგიტალიზაცია
რობოტი არის 24 ბიტიანი სიმაღლე და არ ჯდება ერთ რვა ბიტიან სიტყვაში. რობოტის დიგიტალიზაციისთვის განსხვავებული ტექნიკა იქნა გამოყენებული, ამჯერად ის სასწავლო პროგრამაა, რომელიც გამოიყენება "მუსიკალური მისალოცი ბარათისთვის".
ვინაიდან სურათი იქმნება ტონების თანმიმდევრობით, მუსიკალურ პროგრამას უნდა შეეძლოს რობოტის ჩვენება, იმ პირობით, რომ რობოტი მას მიეწოდება მუსიკის გადასაყვანად სიხშირეების თანმიმდევრობით. ფიგურაში ნაჩვენებია რობოტი, რიგები ეტიკეტირებული შეფერხების მნიშვნელობებით, რომელიც უნდა იყოს ჩართული მუსიკალურ პროგრამაში. ეს ფასეულობები ოდნავ შეცვლილია და ხელმისაწვდომია როგორც ჩამონათვალი robot.asm და ამან გამოიწვია თითქმის ცნობადი რობოტის ჩვენება.
ნაბიჯი 10: რობოტი კომპიუტერის ეკრანზე
ის ფრინველია … ის თვითმფრინავია … ეს არის მარსის საფრენი თეფში …
ეს არის ინსტრუქტაჟიანი რობოტი.
ნაბიჯი 11: აპარატურა
ფიგურები აჩვენებენ მიკროკონტროლერის ფოტოს და მიკროსქემის სქემას, რომელიც ამ სურათებს აწარმოებს.
ეს არის რვა პინიანი მიკროკონტროლი, 12F510, დამზადებულია მიკროჩიპის მიერ. მარცხნივ ნაჩვენები კაბელი უკავშირდება კომპიუტერის ხმის ბარათს. კონექტორი მარჯვნივ უკავშირდება პროგრამისტს და ასევე ამარაგებს ენერგიას. არაფრის გამორთვისა და რაიმე კავშირის შეცვლის გარეშე, მიკროკონტროლერის წაშლა და ხელახლა დაპროგრამება შესაძლებელია ICSP- ის საშუალებით, კომპიუტერზე შესაბამისი პროგრამების გაშვებით.
ნაბიჯი 12: პრინციპი
ფიგურა გვიჩვენებს პრინციპს სიმბოლოების შემქმნელი წერტილების მატრიცის ჩვენების უკან. მზარდი ტონების თანმიმდევრობა ქმნის კიბეების ტალღოვან ფორმას, რომელიც განსაზღვრული ინტერვალებით განმეორდება და ქმნის ხერხის სიხშირეების ჯგუფს. გასაგები, https://www.instructables.com/id/Oscilloscope-clock/, დროის ჩვენება ოსცილოსკოპზე. პრინციპი მსგავსია, გარდა იმისა, რომ ადრინდელი ძაბვის დონეს იყენებდა და ეს სიხშირეს იყენებს. განსხვავება ისაა, რომ ძაბვის დონეები ძალიან ძნელია ხმოვანი ბარათის გამოყენებით და თითქმის ყველა პროგრამა, რომელიც აჩვენებს ძაბვის დონეს, არ აჩვენებს მას რეჟიმში რაც ხდის სიმბოლოებს. თითოეული პერსონაჟი ნაჩვენებია როგორც სვეტების თანმიმდევრობა შვიდი პიქსელის სიმაღლეზე. თუ პიქსელის ქვედა ნაწილი უნდა იყოს განათებული, მისი შესაბამისი სიხშირე ჩართულია მოკლე დროში. "ოსცილოსკოპის საათის" შემთხვევაში, კონკრეტული ძაბვის დონე იმ დროისთვის იმართება. თუ ეს პიქსელი უნდა იყოს მუქი, ტონი საერთოდ არ არის გაკეთებული, ან ნაცვლად იგზავნება ბლანკი. ვინაიდან ეს სიხშირეები (ან ძაბვის დონეები) იგზავნება თანმიმდევრულად, ერთმანეთის მიყოლებით, ისინი ვერ ქმნიან ვერტიკალურ ხაზს. ისინი ქმნიან ხაზს, რომელიც იხრება მარჯვნივ. შესაძლებელია ამ ბიტების გაგზავნა საპირისპირო მიმართულებით, შემდეგ კი მიღებული პერსონაჟები დაიხრება მარცხნივ. ეს არაბუნებრივად გამოიყურება და ამიტომ სასურველია დღევანდელი მოწყობა. სხვა ტიპის hellschreiber, რომელიც აგზავნის ყველა ტონს ერთდროულად, შეუძლია სრულყოფილად ვერტიკალური სიმბოლოების წარმოება. ვინაიდან ეს მოითხოვს ყველა ტონის წარმოებას ერთდროულად, დამახინჯების გარეშე, შეუძლებელია მისი მარტივი განხორციელება ერთი მიკროკონტროლის გამოყენებით.
გირჩევთ:
როგორ გააკეთოთ ანალოგური საათი და ციფრული საათი Led Strip– ით Arduino– ს გამოყენებით: 3 ნაბიჯი
როგორ გავაკეთოთ ანალოგური საათი და ციფრული საათი Led Strip– ით Arduino– ს გამოყენებით: დღეს ჩვენ გავაკეთებთ ანალოგიურ საათს & ციფრული საათი Led Strip– ით და MAX7219 Dot მოდულით Arduino– ით. ის შეასწორებს დროს ადგილობრივ დროის ზონაში. ანალოგურ საათს შეუძლია გამოიყენოს უფრო გრძელი LED ზოლები, ასე რომ ის შეიძლება კედელზე ჩამოკიდდეს და გახდეს ხელოვნება
საპენსიო საათი / დათვლა / Dn საათი: 4 ნაბიჯი (სურათებით)
საპენსიო საათი / დათვლა / Dn საათი: უჯრაში მქონდა რამოდენიმე ამ 8x8 LED dot-matrix ჩვენება და ვფიქრობდი რა გამეკეთებინა მათთან. სხვა ინსტრუქციებით შთაგონებული, მე მივიღე იდეა ავაშენო დათვლის/ზევით ჩვენება მომავალ თარიღამდე/დროზე დასათვლელად და თუ მიზნობრივი დროა
ESP8266 ქსელის საათი ყოველგვარი RTC - Nodemcu NTP საათი არა RTC - პროექტი ინტერნეტ საათზე: 4 ნაბიჯი
ESP8266 ქსელის საათი ყოველგვარი RTC | Nodemcu NTP საათი არ არის RTC | ინტერნეტის საათის პროექტი: პროექტში იქნება საათის პროექტი RTC– ის გარეშე, ის მიიღებს დროს ინტერნეტიდან wifi– ს გამოყენებით და ის გამოჩნდება st7735 ეკრანზე
C51 4 ბიტიანი ელექტრონული საათი - ხის საათი: 15 ნაბიჯი (სურათებით)
C51 4 ბიტიანი ელექტრონული საათი - ხის საათი: ამ შაბათ -კვირას მქონდა თავისუფალი დრო, ასე რომ წინ წავიდა და ავაწყვე 2.40 აშშ დოლარი, 4 ბიტიანი DIY ელექტრონული ციფრული საათი, რომელიც ვიყიდე AliExpress– ისგან ცოტა ხნის წინ
ააშენეთ თქვენი კომპიუტერისთვის ნამდვილი ზარიანი საათი და ცეცხლსაქრობიანი საათი: 3 ნაბიჯი (სურათებით)
ააშენეთ ნამდვილი ზარის მომგვრელი საათი თქვენი კომპიუტერისთვის და ცეცხლის ჩაქრობის მანქანა-საათი: სპილენძის ზარი, პატარა სარელეო კიდევ რამდენიმე რამ და ნამდვილ ზარს შეუძლია საათების დარტყმა თქვენს სამუშაო მაგიდაზე. თუმცა ეს პროექტი მუშაობს Windows და Mac- ზე OS X ასევე, მე გადავწყვიტე დავაყენო Ubuntu Linux კომპიუტერზე, რომელიც აღმოვაჩინე ნაგავში და ვმუშაობ ამაზე: მე არასოდეს