İçindekiler:

SPIKE Prime'da MicroPython: 12 Adım
SPIKE Prime'da MicroPython: 12 Adım

Video: SPIKE Prime'da MicroPython: 12 Adım

Video: SPIKE Prime'da MicroPython: 12 Adım
Video: Running micropython on the Lego Spike Prime hub 2024, Kasım
Anonim
SPIKE Prime'da MicroPython
SPIKE Prime'da MicroPython

SPIKE Prime'ı, küçük mikroişlemciler için bir python alt kümesi olan MicroPython'u kullanarak kodlayabilirsiniz.

SPIKE Prime hub'ını kodlamak için herhangi bir terminal öykünücüsü kullanabilirsiniz.

Gereçler

SPIKE Prime hub

USB Bağlantı Noktalı / Bluetooth'lu Bilgisayar

Hub'ı bilgisayara bağlamak için USB kablosu

Adım 1: Bir Terminal Emülatörü Alın

Bir Terminal Emülatörü Alın
Bir Terminal Emülatörü Alın
Bir Terminal Emülatörü Alın
Bir Terminal Emülatörü Alın

Aralarından seçim yapabileceğiniz birçok seçenek var.

CoolTerm, Pi dahil tüm platformlarda çalışır

Macun pencerelerde çalışır

unix işletim sisteminde Terminal'de ekran komutu

2. Adım: SPIKE Prime'ı USB Bağlantı Noktasına bağlayın

SPIKE Prime'ı USB Bağlantı Noktasına bağlayın
SPIKE Prime'ı USB Bağlantı Noktasına bağlayın
SPIKE Prime'ı USB Bağlantı Noktasına Bağlayın
SPIKE Prime'ı USB Bağlantı Noktasına Bağlayın

SPIKE Prime'ı bilgisayara bağlamak için bir microUSB kablosu kullanın.

3. Adım: Bağlantı Noktasını Bulun

Limanı Bul
Limanı Bul
Limanı Bul
Limanı Bul

SPIKE Prime hub'ının hangi seri bağlantı noktasına bağlı olduğunu bilmemiz gerekiyor.

Mac'te şunu yazın

ls /dev/tty.usbmodem*

Bir bilgisayarda, hangi seri bağlantı noktalarını bağladığınızı görmek için aygıt yöneticinize seri altında bakın.

Pi'de ttyAMC0 gibi bir şey olacak - /dev/klasörünüzü kontrol edin

4. Adım: Bağlanın

Bağlanmak
Bağlanmak
Bağlanmak
Bağlanmak

115200 baud'da sağ bağlantı noktasına (önceki adımdan) kadar bağlanın

Terminal'de şunu yazın

kullanıcıbilgisayar$ ekran /dev/ 115200

Diğer IDE'de, Aç/bağlan'a basın (bağlantı noktalarını ve baud hızlarını ayarladıktan sonra)

Not: eşlik yok, 8 veri biti ve 1 durdurma biti

Adım 5: REPL'yi Başlatma

REPL'yi başlatma
REPL'yi başlatma
REPL'yi başlatma
REPL'yi başlatma
REPL'yi başlatma
REPL'yi başlatma

Terminal/PUTTY'den SPIKE Prime'a bağlandığınızda, bir sayı ve karakter akışı göreceksiniz. Bunlar, SPIKE Prime hub'ın dahili sensörlerinden gelen verilerdir. Başlamak için kontrol + c tuşlarına basın

Seri bağlantı noktasını kesecek ve bunun gibi bir şey görmelisiniz.

2019-09-25 tarihinde MicroPython v1.9.4-1146-gca9944357; Daha fazla bilgi için STM32F413xx Tip "help()" ile LEGO Technic Büyük Hub.

Artık kodlamaya hazırsınız.

Adım 6: İlk Kodunuz

İlk Kodunuz
İlk Kodunuz

ithalat merkezi

hub.display.show('Tufts')

SPIKE Prime ile konuşmanıza izin veren bir python kitaplığını çeken "içe aktar" komutuna dikkat edin. Hub'daki LED matrisinde yazılı Tufts görmelisiniz.

7. Adım: Adınızı Gösterin

şimdi yazmayı dene

hub.display.show(' ')

Yukarıdaki hub'ı zaten içe aktardığınız için zaten bellekte olduğunu unutmayın. Değilse, aşağıdaki gibi bir hata alırsınız:

Geri izleme (en son arama son): Dosya "", satır 1, inNameError: 'hub' adı tanımlı değil

8. Adım: REPL'yi Kullanma

Python'un en güçlü özelliklerinden biri, REPL'de kod yazmadan önce her şeyi test edebilmenizdir (değerlendirme yazdırma döngüsünü okuyun).

Herhangi bir python komutunu çalıştıracaktır - aşağıya 2 + 2 yazmayı deneyin ve ne yazdığına bakın:

2+2

9. Adım: SPIKE Prime'da MicroPython'u Keşfetme

Şimdi keşfetme zamanı.

hub'ın birçok işlevi vardır - sadece "hub" yazarak öğrenebilirsiniz. (hub'dan sonraki süreyi unutmayın) ve ardından REPL'de SEKME tuşuna basın. Bu size komutu tamamlayabileceğiniz tüm farklı yolları gösterecektir.

Meydan okuma: Hızlanmayı okuyabiliyor musunuz bir bakın.

Adım 10: Sensör Değerlerini Okuma…1

Hızlanma verileri bir dizi değer olarak geri gelir. yani sadece X değerini istiyorsanız, deneyebilirsiniz

hub.motion.accelerometer()[0]

veya bunu kodlamanın daha güzel bir yolu, bunun gibi değişkenleri kullanmak olacaktır:

ithalat merkezi

accel = hub.motion.accelerometer() xAccel = accel[0] hub.display.show(str(xAccel))

Adım 11: Sensör Değerlerini Okuma…2

Sensör Değerlerini Okuma…2
Sensör Değerlerini Okuma…2

Ayrıca bir döngü kullanarak üç ivmeyi de görüntüleyebilirsiniz.

Duraklatmak ve ekrandaki sayıyı okumanız için size zaman tanımak için kitaplık utime'ını da içe aktaracağız.

Bu kodu deneyin:

Accel'deki Acc için hub'ı içe aktar, utimeaccel = hub.motion.accelerometer(): hub.display.show(str(Acc)) utime.sleep(0.8)

Bu noktada birkaç şey önem kazanıyor:

boşluklar - Python tamamen sağa girinti yapmakla ilgilidir - diğer dillerdeki parantezlere benzer şekilde, girinti size for döngüsünün içinde neyin olup neyin olmadığını söyler.

REPL kullanırken, girinti yaptığınızda, satırın artık yürütmediğini, çalıştırmadan önce for döngüsünün satırlarını bitirmenizi beklediğini fark edeceksiniz (ve >>> yerine … ile değiştirilmiştir). For döngüsünü bitirmek için, sadece üç kez return tuşuna basın ve döngü yürütülecektir.

Adım 12: Meydan Okuma

Ardından, aşağıdaki kodun ne yaptığını çözüp çözemeyeceğinize bakın - ve haklı olup olmadığınızı görmek için çalıştırmayı deneyin.

içe aktarma merkezi, utime

while True: accel'de Acc için accel = hub.motion.accelerometer(): hub.display.show(str(Acc)) utime.sleep(0.8) if hub.port. B.device.get(): break

İpucu - B bağlantı noktasında bir sensöre ihtiyacınız var.

Önerilen: