Bu proje, iki eksenli bir lazer gösterisi için dsPIC30F2010 tabanlı bir denetleyicidir. Denetleyici, girişi MIDI verileri olarak alır ve açık döngü tarama galvanometrelerine bağlı X ve Y ışın saptırma aynalarını kontrol eder. dsPIC30F kontrolörüne ek olarak, gelen MIDI verilerini 31250 baud’da izlemek ve bu verileri sağlanan “sanal RS232 bağlantı noktasını kullanarak USB üzerinden bir PC’ye aktarmak için PIC24FJ64GA002 ve iki UARTS’ına sahip bir Microchip 28-pin geliştirme kartı kullanıyorum.
DONANIM AÇIKLAMASI:
MIDI (Musical Instrument Digital Interface) standardı 1980’lerden beri var ve kurnaz elektronik ve müzik enstrümanı tasarımcıları ve meraklıları tarafından her türlü cihazı kontrol etmek için kullanılıyor. Web’de bir arama muhtemelen şimdiye kadar yapılmış her kişisel bilgisayar için devreleri bulacaktır. İlkini bir VIC-20 için aylar önce yaptım ve hala bu arayüzü kullanmak için yeni yollar buluyorum. MIDI dosyalarını yazmak için hem ticari hem de paylaşılan yazılım/ücretsiz yazılım bol miktarda bulunur ve hemen hemen her medya oynatıcı bir MIDI dosyasını oynatabilir. Bulduğum en büyük baş ağrısı standart olmayan 31250 baud hızı. Bu sayıyı Windows HyperTerminal açılır menüsünde bulamazsınız ve iletişim bağlantı noktanızı bu frekansa ayarlamak için kendi sürücünüzü yazmanız gerekir. onunla ilişkili problemler dizisi.
Bu nedenle, yeni Microchip 16-bit 28-pin geliştirme kartımı bir MIDI monitörü/hata ayıklayıcı olarak kullanmayı seçtim çünkü kartla birlikte gelen PIC mikroda iki dahili UART vardı. Bir UART’ı MIDI verilerini girmek için, diğerini bir PC ile iletişim kurmak için kullanıyorum. Ana projenin bir parçası olmasa da bunun kodunu ekledim.
MIDI arabirimi, veri aktarımı için bir akım döngüsü kullanır. Bunun için kullandığım IC (çip çekmecesinde bir demet olduğu için) bir Hewlett Packard HCPL2200’dür (Toshiba TLP2200 eşdeğeri). Bu IC’den gelen çıktı, UART’ın gerektirdiğinin tersidir, bu nedenle mikroya girişten önce bir invertör gerekir. Baud hızını ve çıkış voltajı gereksinimlerini karşılayabildikleri sürece bunun için kullanılabilecek birçok başka optokuplör vardır. Kodun erken gelişimi için MIDI klavyesi yerine bazı komutları doğrudan PC’den gönderebilmek için Rx hattına bir MAX232 yongası ve bir jumper ekledim. Gerekirse daha sonra kodu yüklemek için bu arayüzü kullanabilirim.
This project is a dsPIC30F2010 based controller for a two axis laser show. The controller receives input as MIDI data, and controls X and Y beam deflection mirrors attached to open loop scanning galvanometers. PWM square waves don’t make very good galvo drive waveforms.
The dsPIC30F series, however, is fast enough to both decode the required MIDI instructions and output the waveform data via the SPI bus to a MCP4822 DAC Author: Scott Coppersmith
dsPIC30f2010 MIDI Laser Show Galvanometer Controller Circuit Cellar MicroChip 16-bit Embedded Control Design Contest 2007 Project Registration Number MT2163 In this example program characters pressed on the keyboard are sent to the device via usb. The device replicates the character back to the PC enclosed in quotes. Also this program blinks all four LEDs at 250ms by using timer 1
Şifre-Pass: 320volt.com
Yayım tarihi: 2010/05/24 Etiketler: dspic, dspic30f2010, galvano meters, laser show, microchip pic projeleri, midi