Bilgisayarsız bir mikrodenetleyici programlayabilir misiniz?


16

Diyelim ki oldukça basit ve küçük bir mikro denetleyiciniz var ve arayüz, bilgisayar, hata ayıklayıcı, derleyici veya montajcı yok. Kodunuzu montajda yazabilir, (manuel olarak) makine koduna dönüştürebilir ve ardından bir voltaj kaynağı kullanarak uygun pimlere güç verebilir misiniz?

Gerçekten bir şey yapmak için uygun I / O ve belleğe ihtiyacınız olacağını anlıyorum , ama eğer bu kadar eğimli ve zamanınız olsaydı, bunu yapabilir misiniz? Sanırım, tarihsel olarak, başlamak için hiçbir bilgisayar / derleyici / montajcı olmadığında bu nasıl yapıldı? Beni dışarıdaki bir kaynağa bağlamaktan çekinmeyin. Teşekkürler! :)


3
Altair 1'e bir göz atın. Ön panel anahtarları ve manuel makine programlama onu kullanmanın tek yoluydu.
pjc50

@ pj50 Mikroişlemci değil, mikroişlemci istedi. Mikrodenetleyiciler kodlarını bir tür arabirim olmadan erişilemeyen flaşımızı çalıştırır.
tcrosley

Kaç tane programlanmış birime ihtiyacınız var? Birçok üretici kodlarını önceden programlanmış mikrolarını tedarik edecektir; ancak, tam bir makaradan daha azına ihtiyacınız varsa bu pratik değildir.
Oleg Mazurov

2
70'lerde, programa girebilmeniz için bir geçiş anahtarları ve ışıklar paneli inşa ederdiniz. İlk mikrodenetleyicilerden biriyle hiç çalışmadım, ancak birkaç farklı mikroişlemci ile çalıştım ve bunu varsayılan olarak böyle yaptınız. Ve ilk mikrodenetleyiciler ve mikroişlemciler arasında G / Ç özellikleri ve program belleğinin nasıl yapılandırıldığına dair bazı ayrıntılar arasında temel bir fark yoktu.
Hot Licks

Bunu bir yorum olarak bırakacağım çünkü bu hikayenin kaynağını bulamıyorum. Bir zamanlar transistörlerden kendi bilgisayarını (sadece CPU'yu) tamamen dijital mantık anlayışına dayanan bir bilim fuarı için tasarlayan ve inşa eden bir çocuğun hikayesini hatırlıyorum. O zaman bir bilgisayar göze alamazdı ve onun geçiş anahtarları aracılığıyla yaratma programladı (Sanırım sadece bir düğme için saat hatırlıyorum). Yargıçlardan biri o kadar etkilendi ki çocuğa bir bilgisayar aldı.
slebetman

Yanıtlar:


37

Kodunuzu montajda yazabilir, (manuel olarak) makine koduna dönüştürebilir misiniz,

Evet!
İsterseniz kod ikili olarak "kafanızdan" yazılabilir.
Uzun (çok uzun) önce mikroişlemcileri kullanmaya başladım.
Ben ve arkadaşlarım montaj dilinde kod yazar, makine koduna manuel olarak derler (bazı uygulamalardan sonra "muayene ile" yapabileceğiniz bir şey) ve daha sonra çeşitli yollarla işlemciye girersiniz. Oluşturduğumuz bir sistemde, ikili (açık) anahtarlarda adresi kurarız veya işlemcinin otomatik artış özelliğini kullanırız, ikili anahtarlara 8 veri biti girer ve ardından verileri belleğe girmek için bir "saat" anahtarına basarız.

Eşdeğer işlevsellik, seri SPI programlama kullanarak modern bir mikrodenetleyicide daha az anahtarla elde edilebilir - aşağıya bakın.

... ve sonra bir voltaj kaynağı kullanarak uygun pimlere güç uygulansın mı?

Evet!
Ama bunu yapmak inanılmaz derecede yavaş olurdu !
Birçok modern mikrodenetleyici programlama için bir "SPI" arayüzünün kullanılmasına izin verir.
Bu genellikle giriş ve çıkış veri hatlarından ve bir "saat" hattından ve genellikle bir sıfırlama hattından oluşur.

Birçok işlemci SPI saatinin ve verilerinin "statik" olmasına izin verir, yani bitler arasındaki verileri ayarlamak için ne kadar süre alabileceğiniz konusunda bir sınırlama yoktur. Manuel olarak çalıştırılan anahtarlar tarafından çalıştırılan bir veri hattı ve bir saat hattı kullanarak böyle bir işlemciyi programlayabilirsiniz. Saat çizgisinin "zıplamasız" olması gerekir - çalışma başına tek bir geçişte yüksek veya düşük olarak ayarlayabilmeniz gerekir - bu nedenle minimum bir arayüzün Schmitt tetikli bir geçit içermesi gerekebilir. Sadece bir RC gecikmesi ve bir basma düğmesi anahtarı ile "uzaklaşabilirsiniz", ancak Schmitt tarafından tetiklenen bir giriş daha güvenlidir. Durumu yalnızca saat kenarında okunduğundan, veri satırının hemen çıkması gerekmez.

Bazı arayüzler etkileşimlidir - programlama sırasında veriler işlemci tarafından çıkarılır (örn. Veri çıkışı = MISO = AVR işlemcilerde Ana Seri Seri Çıkışı). Bunu okumak için bir LED ve bir direnç eklemeniz gerekir (ve sürücü kapasitesi GERÇEKTEN düşükse sadece bir tampon veya transistör).


MC6800:

Yarı soluk hafızadan (neredeyse 40 yıl!)

LDI A, 7F $ ...... 86 7F ...... 1000 0110 0111 1111
STA, 1234 $ ...... B7 12 34 ... 1011 0111 0001 0010 0011 0100
LDI X, $ 2734 .. CE 27 34 ... 1100 1110 0010 0111 0011 0100
...


1
Statik tasarımdan bahsettiğiniz için +1, saatin DC'ye kadar gitmesini sağlar.
pericynthion

2
Bu anıları geri getirir. Aslında okuldaki düğmeleri kullanarak Z80 kodunu girmeyi öğrendim. Öğretmenim 1990'daydı. Zor programlamayı öğrenmenin değerli olduğu konusunda ısrar etti. 25 yıl sonra hemfikirim.
Nils Pipenbrinck

@NilsPipenbrinck Şu anda C kodu yazıyorum ve ilk kez Fortran ile öğrendiğim dersleri uyguluyorum :-) !!! - ve daha sonra gömülü sistemler ve montaj dili ile bilenmiştir. Bu dersler, aksi halde izin verilen, ancak arzu edilmeyen veya yararlı olmayan şeyler yapabilen değişken ve port erişimlerine zihinsel yazım uygulayarak hata olasılığını azaltır. Assembler nihai keskin silahtır - el koruması olmayan çift uçlu bir kılıç. Bundan sonra "üst seviye" diller daha az keskin görünüyor :-). Z80 düğmesi girişi benzer şekilde öğrenme deneyimleriniz ;-).
Russell McMahon

@Erbureth Teşekkürler :-). Evet 1111 için ffff beyninin solmasıydı. ... sadece "fikri anladınız" ama çizgiyi tamamlamak acı vermez.
Russell McMahon

Evet, fikri anladım, ama
işteyken

10

Başlangıçta, programlanabilir makinelerde, programlar elle kağıt bant veya kartlara delinmiştir. Daha sonra delmeyi yapmak için bir tür daktilo kullandılar ve daha sonra bile bilgisayarlar (o zamana kadar bilindiği gibi) kendi kağıt bantlarını yumruklayabilirler.

Kelimenin tam anlamıyla, orada bir kartla oturuyordu ve elle delik açıyordu.

enter image description here

Her sütun, CPU'nun durum makinesi tarafından görevleri gerçekleştirmek için yorumlanan bir talimat veya veri bitidir.

Tabii ki hepsi flash bellekse ve evet, oraya ilk etapta veri almak normalde bunu yapmak için bir bilgisayara ihtiyaç duyar. Ama bu kesinlikle% 100 doğru değil.

Sonuçta, bir bilgisayar ve donanım programcısı IO pinlerinin durumunu doğru zamanlarda ayarlamaktan başka ne yapıyor? Yani, yeterince mazoşistseniz, yürütme için flash belleğe bazı talimatları yüklemek için mikrodenetleyicinin programlama pimlerine doğru talimatları doğru şekilde göndermenizi sağlayan bir sistem oluşturabilirsiniz.

Belki çok sayıda anahtar, bazı vardiya kayıtları, saat üreteci vb.

Üniversitede yeni bir Z80 tabanlı programlama sistemimiz olduğunu hatırlıyorum - bir Z80 ile bavul büyüklüğünde bir birim, az miktarda RAM, 7 segmentli LED ekranlar ve büyük bir anahtar sırası. Anahtarları kullanarak elle RAM'e talimatları yükleyerek programlayın.


Z80 geçerli bir örnek değil. Mikroişlemci değil, mikroişlemci sordu. Mikrodenetleyiciler kodlarını bir tür arabirim olmadan erişilemeyen flaşımızı çalıştırır. En azından cevapladığınız başka bir yerde flash ve programlama arayüzünden bahsettiniz.
tcrosley

@tcrosley Z80 daha çok anekdot amaçlıydı - Visual Studio'nun tüm becerileri almadan önce bilgisayarların nasıl programlandığını gösteren.
Majenko

Bunu yapmak için yapılmış herhangi bir makinenin farkında olmamakla birlikte, bir kart dizisinde saklanan kodlu bir mikrodenetleyici programlamak için bir kart okuyucusuna biraz devre eklemek zor olmayacaktır. Yine de kağıt bant daha pratik olabilir.
supercat

2
Bunlarda manuel olarak delik keserdim. Sadece aşırı koşullarda mümkündür (22:00, yarın vadesi gelecek dönem kağıtları, bir ana çerçeve kaldı, gün için yumruk odası bayan kaldı). Aynı ana bilgisayarın ön panelden (birkaç yıl sonra) programlanması aslında daha hızlıydı.
Oleg Mazurov

1
@Majenko - Babbage'nin makinesinin yeniden inşasını gördüm ve kesinlikle telefon ekipmanından yapılmadı. Kesinlikle gürültülü olsa.
Hot Licks

7

"Küçük mikrodenetleyici ve arabirim, bilgisayar, hata ayıklayıcı, derleyici veya montajcı yoktu" dediniz. Peki, bilgisayar, hata ayıklayıcı, derleyici veya montajcı olmadan alabilirsiniz, ancak programı yüklemek için mikrodenetleyici ile bağlanmak için bir çeşit arayüze sahip olmanız gerekir.

Her şeyden önce, C gibi yüksek seviyeli dilleri unutun. O zaman en kolay yol programınızı montaj dilinde yazmaktır, ancak montajcıyı makine koduna çevirmek için kullanmayın. Bunun yerine, programlama kılavuzundaki montaj talimatlarının her birine bakın, eşdeğer onaltılı kodlarını bulun ve not edin.

Kendi değişkenlerinizi tahsis etmeniz gerekecektir, böylece talimatların işlenen bölümünde uygun adresleri doldurabilirsiniz. Ayrıca yığını ve yığını kullanmayı unutmayın, çok fazla iş. İşiniz bittiğinde, doğrudan mikrodenetleyicinin flash belleğine yüklenebilen bir makine programınız olacaktır - herhangi bir bağlayıcıya da gerek yoktur.

Neredeyse tüm mikro denetleyicilerdeki harici adres ve veri yollarının bulunmaması nedeniyle (G / Ç bağlantı noktaları ve çevre birimlerinin ihtiyaç duyduğu çok fazla iğne alacakları için), neredeyse tüm mikro denetleyiciler böyle bir özel arabirim aracılığıyla programlanır:

enter image description here

Normalde soldaki "programcı", bir derleyici / bağlayıcı tarafından oluşturulan bir makine dosyasını indirecek bir bilgisayara bağlanır.

Ancak, programlayıcının aşağıdaki gibi bir klavyesi varsa:

enter image description here

daha sonra manuel olarak oluşturulmuş bir programın onaltılı kodlarını doğrudan programlayıcıya girebilir ve cihazı, derlemekte olduğunuz derleyici, bağlayıcı veya PC'ye ihtiyaç duymadan programlayabilirsiniz. (Klavye ayrıca onaltılık dosyaları düzenlemek ve sağlama toplamları oluşturmak için de kullanılır.)

Çok az programcının böyle klavyeleri var. Muhtemelen birkaç bin dolara mal olduğu için bu bir hobi için uygun olmaz.

Bu özel programlayıcı, parçaları bir tahtaya konmadan önce programlar; arayüzler ve soketler çeşitli PIC'ler ve ayrıca Atmel AVR'ler için mevcuttur.


5
Diğer cevaplar hakkında geçersizlikleri hakkında yorum yaptınız, ancak bu cevap tartıştığınız çoğu sorudan daha az geçerli. "... Arabirim yok, bilgisayar yok ..." dedi. En azından çözümünüz "bilgisayar" dır. "Arabirim yok" ne demek tartışmalıdır. Ancak, SPI arabiriminde bazı indirilmiş anahtarlar kullanın ve muhtemelen bir çözümünüz var.
Russell McMahon

1
@RussellMcMahon Programcıda bir bilgisayar olduğunu kim söyledi? Birçoğu FPGA'ları kullanıyor (bu, ayrı bir mantıkla değiştirilebiliyor.) Bir önyükleyici olmadığı sürece bir mikro denetleyiciyi bir SPI arabirimi üzerinden nasıl programlayacaksınız? Öyleyse, önyükleyiciyi nasıl programlıyorsunuz?
tcrosley

3
Birçok (muhtemelen çoğu) mikrodenetleyicideki temelde bootloader içermeyen standart düşük voltajlı seri programlama arayüzü, esasen seri arayüzde birkaç satır kullanır. MOSI MCLK (Vdd Gnd Reset), etkileşim varsa minimum MISO'dur. 3 anahtar (bunlardan sadece bir tanesi) geri zıplamamalıdır) ve MISO için LED ve "kapalısınız". Çok çok çok yavaş. Bir FPGA'nın "bilgisayar" olarak sayılmasına izin verilmezse, birçok işlemci tabanlı sistemi uygulamak sorun olmaz. "Hiçbir kombinasyonel mantık" ın isteğinin ruhunu karşılayamayacağından şüpheleniyorum.
Russell McMahon

Söylemeliyim ki, havai fişek elektronik cihazlarla çalışırken yanlış arka plan :)
Anonim Penguen

6

Pratik bir konu olarak, JTAG pinlerini manuel olarak değiştirmek gibi bir şey çok hataya açık olacaktır. Herhangi bir terbiyeli büyüklükteki bir programa girmek binlerce geçiş gerektirir. Ancak teorik olarak mümkün.

Mikrodenetleyiciyi önceden hazırlamanıza izin verilirse (veya bunun için bir önyükleme ROM'u yazarsanız), erken ana çerçevelerde kullanılan harici geçiş anahtarları gibi bir şeyi kolayca uygulayabilirsiniz. Harici mantığa izin verirseniz, işleri hızlandırmak için onaltılık tuş takımı bile kullanabilirsiniz.

Son olarak, bu günlerde yaygın olmasa da, içinde özel kod bulunan ROM tabanlı bir mikrodenetleyici satın alabilirsiniz. Önceden biraz para teklif etmeniz ve belirli bir hacmi garanti etmeniz gerekir, ancak müşterilerin yüksek hacimli üretimde tasarruf etmek için bunu yaptığını gördüm. Bu durumda, mikro denetleyiciyi programlamak için herhangi bir harici sinyale ihtiyaç duyulmaz. Kod, çipin fiziksel düzenine yerleştirilir.

Tabii ki, harici bir bellek arayüzünden kod çalıştıran bir mikrodenetleyici de kullanabilirsiniz, ancak bu hile yapıyor. :-)


2
Aslında, 1976/77'de bir Imsai 8800 "klonu" inşa ettim ve geçiş anahtarlarını kullanarak rutin olarak ikili olarak programlayacağım. ASR-33 teletype'ımdan bir kağıt kaseti okuyacak ve beni bir klavye monitörüne sokacak 40-60 tek baytlık bir önyükleme dizisi vardı (bu bir ömür boyu önceydi!). Teletip çalışmadan önce 8085'i ("klon" ve Imsai arasındaki farklardan biri) kesinlikle ikili olarak programlardım. Ama bu bir sıra anahtarla paraleldi. Seri kodlama yapmak için bir telgraf anahtarı kullandım ve Adam'ın belirttiği gibi GERÇEKTEN hataya açık.
user6297

3

Kesinlikle. Aslında, aldığım ilk mikroişlemci kursu (yaklaşık 87) bir Motorola 68000 kartı kullandı. Montajdaki kodu çözer, montaj için onaltılı arar ve onaltılı kartı programlamak için bir terminale yazarız. Düzenlediyseniz, koyduğunuz kodun değiştirdiğiniz koddan daha kısa olduğundan emin olmanız ve geri kalanını NOP'larla arabelleğe almanız gerekir. Kod daha uzun olsaydı, her şeyi yeniden yazmanız gerekir! Çok sayıda NOP eklemeyi öğrendik.


68000 bir mikro denetleyici değildi. Mikroişlemci değil, mikroişlemci sordu. Mikrodenetleyiciler kodlarını bir tür arabirim olmadan erişilemeyen flaşımızı çalıştırır.
tcrosley

5
@tcrosley Bu kesinlikle doğru değil. Kendi ROM'ları veya Flash'ları olmadığından harici ROM gerektiren mikro denetleyiciler vardır. Onları mikrodenetleyici yapan şey RAM veya ROM'da değil, çevre birimlerde (IO portları, UART, vb.)
Majenko

Çok az olsa da - az önce bahsettiğiniz G / Ç çevre birimleri nedeniyle, çok azının dış adresleri ve veri yolları vardır çünkü iki çok pim gerektirirler.
tcrosley

2

Kesinlikle. Gerçek talimatların ikili biçimine sahip olduğunuzda (iyi belirlenmiş talimat setleri için yapılması kolay), tek ihtiyacınız olan programlama protokolünü uygulamaktır.

Örneğin, AVR Tiny 4 gibi küçük bir şey alın . Bölüm 14, protokol ve fiziksel katman dahil olmak üzere programlama arayüzünü detaylandırmaktadır. Nispeten basittir ve 1 veya 0 göndermek / almak için sadece birkaç düğmeye ve çekme / aşağı dirençlere ihtiyacınız vardır. Hırslı hissediyorsanız, çıkışı okumak için bazı LED'ler ekleyin.

Kalan son sorun, AVR Tiny 4 (bölüm 16) için neyse ki * yeterince hızlı yapabiliyorsanız, programlama söz konusu olduğunda minimum frekansı yoktur.

* not: veri sayfasının belirttiği kadarıyla. Bu gerçekte farklı olabilir ... Herkesin mHz saat hızında programlamayı denediğinden şüpheliyim.

İşlemi istediğiniz kadar / az miktarda otomatik hale getirmekten çekinmeyin. Çoğu programlama cihazının zaten yaptığı şey budur: süreci otomatikleştirin.


2

Programı uC'ye girdiğiniz ne olursa olsun, onunla "arabirim" kuruyorsunuz, çünkü arabirim bunun anlamıdır. Elle çevirdiğiniz bir grup anahtar bile bir "arayüz" dür.

Bu soruyu "büyük ölçüde -mekanik- (elektroniklerin aksine) arabirim donanımıyla ve mümkün olduğunca havalı bir şekilde bir UC ile nasıl arayüz kuracağım?"

Cevabımın olduğu programa piyano rulosu olarak girin. Bir oyuncu piyano piyano rulosu "izleme çubuğu" temel olarak kağıttaki deliklere göre bağımsız olarak açıp kapatabileceğiniz en az 65 (formata bağlı) bit verir. Gerisi exacto bıçakla titizlikle çalışıyor. Ancak en azından programınız bir kez çalıştığında (bir şekilde) kalıcı olarak saklanır (anahtarları çevirerek çevir yaklaşımının aksine).


2

Sadece o mümkün bir bilgisayar olmadan bir mikro programı için, ama aslında özel olarak anahtarlar geçiş donanım ile programlanmış şekilde tasarlanmıştır günlerde bilgisayar satın alabilirsiniz. Kit, Üyelik Kartı olarak adlandırılır ve 1970'lerden itibaren COSMAC Elf bilgisayarının yeniden oluşturulmasıdır. Kit, IEEE Spectrum dergisindeki son makalede açıklandı . Üyelik Kartının daha yeni sürümlerini bir PC'den programlamak da mümkündür.


2

Tamam. Buna ne dersiniz: programı montajcıya yazarsınız ve daha önce önerildiği gibi opcodları kendiniz ararsınız. Bilgisayara nasıl girilir: eski bir kaset çalar alın, oynatma kafasını çıkarın, ancak kaptanı ve sıkıştırma silindirini bırakın. Bu senin ulaşımın olacak. Makaradan makaraya bir oynatıcınız varsa, oynatma kafasını yerinde bırakabilirsiniz.

Sonra uzun ve dar bir kağıt şeridi veya daha iyi şeffaf bir bant alın. Bu, programınızı kodladığınız yerdir. Programlamak için pinleriniz kadar parça kullanırsınız. Bir piste düzenli aralıklarla siyah noktalar koyarsınız; bu senin saatin. Diğer parçalara siyah noktalar veya şeritler koyar ve verilere ve sinyallere göre boşluklar bırakırsınız. Her şeye ışık tutuyor ve onu küçük fototransistörler ile tespit ediyorsunuz (veya banttaki bir LED'i parlatıyorsunuz ve ışığı diğer benzer lambalarla tespit ediyorsunuz) ve saat ve sinyal hatlarını transistörlerle sürüyorsunuz. Bu, kaset çalarda biraz yer kaplar, bu nedenle oynatma kafasını çıkarmanız gerekebilir.

Tabii ki sinyalleri ses olarak da kodlayabilirsiniz, ancak kod çözülmesi biraz daha karmaşıktır. Veya iletilen ışık yerine yansıyanları tespit edebilirsiniz. Veya saydam bantta siyah işaretler yapmak yerine koyu bantta veya kağıt bantta delik açabilirsiniz. Her neyse. Kaset çalar kaseti sabit bir hızda sürer, böylece bilgisayar olmadan saatli bir sinyal girebilirsiniz.


1

Evet. Ana sorun programlama arayüzü ile etkileşime giriyor olabilir. Basit bir adresiniz ve veri yolunuz varsa, işler biraz daha kolaydır. Gerçekten eski bilgisayarlardan bazılarını gördünüz mü? Programlar, ön taraftaki anahtarlar ile RAM'e her seferinde bir komut girilir.


Mikroişlemci değil, mikroişlemci sordu. Mikrodenetleyiciler kodlarını bir tür arabirim olmadan erişilemeyen flaşımızı çalıştırır.
tcrosley

4
@tcrosley - İlk UC'lerin flaşı yoktu. Program deposu için RAM veya ROM vardı.
Hot Licks

@HotLicks Doğru. Ve birkaç istisna dışında bunların hepsi mikrodenetleyiciler değil, mikroişlemcilerdi. Demek istediğim, program deposunun flash veya ROM, PROM veya EPROM veya EEPROM olması değil. Mesele, program deposunun çip (mikrodenetleyici) üzerinde olup olmadığı (mikroişlemci) idi. Intel'in 1977'de piyasaya sürülen ilk mikro denetleyicisi olan 8048'de bile dahili ROM vardı.
tcrosley

3
@Tcrosley Kimsiniz? Ve genellikle yararlı ve objektif tcrosley ile neler yaptınız? :-) | İlk gözlemi, genellikle ama her zaman geçerli olmayacak olan programlama arayüzüyle etkileşime girebileceğinizdi. "IF" adresi ve veri yolu bir IF'dir. Bazı büyük ve sınırda hibrid mikrodenetleyiciler için geçerlidir, ancak orijinal IF'si yeterince iyiydi (sert ve yavaş da olsa).
Russell McMahon

3
Mikroişlemci ve mikrodenetleyici arasında sert bir ayrım sürdürmeye çalışmak, özellikle her bir cevaba bir yorum yazarken faydalı olmaktan daha bilgiçtir.
pjc50

1

Digital Equipment'in 40+ yıl önceki PDP-8 min bilgisayarlarının otomatik önyükleme özelliği yoktu. Programlar genellikle delikli kağıt bantlardan yüklenmiştir, ancak kağıt bantları yükleyecek yükleyicinin ön panel anahtarlarına manuel olarak girilmesi gerekiyordu.

enter image description here

Günün gömülü denetleyicisi olarak kullanan OEM'ler gibi Digital ve PDP-8 müşterilerinin sitelerinde, kullanıcıların önyükleme yükleyicilerini ezberlemesi ve önyüklemeye girmek için geçen en hızlı zaman için birbirleriyle rekabet etmesi nadir değildir. yükleyici makinenin içine. Makineler manyetik çekirdekli anılar kullanıyordu (dünyanın çok geniş bölgelerinde, küçük parmaklı bayanlar tarafından iğneler ve saç telleri kullanılarak elle sıkılmış).

enter image description here

Manyetik bellek içeriği geçici olmadığından, önyükleme yükleyicileri güç kesildi ve manuel giriş sadece ilk montajdan sonra gerekliydi, yükleyici bir program hatası veya yükleyicinin alanını kullanmak için gerekli bir program tarafından silindi.


Yıllar önce, her iki şekilde de yokuş yukarı karda yalınayak okula gitmek zorunda kaldığımızda, lisemizdeki PDP-8'in, açıkladığınız gibi ön panelden önyükleyiciyi değiştirerek önyüklenmesi gerekiyordu. Öğretmenlerden hiçbiri, bilgisayardan sorumlu bilgisayar da dahil olmak üzere çok fazla şey bilmiyordu. 0 ve 1'in aşağı olduğunu düşündü, bu yüzden önyükleyicide asla geçiş yapamazdı. Bilgisayarın İngilizce sınıfındayken çökmesini ayarladım, bu yüzden bilgisayarı yeniden başlatmak için çağrıldım. Ona asla onun yanlışlığı ve aşağı yanılgısı hakkında bir şey söylemedim - bu benim için çok yararlı oldu.
Olin Lathrop

PDP-8'i çok sevdim. Üç yıla tek bir erişimim vardı - bu yüzden PC terimi icat edilmeden çok önce kişisel bir bilgisayara sahip olmak gibiydi. 4K belleğe sığabilecek kadar şaşırtıcı. Tabii olsa bir sürü kağıt bant geçti (hiçbir DECtape vardı) ve Teletype kağıt.
tcrosley

0

Cevap evet , bir bilgisayar, hata ayıklayıcı vb. Olmadan bir mikro denetleyici programlayabilirsiniz. İhtiyacınız olan şey uC üreticisi (kolay bir iş değil) tarafından belirtilen çeşitli voltajlar, veriler, saat ve programlama sekansları sağlamak olacaktır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.