Мазмуну:

DemUino - Үйдөгү компьютер/контролер: 7 кадам
DemUino - Үйдөгү компьютер/контролер: 7 кадам

Video: DemUino - Үйдөгү компьютер/контролер: 7 кадам

Video: DemUino - Үйдөгү компьютер/контролер: 7 кадам
Video: Millionaire's Family Mansion in Belgium Left Abandoned - FOUND VALUABLES! 2024, Июль
Anonim
Image
Image
Жүктөгүчтү күйгүзүү
Жүктөгүчтү күйгүзүү

DemeterArt тарабынан Arduino жетеги менен жазылган компьютер, эски PS2 клавиатураңыздын бардык мүмкүнчүлүктөрүн пайдаланыңыз. Нерселерди көзөмөлдөө үчүн жекече жеке компьютерге Hack! Мен ар дайым өзүмдүн жеке компьютеримди кургум келет, ретро стилинде, эч нерсеси жок, бирок менин мүмкүнчүлүктөрүмө ылайыкталган өзгөчө мүмкүнчүлүктөр менен. Ошентип, мен ага atmega328 MCU жана Arduino өнүктүрүү комплектинин жардамы менен жеттим.

Бул долбоор, эгерде өзүмчүл болуп, бекер программалык китепканаларды ар ким колдоно ала турган, таланттуу күйөрмандар үчүн болбогондо, шектүү жыйынтыктар менен бир топ убакытка созулмак деп айткым келет. Баарыңыздарга рахмат:-)

окуяны толугу менен окуу жана бардык тиешелүү файлдарды жүктөө үчүн менин сайтка баш багыңыз

www.sites.google.com/site/demeterart

1 -кадам: Өзгөчөлүктөр

  • 32KB флэш, 2KB SRAM жана 1KB EEPROM менен ATMEGA328дин негизинде.
  • интерактивдүү жана пакеттик режимдерди колдоо
  • сап редактору жана тизме-түзөтүү режими
  • Колдонуучу графикасы үчүн 8 ыңгайлаштырылган белгилер
  • 60, 00,…, 99 номурлуу программалык кадамдар
  • 'If' шарттуу, 'while' жана 'for' циклдары жана 'goto' жана 'sub' билдирүүлөрү бутактануу үчүн
  • Негизги арифметикалык жана математикалык туюнтмалар, логикалык тесттер
  • системанын өзгөрмөлөрү убакыттагы окуяларга, орточо көрсөткүчтөргө, аналогдук казыктардан мин жана максималдуу баалуулуктарга ж
  • 26 колдонуучу өзгөрмөлөрү системанын өзгөрмөлөрү жана командалары менен өз ара аракеттенет
  • Колдонуучунун даректүү массивинин 104 байты же 52 кыска бүтүн сан
  • программалык маалыматтарды, ошондой эле кодду дароо окуу/жазуу жөндөмдүүлүгү (p өзгөрмөлүү)
  • жасалма графика үчүн ылайыкташтырылган белгилери бар мини осциллограф колдонмосу
  • программаларды жана маалыматтарды EEPROMго сактоо жана жүктөө
  • программаларды жана өзгөрмөлөрдү жүктөө/сактоо/ЖК
  • autoexec ар бир баштапкы абалдан кийин EEPROM программасын жүктөө жана иштетүү
  • 9 GPIO казыгы (SPI камтылган) тышкы DB15 туташтыргычында жеткиликтүү
  • Үн таасирлери үчүн BUZZER

2 -кадам: Сизге керектүү нерселер

Эски PS/2 клавиатурасы PCB LCD символдорунун дисплейин (популярдуу параллелдүү форматта) жайгаштырууга жетиштүү, MAX232 чипи RS232 порт atmelme3232PU Arduino өнүгүү комплекси менен IDE 1.0.1 LM7805 регулятору 5V ызылдатуучу көпүрө түзөткүчү, конденсаторлор, баштапкы абалга келтирүү баскычы, туташтыргычтар ж

3 -кадам: Жүктөгүчтү күйгүзүү

Ошентип, "бош" atmega328PU чипин сатып алгандан кийин, чечим кабыл алынат. Мен атайын программистти тышкы же ISP менен колдономбу же Arduino жүктөгүчүн жырткычка өрттөп, бирдигин UART порту аркылуу программалай аламбы? Мен жашоомду жеңилдетүү үчүн экинчисин тандадым! Жаңы жүктөгүч жарым килобайт флэш -эстутумду ээлейт жана колдонуучу программасынын 31 КБдан бир аз ашыгыраагын калтырат. Arduino сайты жүктөөчүнү жаңы чипке күйгүзүү маселесин камтыйт, бул максаттуу чипти күйгүзүү үчүн avrdude колдонууга келгенде, бул процесс өзгөчө MCU үчүн туура эмес идентификаторду көрсөтүү менен ката кетти. Ошентип, бир аз издегенден кийин, мен туура тапкан бул баланы таптым жана анын жол -жобосун аткардым. Болгону, avrdude жана arduino IDE 1.0.1ге керектүү болгон 2 конфигурация файлдары, avrdude.conf жана board.txt болгон. 2 файлды керектүү жерлерине көчүргөндөн кийин (биринчиден эскилерин камдык кылыңыз) инструменттерден 'arduino328' опциясы бар болчу-> Такта жеткиликтүү болчу жана аврудде сактандыруучуларды жана жүктөгүчтү күйгүзүү менен уланды. Эми чип жаңы машинанын ичинен программалоого даяр!

4 -кадам: Бирдикти куруу

Бирдикти куруу
Бирдикти куруу
Бирдикти куруу
Бирдикти куруу

Жез тилкелери бар тешилген такта чиптер үчүн DIP розеткалары бар тез чогултуу чечими катары колдонулган, билесизби, эгер болгон учурда! Андан кийин коннекторлор үчүн тешиктер жана кыскартуулар, баштапкы абалга келтирүү баскычы жана ЖК дисплей клавиатуранын өтө бышык жана калың пластик аркылуу ачылды. Ооба, бул 25 жыл мурун курулган! Ал жерде ар кандай перифериялык түзүлүштөргө карай PCBтен чыккан зымдардын башаламандыгы пайда болду. Негизги үзгүлтүксүздүктү текшерүү, андан кийин камсыздоо розеткалардын туура чыңалуусун текшерүү үчүн эч кандай чиптер менен байланышкан эмес. Андан кийин 2 ICлер келип, клавиатура корпусу түбүндөгү пластикалык чаптоо аркылуу бекем жабылган. Агрегат контролердо эскиздерди күйгүзүүгө даяр болчу!

Мен MAX232 заряд насостору үчүн полярдык эмес 1uF/16V конденсаторлорун колдонууну сунуштайм. Тиешелүү VCC жана GND казыктарына мүмкүн болушунча жакыныраак эки чип үчүн 100nF ажыратуучу конденсаторлорду табыңыз. LM7805 регуляторуна шилтеме кылынган бийлик жана жерге жылдыз байланышын колдонуңуз. Switch 2 имплантациясына жараша секирүүчү болушу мүмкүн, бирок кээ бир учурларда негизги компьютерден керексиз MCU баштапкы абалга келтирбөө үчүн болгону жакшы. Кандай болбосун, Arduino IDEге эскизди максаттуу MCU (RS232 DTR пин) баштапкы абалга келтирүү аркылуу күйгүзүү үчүн, которгуч жабылышы керек. Менин учурда байланыш туруктуу (дайыма жабык). Айдоочу дарбазанын сыйымдуулугунун бир нече нФтерин изоляциялоо үчүн ызылдагыч үчүн бир катар резисторду колдонуңуз … сиз эч качан билбейсиз.. XTALди жана жүктөөчү 18-22pF конденсаторлорун контроллердин тийиштүү казыктарына мүмкүн болушунча жакыныраак жайгаштырыңыз.

Түзөткүч көпүрөдөн улам, бирдик AC жана DC ток адаптерлери менен иштеши мүмкүн. DC болгон учурда, адаптер менен жөндөгүчкө кирүүнүн ортосунда 1,5 В чыңалуу төмөндөйт. AC болгон учурда, жөндөгүчтүн кириши адаптердин RMS чыгымынан болжол менен 1,4 эсе көп же жүктөөдөн улам аз. Эгерде регулятордун кириши менен анын чыгуусунун (+5В) ортосундагы айырма чоң болсо, айталы 7 вольт, анда жөнгө салуучу энергия 0,5 ваттка жетет жана чипти орното турган кичинекей радиаторду колдонуу жакшы ал үчүн орун бар) ысык мезгилде узак убакыт иштөө үчүн.

AC киргизүү сактандыргычы тышкы жүктөмүңүзгө жараша тандалышы мүмкүн (DB15 туташтыргычы аркылуу). Сактандыруу тандоосуна таасир этүүчү башка факторлор - бул ЖКнын LED жарыгы үчүн учурдагы чектөөчү резистор, заряддоо үчүн көпүрө конденсатору жана берүүчү трансформатордун учурдагы кубаттуулугу.

5 -кадам: СХЕМАТИКАЛЫК

СХЕМАТИКА
СХЕМАТИКА

6 -кадам: ПРОГРАММА ЖҮРГҮЗҮЛҮҮ

Бул баарын ишке ашырган эскиз … жана 32КБ жетишсиз! Сиз аны өзгөртүүсүз колдонсоңуз болот, бул учурда мен өзүмдүн ысымыма шилтемени баалайт элем, же каалагандай өзгөртүп, мени унутам;-)

Бул машина жөнүндө толук документтер.

Буйруктар жана сөздөрдүн кыскача мазмуну

: Басып чыгарылбай турган комментарий сабы

ai: 0 үзгүлтүгүн тиркөө (пин D2)

ar: аналогдук окуу

aw: "аналогдук жазуу" ардуино же туура pwm үчүн

ca: массивдеги аналогдук тартуу

cl: дисплейди тазалайт cno: return *Prgm саптын номеринин индекси

ди: импульс сериясын күтүңүз жана узактыгын жана убактысын өлчөңүз

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" менен бирге

пл: cxx участогунун массиви

pm: кирүү же чыгаруу үчүн казыктарды коюңуз

pr: билдирүүнү же маанини же ыңгайлаштырылган белгини басып чыгарат

rgc: массивдер үчүн диапазонду көчүрүү буйругу

rgs: массивдер үчүн диапазонду орнотуу

rn: программаны RAM менен иштетүү

rs: жумшак абалга келтирүү

rx: RS232 аркылуу белгини алуу

si: синхрондуу сериялык киргизүү саат жана маалымат казыктары менен

sm: mini oscilloscope app sno: сапты санга айландырат

Ошентип: саат жана маалымат казыктары менен синхрондуу сериялык чыгаруу

sub: кичи программаны жарыялайт

sv: программаны EEPROMга сактоо

тн: обон бип

tx: RS232 аркылуу номерди жөнөтүү

wh: do-while цикли 'do' менен бирге колдонулат

7 -кадам: Mini App 'sm' Running видеоклиби

окуяны толугу менен окуу жана бардык тиешелүү файлдарды жүктөө үчүн менин сайтыма баш багыңыз

www.sites.google.com/site/demeterart

Сунушталууда: