Sorun giderme

Bu derste PIC kit 2 programlayıcısını kullanırken ortaya çıkan sorunların nasıl çözülebileceği anlatılmıştır.

Giriş

Bu derste PIC kit 2 programlayıcısı kullanırken ortaya çıkabilecek sorunların nasıl çözümlenebileceği anlatılmıştır.

"No PICkit 2 found" hatası

Hatanın tespiti için aşağıdaki çıktılara bakınız.

pk2cmd -P çıktısı

No PICkit 2 found veriyor.

sh -c "pk2cmd /?V" komutu

OS Firmware Version: PICkit 2 not found hatası veriyor.

Bu durumda PIC kit 2'nin kendi işletim sistemini yeniden yüklemek gerekiyor.

1 - PIC kit 2'ye giren ufak USB kablosunu çıkarıp en az 30 saniye bekleyiniz.

2 - PIC kit 2 üzerinde düğmeye basınız ve basılı halde tutunuz.

3 - Düğme hala basılı iken ufak yuvalı USB kablosunu PIC kit2'ye takınız. USB kablosunun geniş yuvalı kısmı bilgisayara takılı durumdadır.

4 - PIC kit 2 üzerinde bulunan kırmızı meşgul Busy ışığının yanıp sönmeye başladığını görebilirsiniz. Bu PIC kit 2'nin üzerindeki işletim sisteminin silindiğini gösteriyor.

5 - Yeni işletim sistemini buradan indirebilirsiniz.

6 - İşletim sistemini yüklemek için şu komutu vermeniz gerekiyor.

pk2cmd -D PK2V023200.hex

7 - Eğer işletim sistemi yüklendiyse aşağıdaki gibi bir çıktı görebilirsiniz.

Downloading OS...
Verifying new OS...
Resetting PICkit 2...
OS Update Successful.
Operation Succeeded

Yongayı programlarken bellek hataları

Eğer yongayı programlarken aşağıdakine benzer bellek hataları alıyorsanız devrede kabloların doğru bağlanıp bağlanmadığını, yerinden çıkan kablo olup olmadığını kontrol ediniz.

Program Memory Errors

Address   Good     Bad
000000    002BFE   000000

make: *** [Makefile:9: default] Error 34

Bağlantılarda eksiklik var

avrdude: MicroChip's PICkit2 Programmer firmware version 2.32.0
program_enable(): sending command. Resp = ff ff ff ff 
avrdude: initialization failed, rc=-2
         Double check connections and try again, or use -F to override
         this check.

Arduino programlarken eğer bu hatayı alıyorsanız büyük ihtimal PIC Kit2 ya da kablolarla da bir bağlantısızlık olabilir. Tüm kabloları çıkartıp tekrardan dikkatlice devreyi kurmanızı tavsiye ederim.

PIC Kit2 meşgul ışığı yanıp sürüyor

PIC Kit2 üzerindeki meşgul ışığı (kırmızı olan) bir saniye aralıklarla yanıp sönüyorsa bu sağlıklı çalışan bir işletim sistemi olmadığını gösteriyor.

Yeni işletim sistemini buradan indirebilirsiniz.

İşletim sistemini yüklemek için şu komutu vermeniz gerekiyor.

$ pk2cmd -D PK2V023200.hex

Eğer işletim sistemi yüklendiyse aşağıdaki gibi bir çıktı görebilirsiniz.

Downloading OS...
Verifying new OS...
Resetting PICkit 2...
OS Update Successful.
Operation Succeeded

USB erişim hatası

Linux altında yetkili kullanıcı olmadan normal kullanıcı olarak PIC Kit2'yi kullanmak istediğinizde aşağıdaki gibi bir hata mesajı alabilirsiniz.

Could not set configuration. Error code -1, could not set config 1: Operation not permitted.
You may need to run avrdude as root or set up correct usb port permissions.Could not claim interface.
Error code -1, could not claim interface 0: Operation not permitted
You may need to run avrdude as root or set up correct usb port permissions.

Bu hatanın nedeni sadece yetkili kullanıcıya aygıta yazma hakkının verilmiş olmasından kaynaklanıyor.

lsusb komutu ile PIC Kit2'nin veriyolu ve aygıt numarasını öğrenebiliriz.

$ lsusb
Bus 005 Device 003: ID 04d8:0033 Microchip Technology, Inc. PICkit2

Yukarıya baktığımızda veriyolu numarasının 005 ve aygıt numarasının 003 olduğunu görebiliyoruz. Denemek için kontrol edelim.

$ ls -al /dev/bus/usb/005/003 
crw-rw-r-- 1 root root 189, 514 Eki  1 20:56 /dev/bus/usb/005/003

Gerçekten de şimdilik sadece yetkili kullanıcının yazma hakkı olduğunu görebiliyoruz. Geçici çözüm olarak aygıt izinlerini elle şu komutla değiştirebiliriz. Ancak bu seferde aygıtı her takıp çıkarttığımızda bu komutu tekrarlamamız gerekiyor.

$ sudo chmod 666 /dev/bus/usb/005/003

Kalıcı çözüm

Kalıcı çözüm için aygıt yöneticisi kuralı eklememiz gerekiyor. Bunun için aşağıdaki komutu vererek PIC Kit2 için bir aygıt yöneticisi kuralı oluşturalım. Burada emacs kurulu değilse nano gibi başka bir metin düzenleyici de kullanabilirsiniz.

$ sudo emacs /etc/udev/rules.d/99-PICkit2.rules

Oluşturduğumuz kütüğün içine de şunları girip kaydedelim.

# PICKit2 için grup oluştur
SUBSYSTEM=="usb", ATTRS{idVendor}=="04d8", ATTRS{idProduct}=="0033", GROUP="dialout"

Ubuntu'da dialout grubu modem, avuçiçi aygıtlar gibi seri ve USB aygıtları kullanma izni olan ekibi belirtiyor.

Son olarak da kendimizi bu gruba ekliyoruz.

$ sudo gpasswd -a erdem dialout

Değişikliklerin etkili olması için bilgisayarını kapatıp açabilirsiniz.

Yorumlar

yorum yaz

Yorum yaz

Henüz yorum yok.