Სარჩევი:

LCD თარიღი/საათი დაივიწყეთ RTC: 9 ნაბიჯი
LCD თარიღი/საათი დაივიწყეთ RTC: 9 ნაბიჯი

ვიდეო: LCD თარიღი/საათი დაივიწყეთ RTC: 9 ნაბიჯი

ვიდეო: LCD თარიღი/საათი დაივიწყეთ RTC: 9 ნაბიჯი
ვიდეო: LCD Multifunctional Alarm Clock - How to set Date and Time 2024, ივლისი
Anonim
LCD თარიღი/საათი დაივიწყეთ RTC
LCD თარიღი/საათი დაივიწყეთ RTC

NIST 2010 კვანტური ლოგიკური საათი, რომელიც დაფუძნებულია ერთ ალუმინის იონზე.

2010 წელს ჩატარებულმა ექსპერიმენტმა ალუმინის-იონური ორი კვანტური საათი ერთმანეთთან ახლოს განათავსა, მაგრამ მეორესთან პირველთან შედარებით 12 ინჩი (30.5 სმ) გაიზარდა, რაც გრავიტაციული დროის გაფართოების ეფექტს ხილავს ყოველდღიურ ლაბორატორიულ მასშტაბებში. ამით ვამტკიცებ აინშტაინის გრავიტაციის თეორიებს. საათები გადატრიალდა პოზიციებში და აჩვენეს ერთსა და იმავე დროს ოფსეტები. NIST პოსტდოქტორანტი მკვლევარი ჯეიმს ჩინ-ვენ ჩოუ მსოფლიოში ყველაზე ზუსტი საათით, რომელიც დაფუძნებულია ერთი ალუმინის იონის ვიბრაციაზე (ელექტრონულად დამუხტული ატომი). იონი ხაფანგშია ლითონის ცილინდრში (ცენტრში მარჯვნივ). ის ამბობს "3,7 მილიარდ წელიწადში 1 წამით" … დაველოდოთ და ვნახოთ!

სუპერ დუპერი ვაუ.

ასე რომ, კვანტური ვიბრაციების გამოყენებით, რომელიც მართლაც სწრაფია, თქვენ ფიქრობთ, რომ უფრო სწრაფია უკეთესი. 328 ჩიპი Unos– ში საკმაოდ სწრაფია 16 MHz– ზე. ეს ბევრად უფრო სწრაფია, ვიდრე ტიპიური საათის ბროლი (32.768 კჰც). ეს არის 500 -ჯერ უფრო სწრაფი! 328 -ს აქვს ტემპერატურის სენსორი საათის კომპენსაციისთვის.

მაშ, რატომ არ შეიძლება 328 -მა წინამორბედმა შექმნას საათის ბროლი?

ნაბიჯი 1: რას უნდა ველოდოთ

ᲠᲐᲡ ᲣᲜᲓᲐ ᲕᲔᲚᲝᲓᲝ
ᲠᲐᲡ ᲣᲜᲓᲐ ᲕᲔᲚᲝᲓᲝ

ეს არის ჩემი მეორე მცდელობა საათის შექმნა მხოლოდ 328 ჩიპის გამოყენებით. თითოეული 328 მუშაობს სხვადასხვა დროს, მიუხედავად იმისა, რომ მათ აქვთ 16 მჰც კრისტალი. ასე რომ თქვენ მიიღებთ ცუდ შედეგებს მხოლოდ მილიების დათვლით (). რომელიც მუშაობს 1 000 ჰც. ეს ხდის ერთ მილიონს (1) საშუალოდ დაახლოებით +- 3.6 წამს საათში ზუსტი. არდუინოს წისქვილები () არ ითვლიან ფრაქციულ ქარხნებს და არ იყენებენ მცურავებს. ეს შეუძლებელს ხდის წისქვილის ფრაქციების დათვლას. Arduino micros () - ის გამოყენება შემდეგი არჩევანია. მაგრამ მიკროს () გამოყენება მხოლოდ 71 წუთში იწურება. (ეს ნამდვილად არ არის პრობლემა). ჩემთვის პრობლემა არის დიდ რაოდენობასთან გამკლავება და განმეორებითი კორექტირება gps– ის დროზე დაყრდნობით. სხვა არჩევანი არის შეფერხება. ეს ითვლის წამს, არ აქვს მნიშვნელობა სად მუშაობს კოდი მარყუჟის შიგნით. ეს ხდის 328 -ს ისეთივე კარგს, როგორც RTC. მაშინაც კი, თუ "micros ()"- ის წერტილები განიხილება, +- 4 uS, ეს გამოდის 250 კჰც საათი. ეს 7 -ჯერ უკეთესია ვიდრე 32.768khz.

ასე რომ, აქ არის ჩემი Arduino LCD საათი, რომელიც დაფუძნებულია 16 ბიტიან ტაიმერზე, ერთი წყვეტს მიკროწამების გამოყენებით. ეს არ არის ისეთი კარგი, როგორც ალუმინის იონების დათვლა! მაგრამ ეს ადვილია და გარკვეული კალიბრაციით ის შეიძლება იყოს ისეთივე კარგი, როგორც RTC. მე გავაკეთე ამ საათის 3 ვერსია. კომპიუტერთან დაკავშირება USB. მარტო დგომა 4 ღილაკით. გარეთ gps ტემპერატურაზე HC12 გამოყენებით. ეს ინსტრუქცია მოიცავს პირველ 2 საათს და მე დავწერ სხვას "სიღრმისეულად" HC12- ისთვის.

იხილეთ ჩემი სხვა გაკვეთილი HC12 დიაპაზონის პრობლემებზე.

თქვენ შეგიძლიათ ელოდოთ არის მარტივი LCD საათი/თარიღი UNO– ს გამოყენებით და 16x2 LCD. LCD– ისთვის შევიმუშავე რამდენიმე პერსონალური ნომერი. "დიდი ნომრების" ბიბლიოთეკა იკავებს 3 ადგილს, ჩემი მხოლოდ 1. 4 ღილაკს აქვს შიდა გაყვანა, ასე რომ მშენებლობა ადვილია. მე მაქვს საქმე ამისთვის და 2 LCD და უკანა.

ჩემს პატარა ქალაქში არსებულ საჯარო ბიბლიოთეკას აქვს 3D პრინტერი, რომლის გამოყენება ყველას შეუძლია. ასე რომ, შეამოწმეთ ბიბლიოთეკა თქვენს მახლობლად LCD დისკის შესაქმნელად.

ჩემი ტესტები აჩვენებს -+ მეორე ყოველ 24-48 საათში. ეს არის დაახლოებით ერთი წუთის შესვენება ორ თვეში. სამი ან ოთხი კორექტირება აყენებს საათის წერტილს. გამორთულია მხოლოდ 12 წამით ადრე თვეში. განმეორებითი მცდელობა "დაკალიბრების" ნაკერების უბრალოდ დევნა ნომრები. ერთი ცუდი თვისება იყენებს ნებისმიერ 'მენიუს' წამებს აღადგენს 00 -ზე. ეს ცვლის მიმდინარე დროს. მე დავტოვე 60 წამიანი ვადა ღილაკზე დაჭერისთვის, რათა სხვა საათთან სინქრონიზაცია დამეწყო.

ნაბიჯი 2: თხილი და ბოლოები

თხილი და ბოლოები
თხილი და ბოლოები
თხილი და ბოლოები
თხილი და ბოლოები
თხილი და ბოლოები
თხილი და ბოლოები
თხილი და ბოლოები
თხილი და ბოლოები

ეს პროექტი არის STAND ALONE საათი RTC– ს გარეშე მხოლოდ uno და LCD. 4 ღილაკი იძლევა დროის/თარიღის დადგენის და დროის ზონის და დაკალიბრების საშუალებას.

3D პრინტერის ფაილებს აქვთ ერთი და ორი LCD ეკრანი სხვა პროექტებისთვის.

LCD– ს აქვს დიდი რიცხვები, რომლებიც იკავებენ მხოლოდ ერთ სივრცეს. ამას საკმაოდ დიდი დრო დამჭირდა გასაკეთებლად

კორპუსს აქვს 8 ხვრელი ღილაკებისთვის სხვა პროექტებისთვის.

უბრალოდ დაუკავშირეთ 5 ვ კედლის მეჭეჭს სიმძლავრისთვის.

შეამოწმეთ თქვენი ადგილობრივი ბიბლიოთეკა 3D პრინტერის გამოყენებისათვის !!

ნაბიჯი 3: მშენებლობის შესახებ

შენობის შესახებ
შენობის შესახებ
შენობის შესახებ
შენობის შესახებ
შენობის შესახებ
შენობის შესახებ

უნდა მუშაობდეს Arduino– ს ნებისმიერი დაფა MEGA 328 მიკროში. მას სჭირდება 16 მჰც კრისტალი და უნდა იმუშაოს ამ სიჩქარით. 3.3 ვოლტი 8 მჰც -ზე შეიძლება არ იმუშაოს შეფერხების დროით. დანართის შემთხვევაში, პრო-მინი საუკეთესოდ ჯდება, მაგრამ შეგიძლიათ ნანო ჩაწეროთ, მაგრამ USB კაბელი შეიძლება იყოს პრობლემა. ეს არის Hitachi 16x2 LCD, ძალიან პოპულარული. ზოგი მკვდარი პიგმენტი მქრქალია და სუსტია. პირას კონექტორი საჭიროა პოპულარული I2c კონვერტორის მოდულის მოსაწყობად. მხოლოდ 4 მავთული არის საჭირო uno– ს დასაკავშირებლად. ბევრი გაკვეთილია იმის საჩვენებლად, თუ როგორ უნდა შეაერთოთ LCD კონვერტორი მოდულის გარეშე, თუ არ გსურთ. არა ღილაკის საათისათვის, რასაც თქვენ აკეთებთ.

LCD– ს აქვს BIG NUMBER მორგებული სიმბოლო. დიდი რიცხვები მხოლოდ ერთ სიგანეს იკავებს.

ნაბიჯი 4: 4 ღილაკი და საქმე

4 ღილაკი და საქმე
4 ღილაკი და საქმე
4 ღილაკი და საქმე
4 ღილაკი და საქმე
4 ღილაკი და საქმე
4 ღილაკი და საქმე

იგივე, რაც ზემოთ, მაგრამ დაამატეთ 4 კონცენტრატორი. სტანდარტული კომპიუტერის დაფა 2 ინჩი x 2.5 ინჩი გამოიყენება საქმის მოსაწყობად. უბრალოდ გაჭერით შუაზე და დააინსტალირეთ კონცენტრატორები ისე, რომ ფეხები მარცხნიდან მარჯვნივ წავიდეს. თუ გადამრთველებს ფეხებით აყენებთ, ხვრელები არ დადგება ხაზში. შეამოწმეთ, რომ ისინი გასწორებულია საქმის ხვრელებამდე შედუღებამდე. დაფარეთ ქვედა ფეხები (ყველა) და გაუშვით თითოეული ზედა ფეხი ქინძისთავზე uno. იხილეთ თანდართული სქემა. თუ თქვენ 3D ბეჭდვას შემთხვევაში, ღილაკს ნაწილი უნდა იყოს მიბმული LCD შემთხვევაში. ის არ იჭედება როგორც უკან აკეთებს. ნებისმიერი პატარა თვითმმართველობის ჩამოსასხმელი ხრახნები შეინარჩუნებს LCD ადგილს. ძალიან დიდია და საქმეს გატეხავ. ცხელი წებოს ჯოხი შეიძლება იყოს საუკეთესო. LCD– ის დამონტაჟებამდე… გაამუქეთ led ფართობი შავი ლენტით. წინააღმდეგ შემთხვევაში იგი ბრწყინავს საქმის მეშვეობით. მე ვიყენებ 2 გვერდის ქაფს ფირზე 2 ფენაში, პრო მინი დამონტაჟებისათვის. ეს ფირზე არის გარიგება "დოლარის ხის მაღაზიებში". მე ვიყენებ მყარი დაფარული მაგნიტის მავთულს დაახლოებით 26 ლიანდაგით. მე მაქვს დიდი ინსტრუქცია "ღარიბი კაცის ქვაბზე" ამ მავთულის შესაერთებლად გამოყენებისათვის.

ნაბიჯი 5: LCD

LCD
LCD
LCD
LCD
LCD
LCD

LCD პრობლემები

მშენებლობის დასრულების შემდეგ გადმოწერეთ და დააინსტალირეთ ესკიზი. LCD შეიძლება არ ანათებდეს ეკრანს. აქ არის რამოდენიმე რჩევა. Lcd 'led' უნდა იყოს განათებული და ეკრანი მოლურჯო იყოს. თუ არ არის led შეამოწმეთ მხტუნავები წინააღმდეგობის ქოთნის მოპირდაპირედ. ამას სჭირდება მხტუნავი ან 150 ოჰმიანი რეზისტორი. ლურჯი ქოთანი ყოველთვის პრობლემაა. ასე გადააბრუნეთ ქოთანი მანამ, სანამ ეკრანზე არ გამოჩნდება კვადრატის 2 სტრიქონი. შემდეგ უკან დაიხიეთ მანამ, სანამ კვადრატები ძლივს გაქრება. თუ ჯერ კიდევ არ არის ეკრანი, შეამოწმეთ SDA და SCL კავშირები. ძალიან ადვილია მათი უკან დაბრუნება. ეს არის A4 SDA და A5 SCL. ეს არის A ქინძისთავები და არა D ქინძისთავები და ზოგიერთ პროფესიონალს აქვს ეს ქინძისთავები კომპიუტერის შიგნით და არა კიდეებზე. ბოლო ვარიანტი არის მისამართის შემოწმება. LCD კონვერტორის ზოგიერთ მოდულს აქვს სხვადასხვა მისამართი. ან ერთზე მეტი მოწყობილობის გამოყენებისას ყველას სჭირდება სხვადასხვა მისამართი. მოდულების უმეტესობას აქვს 3 გამაგრებითი ქინძისთავი 3 განსხვავებული მისამართის დასაყენებლად. გახსოვდეთ, რომ I2c აწარმოებს მხოლოდ 2 მავთულს ნებისმიერ მოწყობილობაზე. ამიტომ თითოეულ მოწყობილობას უნდა ჰქონდეს უნიკალური მისამართი. მოყვება I2c მისამართის სკანერი. ჩამოტვირთეთ სკანერის ინსტალაცია და წაიკითხეთ სერიული მონიტორი. ეკრანზე ნაჩვენებია ნებისმიერი I2c მოწყობილობის მისამართი. შეამოწმეთ საათის ესკიზი ესკიზის ზედა ხაზზე. 'LiquidCrystal_I2C LCD (0x3F, 16, 2); '0x3F არის ჩემი კონვერტორის სწორი მისამართი. თუ თქვენი მისამართი განსხვავდება, შეცვალეთ სკანერის სწორი მისამართი. სიფრთხილე: დააკოპირეთ და ჩასვით ახალი მისამართი, რომელიც ზოგჯერ ხაზის ბოლოს ან ვაგონის დაბრუნებას მოიცავს. უბრალოდ TYPE სხვა მისამართზე. პირველი ასოები ყოველთვის არის ნული და მცირე ზომის x 0x. ეს ეუბნება C ++ - ს, რომ ის არის ექვსკუთხედი. 0x– ის შემდეგ ნებისმიერი ასო დიდი ასოა.

ნაბიჯი 6: გადახედვა

ხუმრობები
ხუმრობები
ხუმრობები
ხუმრობები
ხუმრობები
ხუმრობები

მიჰყევით სქემატურს და შეაერთეთ ერთეული.

ნაბიჯი 7: სხვა ფოტოები

სხვა ფოტოები
სხვა ფოტოები
სხვა ფოტოები
სხვა ფოტოები
სხვა ფოტოები
სხვა ფოტოები

წარმატებებს გისურვებთ, იხილეთ ჩემი სხვა ინსტრუქციები

ნაბიჯი 8: ესკიზი

ინსტრუქციები არ მაძლევენ არდუინოს ფაილის გადმოსაწერად !!!! ამიტომ გამოვიყენე ტექსტი. თქვენ უნდა დააკოპიროთ და ჩასვათ ტექსტი ახალ arduino ღია ფაილში IDE– ში…. ბოდიში

და არც ტექსტური ფაილები იტვირთება !!! და სცადა აქ ჩასმა, მაგრამ დააბნია !!

საბოლოოდ !!! მივიღე ესკიზი აქ გადმოსაწერად. 3-26-2020 ასევე გამოსწორდა მცირედი რაღაცეები.

ადამიანები, რომლებიც ხელფასს იღებენ კოდის დასაწერად, იატაკზე ტრიალებენ, როდესაც ხედავენ ჩემს კოდს. ჩემი ესკიზები ჩვეულებრივ მარტივად იწყება. შემდეგ მე დავამატებ უფრო მეტ საქმეს. ასე რომ, ესკიზი იძაბება არეულობაში. ვიმედოვნებ, რომ ისწავლით ჩემს ორ უდიდეს შეცდომას. დასაწყისში უნდა იყოს განსაზღვრული მონახაზი და მიზანი. არ დაამატოთ ტონა ნივთები მთლიანი ესკიზის განმავლობაში. ჩემი ყველაზე დიდი შეცდომა არის ფუნქციის ბოროტად გამოყენება. ის უნდა იყოს მოკლე და აბრუნებს თანხას და გამოიყენება მხოლოდ მაშინ, როდესაც ცვლის ესკიზის მთელ კოდს. დაგვიანებით (100) კარგი მაგალითია.

FUNCTION- ის გამოყენება ესკიზის მონაკვეთების გამოყოფაა. ეს მიადვილებს ძირითად ორგანოს თვალყურის დევნებას, ასევე ცალკეული მონაკვეთების გამართვის საშუალებას მხოლოდ ფუნქციის გამოძახებით. მე ვფიქრობ, რომ GOTO ამას აკეთებდა, მაგრამ ის მადლიერია და არასოდეს შეეგუება. თქვა ნაფმა. შეძლებისდაგვარად შევამოწმე თარიღები და დრო. ესკიზის იგივე ნაწილები წლებია მუშაობს ჩემს 'TIME SQUARED' საათებზე. თუ რამე გამომრჩა ან ხარვეზია, გთხოვთ შემატყობინოთ. "არა ღილაკების ესკიზის" ხაზის დასაკალიბრებლად "ხელმოუწერელი გრძელი tSec = 1000122; '(სტრიქონი 34) არის ის, რასაც თქვენ ცვლით. მუდმივი 277 წამში საათში არის სწორი. მაგრამ პრაქტიკაში მე მხოლოდ 2 -დან 8 -მდე ცვლილებას ვაკეთებ 'tSec' ღირებულებაში. 1000122 საათზე ბევრი ჩემი საათი მუშაობდა ისევე როგორც RTC. იყავით მომთმენი მცირე ცვლილება მხოლოდ 2-8 შეიძლება გახდეს სრულყოფილი საათი. ნებისმიერი საათის ნებისმიერი ცვლილების ქვედა მხარე ნიშნავს, რომ მიმდინარე დრო შეიცვლება. თქვენ უნდა შეცვალოთ სწორი მიმდინარე დრო/თარიღი.

//// easy_one_lcd_clock_no_buttons // // arduino და LCD საათი // გამოიყენეთ ტაიმერი ერთი 16 ბიტიანი ტაიმერი // ამ საათის დასაკალიბრებლად: // გამოიყენეთ კარგი წამების საათი, როგორც GPS. // გამოიყენეთ საათები საწყის ეტაპზე. წამების დათვლა // ეს გამორთულია. თუ ეს არის GPS– ის უკან // GPS = 00..ეს = 58 SUBTRACT 277 თითოეულ // წამში/საათში. ასე რომ, თუ შენელდება 2 წამით // 3 საათში… (277 * 2)/3 = 184 // გამოწერა tSec– დან. // თუ წინ უსწრებს GPS = 00… ეს = 03 // იგივე მათემატიკა უბრალოდ დაამატე tSec. // cauction, საათების უმეტესობა სწორია 00. // 20 წამი არის უკეთესი ტაიმერის შემოწმება.

ნაბიჯი 9: CASE STL ფაილები

აქ არის 3D პრინტერის საქმის ფაილები. კლავიატურა უნდა იყოს მიმაგრებული LCD დისკზე. უკანა ნაწილი ეკვრის როგორც ერთ, ისე ორ LCD წინა მხარეს. ჯერ დაიჭირეთ ზედა ნაწილი, შემდეგ კი გააგრძელეთ გზა, რომ მიიღოთ კარგი მორგება.

გამოიკვლიეთ თქვენი ადგილობრივი ბიბლიოთეკა 3D პრინტერის გამოყენებისათვის.

გირჩევთ: