Агуулгын хүснэгт:

Зөөврийн үндсэн компьютер: 6 алхам (зурагтай)
Зөөврийн үндсэн компьютер: 6 алхам (зурагтай)

Видео: Зөөврийн үндсэн компьютер: 6 алхам (зурагтай)

Видео: Зөөврийн үндсэн компьютер: 6 алхам (зурагтай)
Видео: Диагностика гбо 4 поколения своими руками 2024, Долдугаар сарын
Anonim
Гар BASIC компьютер
Гар BASIC компьютер
Гар BASIC компьютер
Гар BASIC компьютер

Энэхүү зааварчилгаа нь BASIC дээр ажилладаг жижиг гар компьютер бүтээх үйл явцыг минь тайлбарласан болно. Энэхүү компьютер нь ATmega 1284P AVR чипийн эргэн тойронд бүтээгдсэн бөгөөд энэ нь компьютерын тэнэг нэрийг өдөөсөн (HAL 1284).

Энэхүү бүтээн байгуулалт нь эндээс олдсон гайхалтай төсөл болон SuperCON BASIC Badge -ээс санаа авсан юм.

Компьютер нь TinyBasic -ийн өөрчилсөн хувилбарыг ажиллуулдаг боловч ихэнх програм хангамж нь dan14 -ийн төсөл дээр суурилдаг. Мэдээжийн хэрэг, би энэ зааварчилгааг дагаж мөрдөх боломжтой, эсвэл бүр илүү сайн хийж чадна, учир нь би бага зэрэг алдаа гаргасан.

Энэ төслийн хувьд би бас гарын авлага хийсэн. Энэ нь сонгосон дэлгэцийн зарим алдаа, онцлогийг дурдсан боловч хамгийн чухал нь BASIC үйлдлүүдийн жагсаалттай байна.

Үүнийг нийтэлсний дараа би уг төслийг харуулсан видео хийсэн.

Алхам 1: Миний ашиглаж байсан хэсгүүд

Миний ашиглаж байсан хэсгүүд
Миний ашиглаж байсан хэсгүүд
Миний ашиглаж байсан хэсгүүд
Миний ашиглаж байсан хэсгүүд
Миний ашиглаж байсан хэсгүүд
Миний ашиглаж байсан хэсгүүд

Үндсэн IC -ийн хувьд:

  • ATmega 1284P
  • 16MHz болор
  • 2х 22pf керамик конденсатор
  • 10KΩ резистор (дахин тохируулахын тулд дээш татах)
  • 4 зүү товчлуур (дахин тохируулах)
  • 470Ω Резистор (Нийлмэл видеоны хувьд)
  • 1kΩ эсэргүүцэл (нийлмэл видео синхрончлолын хувьд)
  • 3 зүү холбогч (видео дохионы хувьд)
  • Идэвхгүй дуугаралт

Keyboord хяналтын хувьд:

  • ATmega 328P (Arduino Uno -д ашигладагтай адил)
  • 16MHz болор
  • 2х 22pf керамик конденсатор
  • 12x 10KΩ эсэргүүцэл
  • 51х 4 зүү товчлуур (Бодит гарны хувьд)

Эрчим хүчний хувьд:

  • L7805 хүчдэлийн зохицуулагч
  • 3 мм LED
  • 220Ω эсэргүүцэл (LED хувьд)
  • 2x 0.1µF электролитик конденсатор
  • 0.22 µF электролитийн конденсатор (Та энэ 0.22 ба 0.1 -ийг нэг 0.33 -аар сольж болно. Мөн утга нь тийм ч чухал биш гэж надад хэлсэн, гэхдээ би конденсаторын хувьд тийм ч сайн биш)
  • 2х 2 зүү холбогч (цахилгаан оролт ба үндсэн унтраалгын хувьд)

GPIO (Магадгүй хэд хэдэн үндэслэл нэмж болно):

  • 7 зүү холбогч
  • 2х 8 зүү холбогч
  • 2 зүү холбогч (5V ба GND-ийн хувьд)
  • 3-4 зүү холбогч (Цуваа холболт хийх зориулалттай)

ПХБ бус:

  • Нийлмэл видео бүхий 4 инчийн LCD дэлгэц (Уурхайн оролтын хүчдэл 7-30 В хооронд)
  • Дэлгэцийн зориулалттай 3D хэвлэсэн эзэмшигч
  • Ямар нэгэн төрлийн унтраалга

Алхам 2: Хэлхээ

Хэлхээ
Хэлхээ

Энэ хэлхээ нь тийм ч хөөрхөн биш бөгөөд үндсэн IC бүсийн ихэнх хэсгийг dan14-ээс авсан болно. Үүнийг хэлэхэд, энэ бол Breadboard-ийн тойрог дээр нэлээд шулуун урагшлах Arduino юм. Гар нь энгийн сүлжээ бөгөөд ATmega328 -ээр хянагддаг. Хоёр AVR чип нь UART Serial тээглүүрээр холбогддог.

Зураг болон миний Eagle файлуудыг хоёуланг нь хавсаргасан бөгөөд хэлхээг дахин үүсгэхэд хангалттай байх болно гэж найдаж байна. Үгүй бол надад чөлөөтэй мэдэгдээрэй, би зааварчилгааг шинэчлэх болно.

Алхам 3: ПХБ

ПХБ
ПХБ
ПХБ
ПХБ

ПХБ нь 2 давхар бөгөөд Auto Route ашиглан бүтээгдсэн (Өө, ямар ** нүхтэй юм бэ!). Энэ нь урд талд нь товчлуурууд, цахилгаан заагч LED, үлдсэн хэсэг нь ар талд байдаг. Би ПХБ -ээ JCL ПХБ -ээр хийлгэсэн бөгөөд тэд үүнийг гайхалтай гүйцэтгэсэн. ПХБ-ийг дахин үүсгэхэд шаардлагатай файлууд нь Eagle файлд байх ёстой.

Надад өөрөөр хийхийг хүсч буй зарим зүйл байгаа тул ПХБ -ийг дахин төлөвлөхийг танд зөвлөж байна. Хэрэв танд миний дизайн таалагдаж байвал надад зарахаас илүү ашиглагдаагүй дөрвөн самбар байсаар байна.

Самбар дээр миний LCD дэлгэцийг суурилуулахад ашигладаг дөрвөн өрөмдлөгийн цооног байдаг.

Алхам 4: Кодыг байршуулж байна

Кодыг байршуулж байна
Кодыг байршуулж байна
Кодыг байршуулж байна
Кодыг байршуулж байна
Кодыг байршуулж байна
Кодыг байршуулж байна

Мэдээж 1284 ба 328 -ийн аль алинд нь код хэрэгтэй бөгөөд миний ашигласан кодыг эндээс олж болно: https://github.com/PlainOldAnders/HAL1284 ArduinoSrc/src дор. Би зүгээр л кодыг өөрчлөх, байршуулахын тулд Arduino IDE -ийг ашигласан боловч үүнийг хийхээс өмнө та IC дээр ачаалагчдыг шарах хэрэгтэй болно.

ATMega328:

Ачаалагчийг хэрхэн шатаах, энэ IC -д код оруулах талаар маш их дэмжлэг байдаг тул энэ нь маш хялбар юм. Би энэ гарын авлагыг ихэвчлэн дагаж мөрддөг, учир нь би тодорхой зүйлийг мартсаар байдаг.

328 -ийн код (ArduinoSrc/товчлуурын доор) нэлээд энгийн. Энэ нь Adafruit_Keypad-master- номын санд бүрэн найддаг. Хэрэв lib-ийн талаар ямар нэгэн зүйл өөрчлөгдвөл би github хуудсандаа ашигласан хувилбараа ArduinoSrc/lib дор оруулсан болно.

ATmega1284:

IC -ийг анх авахад энэ нь надад жаахан хэцүү байсан. Би эндээс ачаалагчийг татаж аваад суулгалтын зааврыг дагасан. Ачаалагчийг шатаахын тулд би 328 -тэй ижил зүйлийг хийж, эндээс тусламж авсан. IC -ийн аль алиных нь хувьд би Arduino Uno -г ачаалагчийг шатаах, кодыг байршуулах зорилгоор ашигласан (IC -ийг байршуулахдаа Arduino Uno -с устгасан).

Код (ArduinoSrc/HAL1284Basic дор) миний хувьд хэтэрхий төвөгтэй боловч би кодын зарим хэсгийг өөрчилж чадсан:

Би хэд хэдэн тушаалыг нэмж оруулсан (гарын авлагад [A] гэж тэмдэглэгдсэн тушаалтнууд), мөн би бусад тушаалуудыг өөрчилсөн:

Ая: Аяны командыг өмнө нь Arduino-ийн ая-функцийг ашиглаж байсан боловч TVout-ийн номын санг ашиглах үед энэ нь дуугарагч зөв ажиллахгүй болсон. Би үүнийг TVout-ийн аяны функцийг ашиглахын тулд өөрчилсөн боловч энэ нь дууны зүү нь 15-р зүү байх ёстой гэсэн үг юм (atmega1284-ийн хувьд)

Цуваа холбоо: Гар нь DIY тул тэмдэгтүүдийг уншихын тулд цуваа холболтыг ашигладаг. Atmega1284 энд ашиглагддаг тул хоёр цуваа холбооны шугам байдаг бөгөөд "серком" идэвхжсэн үед код нь цуваа портоор (компьютер эсвэл бусад зүйлээс) бичих боломжийг олгодог.

Шийдэл: Энэ төсөлд ашигладаг дэлгэц нь дүлий, жижиг нарийвчлал шаардлагатай, эс тэгвээс зураг анивчдаг. Хэрэв илүү сайн дэлгэц ашиглаж байгаа бол тохиргооны функц дээр нарийвчлалыг өөрчлөхийг танд зөвлөж байна.

Алхам 5: Чуулган

Чуулган
Чуулган
Чуулган
Чуулган
Чуулган
Чуулган

Кодыг байршуулж, ПХБ болон эд ангиудыг бэлэн болгосноор угсрах цаг болжээ. Миний ашигладаг бүх эд анги нь нүхээр дамждаг байсан тул гагнах нь тийм ч хэцүү биш байсан (тэнд байгаа SMAD-гагнуурчдаас ялгаатай). Мониторыг ПХБ -ийн өрөмдлөгийн дөрвөн цооногт 3D хэвлэсэн эзэмшигчээр бэхэлсэн. Хэрэв өөр дэлгэц ашиглавал дөрвөн өрөмдлөгийн цооногийг угсрахад ашиглаж болно гэж найдаж байна.

Энд ашигласан монитор эзэмшигч нь унтраалга (ПХБ дээрх "шилжүүлэгч" холбогчтой холбогдсон) болон дэлгэцийн гурван хяналтын товчлуурыг байрлуулах зориулалттай. Эзэмшигч нь хуванцар М3 боолт, тусгаарлагчаар бэхлэгддэг.

Цахилгаан залгуурын хувьд би JST ПХБ -ийн холбогчийг ашигладаг байсан ч гөлгөр баррель үүр нь арай гөлгөр байх байсан. Самбарыг тэжээхийн тулд би 12V цахилгаан тэжээл эсвэл 18650 гурван батерейг дараалан сольсон. Надаас илүү гөлгөр ковбой нь самбар дээр бат бөх зай барих зориулалттай загвар зохион бүтээж магадгүй юм.

Алхам 6: Алдаа ба ирээдүйн ажил

Сумны товчлуурууд: Сумны товчлууруудыг санамсаргүйгээр тавьсан бөгөөд тийм ч их үүрэг гүйцэтгэдэггүй. Энэ нь навигацийг хүндрүүлдэг

Файлын I/O: Файлын I/O боломжууд байгаа боловч эдгээрийг хэрэгжүүлээгүй байна. Үүнтэй тэмцэхийн тулд HAL1284Com програм хангамж нь самбар дээр файл байршуулах боломжтой. EEPROM -д байршуулах боломжтой.

PEEK/POKE: PEEK ба POKE нь шалгагдаагүй байгаа бөгөөд би ямар хаягууд болохыг сайн мэдэхгүй байна.

Break: Break (Esc) нь хязгааргүй гогцоонд байх үед заримдаа бүхэл бүтэн кодыг алдагдуулдаг.

7 -р зүү: ХОУХ -ны 7 -р зүү нь DWRITE High эсвэл AWRITE 255 -ийг оролдоход хэцүү байж болно. Энэ нь AWRITE 254 -тэй сайн ажилладаг.

Тэнэг: UART1 -ээр дамжуулан байршуулах нь хамгийн тохиромжтой байх болно, гэхдээ зөвхөн UART0 -ээр дамжуулан байршуулах боломжтой тул байршуулах ажлыг үндсэн IC -ийг гаргаж авах замаар хийх шаардлагатай болно. Дэлгэц ба хүчдэлийн зохицуулагч 5 нь удаан хугацаанд ажиллахад бага зэрэг халдаг.

Зөвлөмж болгож буй: