Deney için hangi mikroişlemci?


33

Sıfırdan basit bir bilgisayar yapmak için gizli bir fanteziye sahibim (artık, o kadar gizli değil). Başlamak için kullanımı kolay bir mikroişlemci arıyorum. 6502, 68000, 8086, Z80 gibi genel şüphelileri biliyorum. Ama orada daha iyi bir şey olup olmadığını merak ediyorum. İşte dilek listem:

Olması gereken:

  • Düşük saat hızı (4-25 MHz)
  • Tercihen DIP konfigürasyonunda 40-60 pinten fazla değil
  • 64 KB civarında belleği adresleyebilme, ancak 1 MB'ye kadar bellek kapasitesi iyi olabilir
  • Depolanan program mimarisi (salt okunur öğretim alanı değil) (Düzenleme: bu, PIC ve AVR gibi çoğu alt uç mikrodenetleyiciyi dışlar)
  • Düz bellek modeli, 8086 gibi banklanmamış veya bölünmemiş

İster, ancak olması gerekmiyor:

  • RISCy komut seti (yük deposu)
  • Genel amaçlı kayıtlar
  • TTL I / O pinleri çeşitleri
  • Dahili flaş ROM

Hangi mikroişlemci veya mikroişlemci, bağlanması ve ilk ROM yordamlarını yazması kolay görülebilir?

Amacım, basit bir İleri (veya benzeri) sistemi devreye sokmak. Sadece yaptığımı söylemek için.

Düzenleme: Biraz araştırma yaptıktan sonra, ARM7 gibi bir şeyin bana uyacağını düşünüyorum. Dijital G / Ç, ADC, seri G / Ç ve daha fazlasıyla birlikte, bazen 256K flaş ve 64K SRAM ile oynamak için önemsiz miktarda flaş ve SRAM ile birlikte gelir.

İşte bir tane: STR711 ARM geliştirme kartı .


Gerçekten programlama ile ilgili değil. Bir donanım sorusu gibi geliyor (yani superuser.com malzemesi).

3
evet, ancak yalnızca bir programcı izleyici gerektiği gibi cevap verebilir
Stefano Borini

Aygıtın klavyeyi, fareyi ve ekranı kendi başına işlemesini mi istiyorsunuz yoksa yalnızca seri olarak mı bağlanacaksınız?

Seri benim için iyi olurdu.

STR711 ARM gerçekten iyi değil

Yanıtlar:


15

ARM'in 32-bit mikrodenetleyicilere giden yol olduğuna katılıyorum. ARM her yerde bulunur ve meclis dili geniş bir mikrodenetleyici ailesi yelpazesinde kullanılabilir. ARM ayrıca GCC alet zincirinden de iyi bir destek alıyor. ARM7TDMI çip mimarisi son 5 yılda 32-bit mcu alanına hakim oldu ve ARM Cortex-M3 ortaya çıkan yerini aldı. Cortex-M3 bir Harvard mimarisine sahiptir (ayrı talimatlar ve veri adres alanları), ancak bunun bir sınırlama olduğunu düşünmüyorum.

Micromint sağlam bir üne sahiptir ve uygun bir fiyat için yapılandırılabilir seçenekleri olan bir Cortex-M3 kartı sunar. Bununla birlikte, gerçekten DIP yapılandırmasına ihtiyacınız varsa , mbed ile başarım

Şimdi, sıradaki şey diller. FORTH'tan bahsettiniz. Ayrıca , bu boyuttaki hedef platformda çalışan dilleri öğrenmek için Python-on-a-a-Chip ve eLua'yı güçlü ve öğrenmesi kolay diller olarak öneririm . eLua daha gelişmiş, ancak Chip Python'dan daha büyük kaynak gereksinimlerine sahip. Tam açıklama: Ben Python-on-a-Chip'te kullanılan PyMite VM'nin yazarıyım. Eğer amacınız kendi dilinizi oluşturmaksa, bu alıştırmanın neşesini tamamen anlıyorum.


1
ARM ayrı talimatlara ve veri yollarına sahiptir , adres alanı bir araya getirilmiştir (örn. Gerekirse talimatları okuyabilir ve verileri çalıştırabilirsiniz). Ayrıca NXP'den çıkan Cortex-Mx çiplerine de bakmanızı tavsiye ederim - LPCXpresso'yu inceleyin.
Igor Skochinsky,

7

Küçük uC işleri için Arduino , ucuz, eğlenceli, iyi topluluk

ARM sınıfı makineler için muhtemelen en ucuz fişidir , bir wallwart güç kaynağına yerleştirilmiş şaşırtıcı bir tam makine ve çok daha fazla g / Ç içeren biraz büyük bir tek kartlı makine yaparlar.

Veya daha çok ses / video performansını hedef alan beagle board vardır .

Hepsi linux kullanıyor, böylece çok çeşitli geliştirme yazılımlarına sahip olursunuz.


Tamamen. Fuzebox kitini alın, bir araya getirin ve TV'niz için küçük oyunları hackleyin (şimdiye kadar hepsi özgür yazılımdır).

5

Texas Instruments'tan MSP430 çok düşük güç tüketimine, küçük ama çok akıllıca bir talimat setine (PIC'den farklı olarak), açık kaynak kodlu araçlara ve DIP formatına değer çizgisine sahip. Onlar sadece son zamanlarda programlama ve hata ayıklama için USB arayüzü ve oynamak için iki DIP çip içeren 4.30 $ (evet, dört dolar otuz sent, ücretsiz kargo) başlangıç ​​kiti yayınladılar. Şuna bak .


Bu oldukça havalı! Bu siteyi yer imlerine ekledim. :)

4

Bir FPGA alabilir ve her şeyi alay edebilirsiniz - işlemciye gerek yok.

Daha önce basit bir MIPS bilgisayarı denemek ve yapmak için cazip oldum. Temel bir CPU tasarımına sahibim, ancak en az kablo sarma veya başka bir prototip çıkarma zor.


Bu ilginç bir fikir. Bir FPGA'ya programlanabilen referans işlemci tasarımları için kaynaklar var mı?

Çoğu FPGA cihazı, ücretsiz veya lisanslı bir CPU tasarımına sahiptir. Bazen beraberindeki bir RTOS ile bile.

Bir PDP-1 mümkün olabilirdi. Modüler bileşenlerden üretilmiştir. Her bir bileşenin mantık şemaları, 1969 Sayılı Dijital Mantık El Kitabında yayınlandı (benimki posta bugün geldi!).
maden ocağı droog

2

Atmel'in ATmega mikrodenetleyicilerini inceleyin, RAM'den kod yürütme yeteneği dışında istediğiniz her şeye sahipler ve ayarlamaları çok kolaydır.

ARM7TDMI gibi bazı küçük 32 bit ARM işlemci alternatif olabilir, ancak bunlar DIP paketlerinde gelmiyor. Aynısı Renesas R8C / M16C mikrodenetleyicileri için de geçerlidir.



Tüm AVR'ler salt okunur bir talimat alanı kullanır, değil mi? RAM dışında çalışabilmem gerekiyor, böylece programlarım program yazabiliyor.

Evet, haklı gibi görünüyorsun. 25 yıl önce Forth ile oynadığımda, AVR ile mümkün olacak bir iş parçacıklı kod uygulaması kullandım.
starblue

Bir 28-pin DIP paketinde bir ARM Cortex M0 görüşlü olmuştur: nxp.com/products/microcontrollers/cortex_m0/lpc1100_x_l/...
starblue

2

Harika bir proje gibi geliyor! Biri 70'lerde 8008 yongası ve biraz da RAM ve ROM ile yaptım. G / Ç bağlantı noktasına bağlı hoparlörlerle küçük bir melodi çalması için programladım. Bellek devresinin bir kısmı, bir kapasitör tarafından kontrol edilen bir zamanlayıcı yongasını içeriyordu. Temas halinde itildiklerinde her şeyin 1000'e kadar yavaşlamasını sağlayan fazladan bir kapasitöre lehimledim. Daha sonra sınıfta bir gösterici olarak kullandım. İlk önce yavaş koşardım ve öğrenciler konuşmacıların tıklandığını duyabilirdi, tıklar. Sonra kapasitörü açtım ve onlar melodiyi duydular. Bir başkasına başlamadan önce bilgisayarların bir talimatı nasıl bitirdiğini onlara etkilemeye çalışıyordum.


1

OLIMEX'e göz atın , çoğu modern mikro kontrolör için geliştirme kartlarına sahipler ve gerçekten DIP istiyorsanız, DIP benzeri formatta kartlarda ARM işlemcilere sahipler ( 1). ). Ayrıca JTAG'lar satarlar ve çoğu pano için bazı demo kodları vardır (gcc), bu yüzden kalkması ve çalıştırılması çok kolaydır. Kurullarının çoğuna Sparkfun'dan ulaşılabilir . Ben şahsen Phillips LPC ARM tabanlı mikroskobu seviyorum ama Olimex'ten gelen her şey iyi.

AVR32 aynı zamanda sizin için çalışacaktır (tehlike dışı). Son zamanlarda onları kullanmaya başladım ve ne kadar yetenekli ve kullanımı kolay olduğuna çok şaşırdım.

Sıfırdan inşa etmek bugün 8 bitlik bir daldırma mikro kullanmadan ya da yüzeye monte tahtaları lehimlemek ve karmaşık dijital bilgisayar kartlarını hata ayıklamak için bir kuruma sahip olmadığınız sürece bugün bir seçenek değildir.


1

Hedeflerinize bağlı olarak, mevcut bir CPU kullanmak yerine kendi CPU'nuzu istediğiniz özelliklerle oluşturmayı düşünebilirsiniz. Check out Homebuilt CPU webring. Rölelerden bir işlemci yapan çılgınca bir meraklı bile var !


1
VAOV! Bu ürkütücü! Ve bununla gurur duyuyor görünüyor ....
asp316

Güzel bir proje. Alan Turing, röle tabanlı donanımlarla çalıştı. Bu herifin röle eşyaları özenle monte edilmiş ve güzel dolaplara yerleştirilmiş görünüyor. Aferin!
Kaz

1

Paralaks Pervanesi

Şu anda bir DIP paketinde üretilen tek 32 bit işlemci Paralaks Pervanesidir . (Aynı çip, hepsi 32 genel amaçlı G / Ç iğnesi olan daha küçük 44-Pin QFP ve 44-Pin QFN paketlerinde de mevcuttur). Windows IDE'ye ek olarak, Linux altında çalışan birkaç geliştirme aracı da var .

"Dahili flash ROM" dışındaki tüm gereksinimlerinizi karşıladığı görülüyor - bunun yerine, Pervane harici 8 pimli bir EEPROM'dan açılıyor. (Bu, bağlanması gereken bir şey daha, ancak 8 pimli bir çip bağlamak, çoğu harici program depolama yongasına kıyasla çok daha kolay).


0

+1 ATmega mikroskobu için. Onları USB üzerinden programlama için bir önyükleyici ile birlikte alırsınız - bu özel bir programlayıcıya ihtiyaç duymadan ilk tahtanın çalışmasını kolaylaştırır. Yine de bu rotaya gidersen ICE olayını kaçıracaksın.


0

Amtel'e ikinci oy. Prototipler ve deneyler için özellikle teensy ++ ' ı seviyorum . USB güç sağlar, bir programlama arayüzü sağlar ve hata ayıklama çıktısını görüntüler. GNU dev araçları. Yaklaşık 30 $ için eğlenceli.


0

Atmel oldukça popüler olacak, arduinos (sparkfun'daki profesyonel modelleri seviyorum) kendileri popüler. AVR kullanımıyla ilgili çoğu soruya aşina olan ve çoğu soruyu cevaplayabilen MANY hobilerini bulacaksınız.

Msp430 komutunun avr'a, kol komutunun da diğerlerinin üzerinde olmasını tercih ederim. Olimex, denemeler için mükemmel bir dizi "başlık" kartı hazırlar. Armatür mikroda bazı iyi olanlar vardır, ancak pinlerin çoğu çip tarafından tüketilir, çipin çevre birimlerini gösterir, çipin ve özelliklerin öğrenilmesi için iyidir ancak sonunda G / Ç'de elde etmek için onları kesmek istersiniz. Her neyse, olimex iyidir, http://www.sparkfun.com adresini deneyin ve geliştirme panolarına göz atın, bazıları olimex'ten, bazıları sparkfun'dan, geniş bir seçimden ve birçoğu 40 $ veya 50 $ 'ın altında olsun; sevmek. Bir aritite sipariş etmek üzereyim, eğer özellik listesine girerse, muhtemelen amaçlarım için en iyi kontrol panosu.


0

Ben de aynı rüyayı gördüm, ama aslında hiç bu işe yaramadı.

Yukarıdaki önerilerin çoğu dev kurullar içindir. "Sıfırdan" dediğinden beri, tek bir DIP işlemci yongasıyla başlamak ve bir geliştirme kartı satın almak istemediğinizi farz ediyorum. Bu durumda son derece süper olacağım, ilanınızda listelenen olağan şüpheliler gibi bir şeye bağlı kalmanızı tavsiye ederim. Popülerler çünkü böyle bir görev için iyi çalışıyorlar. Çoklayıcı ve azaltıcı içeren daha fazla G / Ç hattına olan ihtiyacın üstesinden gelebilirsiniz.

İstediğiniz her şeyi yapan ve istediğiniz tam IO satır sayısına sahip olan bu "mükemmel" CPU’yu bulduğunuzu varsayalım. Popüler işlemciler için bulacağınız desteğin smidgenine yakın bir yerde bulamayacaksınız. Bu işlemcileri kullanarak komple bir sistemin nasıl tasarlanacağını gösteren sadece eski penniler için E-Bay, Amazon vb. Eski kullanılmış kitapları kolayca bulabilmelisiniz. Aynı şeyi yapan web sitelerinden, derleyicilerden ve diğer insanlardan bahsetmiyorum bile.

Başka bir şeyle gidersen, derinden pişman olacağını düşünüyorum. Desteklememe konusunda, bu işlemcilerle ilgili teknik sorunlarınızın üstesinden geleceğinizden daha fazla zaman harcayacaksınız. Ayrıca, insanlar zaten tüm bilgisayarları bu çiplerle tasarladığından, bunun yapılabileceğini biliyorsunuz. Başka bir şeyle, her zaman bir tuğla duvara çarpma şansınız vardır.


Ek olarak, C64 gibi halihazırda ölüme saldırıya uğramış mevcut bir mimariyi kopyalama seçeneğini de düşünebilirsiniz.

0

Atmel AVR'yi seçin. İşte etrafındaki bazı oyun platformları:

http://belogic.com/uzebox/index.asp
http://avga.prometheus4.com/
http://www.innovativedevice.com/console/GameStation.asp
http://www.lucidscience.com/pro-lazarus-64%20prototype-1.aspx
http://www.lucidscience.com/pro-vga%20video%20generator-1.aspx

0

Msp430 komutunun avr'a, kol komutunun da diğerlerinin üzerinde olmasını tercih ederim.

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.