Სარჩევი:

DemUino - სახლის კომპიუტერი/კონტროლერი: 7 ნაბიჯი
DemUino - სახლის კომპიუტერი/კონტროლერი: 7 ნაბიჯი

ვიდეო: DemUino - სახლის კომპიუტერი/კონტროლერი: 7 ნაბიჯი

ვიდეო: DemUino - სახლის კომპიუტერი/კონტროლერი: 7 ნაბიჯი
ვიდეო: Saepinum Walk 4K 2024, ნოემბერი
Anonim
Image
Image
ჩატვირთვის ჩამტვირთავი
ჩატვირთვის ჩამტვირთავი

Arduino Inspired Computer by DemeterArt მაქსიმალურად გამოიყენეთ თქვენი ძველი PS2 კლავიატურა. გატეხეთ იგი პერსონალურ კომპიუტერში პერსონალის გასაკონტროლებლად! მე ყოველთვის მინდოდა შემექმნა საკუთარი სახლის კომპიუტერი, ერთგვარი რეტრო სტილში, არაფერი ლამაზი, მაგრამ განსაკუთრებული შესაძლებლობებით, რომელიც მორგებული იყო ჩემს პრეფერენციებზე. ასე რომ, მე მივაღწიე atmega328 MCU და Arduino განვითარების ნაკრები.

ნება მომეცით აღვნიშნო, რომ ამ პროექტს საეჭვო საბოლოო შედეგით გაცილებით მეტი დრო დასჭირდებოდა, რომ არა ნიჭიერი თაყვანისმცემლები, რომლებიც ეგოისტურად ნაკლებად უზრუნველყოფენ უფასოდ ბიბლიოთეკების გამოყენებას ყველასთვის. Მადლობა ყველას:-)

ეწვიეთ ჩემს საიტს, რომ წაიკითხოთ მთელი ისტორია და ჩამოტვირთოთ ყველა შესაბამისი ფაილი

www.sites.google.com/site/demeterart

ნაბიჯი 1: მახასიათებლები

  • დაფუძნებულია ATMEGA328 32KB ფლეშით, 2KB SRAM და 1KB EEPROM.
  • ინტერაქტიული და სურათების რეჟიმების მხარდაჭერა
  • ხაზის რედაქტორი და სიის რედაქტირების რეჟიმი
  • 8 პერსონალური პერსონაჟი მომხმარებლის გრაფიკისთვის
  • 60 პროგრამის ნაბიჯი დანომრილი 00,…, 99
  • "თუ" პირობითი, "while" და "for" მარყუჟები პლუს "goto" და "sub" განცხადებები განშტოებისთვის
  • ძირითადი არითმეტიკული და მათემატიკური გამონათქვამები პლუს ლოგიკური ტესტები
  • სისტემის ცვლადები იძლევა დროულ მოვლენებს, საშუალო, rms, min და max მნიშვნელობებს ანალოგური ქინძისთავებიდან და ა.შ
  • 26 მომხმარებლის ცვლადი სისტემის ცვლადებთან და ბრძანებებთან ურთიერთქმედების მიზნით
  • 104 ბაიტი მომხმარებლის მისამართიანი მასივი ან 52 მოკლე მთელი რიცხვი
  • პროგრამის მონაცემების წაკითხვის/ჩაწერის უნარი, ასევე კოდის ფრენა (p ცვლადი)
  • მინი oscilloscope აპლიკაცია მორგებული სიმბოლოებით ფსევდო გრაფიკისთვის
  • პროგრამების და მონაცემების შენახვა და ჩატვირთვა EEPROM– ში
  • ჩატვირთვა/შენახვა პროგრამები და ცვლადები/კომპიუტერიდან
  • autoexec თითოეული პროგრამის გადატვირთვის შემდეგ EEPROM– დან პროგრამის ჩატვირთვასა და გაშვებაში
  • 9 GPIO ქინძისთავები (SPI შედის) ხელმისაწვდომია გარე DB15 კონექტორზე
  • BUZZER ხმის ეფექტებისთვის

ნაბიჯი 2: ნივთები, რომლებიც დაგჭირდებათ

ძველი PS/2 კლავიატურა საკმარისად სქელი PCB LCD პერსონაჟის ჩვენებისათვის (პოპულარული პარალელური ფორმატი) MAX232 ჩიპი RS232 პორტისთვის atmel atmega328PU Arduino განვითარების ნაკრები IDE 1.0.1 LM7805 მარეგულირებელი 5V ბუზერის ხიდის გასწორებით, კონდენსატორებით, გადატვირთვის ღილაკით, კონექტორები და ა

ნაბიჯი 3: ჩატვირთვის ჩამტვირთავი

ამრიგად, მას შემდეგ რაც ვიყიდე "ცარიელი" atmega328PU ჩიპი არის გადაწყვეტილების მიღება. გამოვიყენო თუ არა სპეციალური პროგრამისტი გარედან ან ISP– დან, ან არდუინოს ჩამტვირთავი ჩავწერო მხეცში და პროგრამირებადი გავხადო მისი UART პორტის საშუალებით? მე ავირჩიე ეს უკანასკნელი, რათა გამიადვილდეს ცხოვრება! ახალი ჩამტვირთავი იკავებს მხოლოდ ნახევარ კილობაიტს ფლეშ მეხსიერებას და ტოვებს 31KB- ზე ოდნავ მეტს მომხმარებლის პროგრამასა და სტატიკურ მონაცემებს. არდუინოს საიტი მოიცავს ჩატვირთვის ახალ ჩიპზე დაწვის შემთხვევას, როდესაც საქმე ეხება avrdude– ს სამიზნე ჩიპის ფაქტობრივად დაწვას, პროცესი ჩავარდა შეცდომით, რომელიც მიუთითებს კონკრეტულ MCU– ს არასწორი პირადობის მოწმობაზე. ასე რომ, გარკვეული ძებნის შემდეგ ვიპოვე ეს ბიჭი, რომელმაც სწორად გაიგო და მე მივყევი მის პროცედურას. ერთადერთი განსხვავება იყო 2 კონფიგურაციის ფაილი, avrdude.conf და boards.txt, რაც საჭიროა avrdude და arduino IDE 1.0.1 ამის გასაკეთებლად. მას შემდეგ, რაც 2 ფაილი გადაწერეს მათ შესაბამის ადგილას (ჯერ ძველი ფაილების სარეზერვო ასლები) ხელმისაწვდომი იყო ვარიანტი ‘arduino328’ ინსტრუმენტებიდან-დაფა და avrdude– მა განაგრძო დამწვრობები და ჩამტვირთვები. ახლა ჩიპი მზად არის დაპროგრამდეს ახალი აპარატის შიგნიდან!

ნაბიჯი 4: ერთეულის შექმნა

ერთეულის მშენებლობა
ერთეულის მშენებლობა
ერთეულის მშენებლობა
ერთეულის მშენებლობა

სპილენძის ზოლებით პერფორირებული დაფა გამოიყენებოდა ჩიპებისთვის DIP სოკეტებით ჩამონტაჟებული სწრაფი ხსნარის სახით, იცით, ყოველი შემთხვევისთვის! შემდეგ კონექტორების ხვრელები და ჭრა, გადატვირთვის ღილაკი და LCD ეკრანი გაიხსნა კლავიატურის უკიდურესად მტკიცე და სქელი პლასტმასის საშუალებით. დიახ, ის აშენდა 25 წლის წინ! მოჰყვა pcb– დან მომდინარე მავთულის არეულობა სხვადასხვა პერიფერიული მოწყობილობებისკენ. ელემენტარული უწყვეტობის შემოწმება და შემდეგ მიწოდება უკავშირდებოდა ჩიპებს, რომლებიც არ იყო დასახლებული მხოლოდ სოკეტების სათანადო ძაბვის შესამოწმებლად. შემდეგ მოვიდა 2 IC და კლავიატურის კორპუსი მტკიცედ დაიხურა მისი პლასტმასის ჩამკეტების საშუალებით ბოლოში. განყოფილება მზად იყო ჩაწეროს ესკიზები კონტროლერში!

მე გირჩევთ გამოიყენოთ არაპოლარული 1uF/16V კონდენსატორები MAX232 დატენვის ტუმბოებისთვის. იპოვნეთ ორი ჩიპის 100nF გამყოფი კონდენსატორები რაც შეიძლება ახლოს VCC და GND ქინძისთავებთან. გამოიყენეთ ვარსკვლავის კავშირი LM7805 მარეგულირებელზე მითითებული დენისა და მიწისთვის. გადამრთველი 2 შეიძლება იყოს ჯუმპერი იმპლემენტაციის მიხედვით, მაგრამ კარგია, რომ მხოლოდ ზოგიერთ შემთხვევაში თავიდან ავიცილოთ MCU არასასურველი გადატვირთვები მასპინძელი კომპიუტერიდან. ნებისმიერ შემთხვევაში, გადამრთველი უნდა დაიხუროს, რათა Arduino IDE- მ შეძლოს ესკიზის დაწვა სამიზნე MCU- ს (RS232- ის PIN DTR) საშუალებით. ჩემს შემთხვევაში კავშირი მუდმივია (ყოველთვის დახურულია). გამოიყენეთ სერიული რეზისტორი ზუზერისთვის, რათა გამოყოთ რამოდენიმე nF სიმძლავრის მამოძრავებელი კარიბჭედან … თქვენ არასოდეს იცით.. მოათავსეთ XTAL და ჩატვირთვა 18-22pF კონდენსატორები რაც შეიძლება ახლოს კონტროლერის შესაბამის ბუდეებთან.

მაკორექტირებელი ხიდის გამო, მოწყობილობა შეიძლება იკვებებოდეს როგორც AC, ასევე DC დენის გადამყვანებით. DC- ის შემთხვევაში, არის 1.5 V ძაბვის ვარდნა ადაპტერსა და მარეგულირებელ მოწყობილობას შორის. AC- ის შემთხვევაში მარეგულირებლის შეყვანა არის დაახლოებით 1.4 -ჯერ ადაპტერის RMS გამომავალი ან ნაკლები დატვირთვის გამო. თუ სხვაობა მარეგულირებლის შეყვანასა და მის გამომუშავებას შორის (+5V) დიდია, ვთქვათ 7 ვოლტი, მაშინ მარეგულირებლის მიერ მოხმარებული სიმძლავრე უახლოვდება 0,5 ვატს და უმჯობესია გამოვიყენოთ პატარა გამაცხელებელი, რომელზედაც ჩიპი დამონტაჟდება (გათვალისწინებულია არის ადგილი) ცხელ ამინდში მუშაობის მრავალი საათის განმავლობაში.

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

ნაბიჯი 5: სქემატური

სქემატური
სქემატური

ნაბიჯი 6: პროგრამის გაშვება ბორტზე

ეს არის ესკიზი, რომლითაც ხდება ყველაფერი … და 32 კბ არ არის საკმარისი! თქვენ შეგიძლიათ გამოიყენოთ იგი უცვლელად, ამ შემთხვევაში მე ვაფასებ მითითებას ჩემს სახელზე, ან შეცვალოთ იგი სურვილისამებრ და დამივიწყოთ;-)

ეს არის დეტალური დოკუმენტაცია აპარატის შესახებ.

შეჯამება ბრძანებები და გამონათქვამები

“: დაუწერელი კომენტარის ხაზი

ai: მიამაგრეთ შეწყვეტა 0 (პინი D2)

ar: ანალოგური წაკითხვა

aw: "ანალოგური წერა" თითო არდუინოზე ან უფრო სწორად pwm

ca: ანალოგური გადაღება მასივში

cl: ასუფთავებს ჩვენებას cno: return *Prgm ხაზის ნომრის ინდექსი

di: დაელოდეთ იმპულსების სერიას და გაზომეთ ხანგრძლივობა და დრო

dl: დაგვიანება

გაკეთება: "wh" - თან ერთად

dr: ციფრული წაიკითხეთ ნებისმიერი პინი

dw: ციფრული ჩაწერეთ ნებისმიერი პინი

ed: რედაქტორის რეჟიმი / ჩატვირთვა პროგრამა კომპიუტერიდან / ხელახალი ნომრების ხაზები

el: EEPROM წვდომის ფუნქცია

დასასრული: პროგრამის END განცხადება

ensb: მთავრდება ქვეპროგრამა

es: EEPROM წვდომის ფუნქცია

fl: მარტივი მოძრავი საშუალო ფილტრი

fr: მომდევნო მარყუჟისთვის (fr-nx)

წადი: გადადი პროგრამის საფეხურზე

gosb: განაგრძეთ შესრულება სუბრუტინგში

gt: ელოდება მომხმარებლის შეყვანას

თუ: გამოცადეთ მდგომარეობა და გადადით საფეხურზე

io: GPIO 1-9 ბიტი

ld: ჩატვირთვა/შერწყმის პროგრამა EEPROM– დან

lp:: კლავიატურის კონტროლირებადი მარყუჟი ინტერაქტიულ რეჟიმში

ls: სიის რეჟიმი / პროგრამის გაგზავნა კომპიუტერზე ერთდროულად

მლ: მიიღეთ დრო

მმ: თავისუფალი მეხსიერების ჩვენება

nos: გარდაქმნის რიცხვს სტრიქონად

nx: "fr" - თან ერთად

pl: ნაკვეთის მასივი cxx

pm: დააყენეთ ქინძისთავები შესასვლელში ან გამოსასვლელად

pr: ბეჭდავს შეტყობინებას ან მნიშვნელობას ან პერსონალურ სიმბოლოს

rgc: დიაპაზონის კოპირების ბრძანება მასივებისათვის

rgs: სპექტრი მითითებული ბრძანება მასივებისთვის

rn: გაუშვით პროგრამა RAM- ში

rs: რბილი გადატვირთვა

rx: მიიღეთ პერსონაჟი RS232– ის საშუალებით

si: სინქრონული სერიული შეყვანა საათის და მონაცემთა ქინძისთავებით

sm: მინი oscilloscope app sno: გარდაქმნის სტრიქონს რიცხვში

ასე რომ: სინქრონული სერიული გამომავალი საათი და მონაცემთა ქინძისთავები

ქვე: აცხადებს ქვეგეგმას

sv: შეინახეთ პროგრამა EEPROM– ში

tn: ატეხე ხმა

tx: გადასცეს ნომერი RS232- ის საშუალებით

wh: do-while მარყუჟი, რომელიც გამოიყენება „do“-თან ერთად

ნაბიჯი 7: Mini App 'sm' გაშვებული ვიდეოკლიპი

ეწვიეთ ჩემს საიტს, რომ წაიკითხოთ მთელი ისტორია და ჩამოტვირთოთ ყველა შესაბამისი ფაილი

www.sites.google.com/site/demeterart

გირჩევთ: