[Çözüldü] Brenner8 için usburn 0.4 yazılımını 64 bit olarak derleme problemi?

Başlatan gnukarabatak, 11 Eylül 2014 - 18:08:31

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

gnukarabatak

Yazılımın indirme linki bu :http://sprut.de/electronic/soft/usburn/linux/usburn_0_4.tar.

Bu çıktıdanda 32bit olduğunu anlamaktayım.

gnukarabatak@kubuntu-evim:~/brenner8/usburn_04$ file usburn
usburn: ELF 32-bit LSB  executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.8, not stripped


Bu inen dosyanın içinde 32 bit derlenmiş sürümü bulunmakta. kutuntu 64 bit üzerinde de hem doğrudan konsolda hemde usburnGUI grafik arabirimi programında çalışmakta ,bunda bir sorun yok. Sorun şu ki bağladığım usb programlayıcıya taktığım 16F877A mikrodenetleyiciyi tanımlamaya kalktığında 16F84 olarak tanımlıyor. Buda hatalı yazılım yapılmasına sebep olmakta. Kısacası yaptığım araştırmada bu sıkıntının anladığım kadarıyla usburn kaynak kodlarının 64 bit olarak derlenmesiyle problemin çözüleceğinden bahsedilmiş. Ve ben bu kodları 64 bit olarak derlemek istiyorum. Fakat bu güne kadar IDE ortamlarında windows üzerinde yazılım geliştirdiğim için linux tarafı şu an bana sıkıntı vemekte ve bu kodu derleyememekteyim.

Bu klasörün içinde makefile bulunmakta. Bunu çalıştırdığımda g++ olmadığı mesajını verdi ve onu kurdum. Ancak sonrasında şu yok, bu yok bir sürü çıktı verdi.

gnukarabatak@kubuntu-evim:~/brenner8/usburn_04$ ./makefile
./makefile: satır 5: all:: komut yok
./makefile: satır 6: OSFLAG: komut yok
./makefile: satır 6: BINNAME: komut yok
g++: error: missing filename after '-o'
./makefile: satır 9: clean:: komut yok
./makefile: satır 10: BINNAME: komut yok


makefile içeriği ise şu şekilde :

# Quick and dirty makefile

BINNAME=usburn

all:
g++ usburn.c programmer_usb.c database.c hexfile.c calibration.c firmware.c test.c -m32 -I/usr/local/include -L. -lnsl -lm -lc -L/usr/local/lib -lusb $(OSFLAG) -o $(BINNAME)
# g++ usburn.c programmer_usb.c database.c hexfile.c -lusb

clean:
rm -f $(BINNAME)
rm -f *.gch


Aktif dizinde ise bulunan dosyalar :

gnukarabatak@kubuntu-evim:~/brenner8/usburn_04$ ls
b8_firmware  bootloader_0_2550  cfgdef03.dat  fildef03.dat  makefile          readme_db.txt  test.c        usburn.c
b8.h         calibration.c      database.c    firmware.c    picdef03.dat      readme.txt     texdef03.dat
b9_firmware  cekdef03.dat       doc           hexfile.c     programmer_usb.c  setdef03.dat   usburn


libusb yerleşimi :

gnukarabatak@kubuntu-evim:~/brenner8/usburn_04$ locate libusb
/lib/firmware/carl9170fw/extra/libusb-zeropacket.diff
/lib/i386-linux-gnu/libusb-0.1.so.4
/lib/i386-linux-gnu/libusb-0.1.so.4.4.4
/lib/i386-linux-gnu/libusb-1.0.so.0
/lib/i386-linux-gnu/libusb-1.0.so.0.1.0
/lib/x86_64-linux-gnu/libusb-0.1.so.4
/lib/x86_64-linux-gnu/libusb-0.1.so.4.4.4
/lib/x86_64-linux-gnu/libusb-1.0.so.0
/lib/x86_64-linux-gnu/libusb-1.0.so.0.1.0
/usr/lib/libusbmuxd.so.1.0.8
/usr/lib/libusbmuxd.so.2
/usr/lib/i386-linux-gnu/wine/libusbd.sys.def
/usr/lib/x86_64-linux-gnu/wine/libusbd.sys.def
/usr/share/doc/libusb-0.1-4
/usr/share/doc/libusb-1.0-0
/usr/share/doc/libusbmuxd2
/usr/share/doc/libusb-0.1-4/README.Debian
/usr/share/doc/libusb-0.1-4/changelog.Debian.gz
/usr/share/doc/libusb-0.1-4/copyright
/usr/share/doc/libusb-1.0-0/README
/usr/share/doc/libusb-1.0-0/changelog.Debian.gz
/usr/share/doc/libusb-1.0-0/copyright
/usr/share/doc/libusbmuxd2/changelog.Debian.gz
/usr/share/doc/libusbmuxd2/copyright
/var/cache/apt/archives/libusb-0.1-4_2%3a0.1.12-23.3ubuntu1_i386.deb
/var/lib/dpkg/info/libusb-0.1-4:amd64.list
/var/lib/dpkg/info/libusb-0.1-4:amd64.md5sums
/var/lib/dpkg/info/libusb-0.1-4:amd64.postinst
/var/lib/dpkg/info/libusb-0.1-4:amd64.postrm
/var/lib/dpkg/info/libusb-0.1-4:amd64.shlibs
/var/lib/dpkg/info/libusb-0.1-4:amd64.symbols
/var/lib/dpkg/info/libusb-0.1-4:i386.list
/var/lib/dpkg/info/libusb-0.1-4:i386.md5sums
/var/lib/dpkg/info/libusb-0.1-4:i386.postinst
/var/lib/dpkg/info/libusb-0.1-4:i386.postrm
/var/lib/dpkg/info/libusb-0.1-4:i386.shlibs
/var/lib/dpkg/info/libusb-0.1-4:i386.symbols
/var/lib/dpkg/info/libusb-1.0-0:amd64.list
/var/lib/dpkg/info/libusb-1.0-0:amd64.md5sums
/var/lib/dpkg/info/libusb-1.0-0:amd64.postinst
/var/lib/dpkg/info/libusb-1.0-0:amd64.postrm
/var/lib/dpkg/info/libusb-1.0-0:amd64.shlibs
/var/lib/dpkg/info/libusb-1.0-0:amd64.symbols
/var/lib/dpkg/info/libusb-1.0-0:i386.list
/var/lib/dpkg/info/libusb-1.0-0:i386.md5sums
/var/lib/dpkg/info/libusb-1.0-0:i386.postinst
/var/lib/dpkg/info/libusb-1.0-0:i386.postrm
/var/lib/dpkg/info/libusb-1.0-0:i386.shlibs
/var/lib/dpkg/info/libusb-1.0-0:i386.symbols
/var/lib/dpkg/info/libusbmuxd2.list
/var/lib/dpkg/info/libusbmuxd2.md5sums
/var/lib/dpkg/info/libusbmuxd2.postinst
/var/lib/dpkg/info/libusbmuxd2.postrm
/var/lib/dpkg/info/libusbmuxd2.shlibs
/var/lib/dpkg/info/libusbmuxd2.symbols


makefile içeriğinde yaptığım araştırmaya göre -m32 parametresinin kaldırılarak derlemenin yapılması, başka biryerde ise -m64 olarak değiştirilerek yapılmasını söylemekte. Ben bunlardan bir sonuç alamadım. Kısacası bu tarafta işler iyice karıştı. Benden şimdilik bu kadar.
Linux kullanmak bir farklılık, linux'te kod yazmak ise ayrıcalıktır.

7hr33l3t73r


$ ./makefile

Yukaridaki sekilde calistirirsaniz hata almaniz gayet normal.
Sorunu kisaca soyle aciklayalim.
Makefile dosyasinin amaci, make komutunun yapilandirma dosyasidir. Yani siz klasor icine programi acarak ve o dizin icinde uc birimden make komutunu calistirirsaniz.Make 'de o yapilandirma dosyasina gore derleme islemini yapmis olur.
Umarim anlasilabilir sekilde anlatmisimdir.
dc -e '[q]sa[ln0=aln256%Pln256/snlbx]sb207356256404211981204295703670388snlbxq'
https://www.getgnu.org/gnulinux/gnulinux-ipuclari/nasil-akillica-soru-sorulur.html

gnukarabatak

make konsolda uyguladığımda :
gnukarabatak@kubuntu-evim:~/brenner8/usburn_04$ make
makefile:6: *** kayıp ayraç. Durdu.

böyle bir mesaj aldım. Linux platformunda lazarus gibi ide ortamlarıyla kolay yazmaya çalıştığımızdan (birde windows alışkanlıkları) make ve makefile gibi yapılar biraz farklı gelmekte. Şu an bu mesajı vermemesi lazım anladığım kadarıyla. Kayıp olan ayraç ne? Neyi ayırmak istemiş? Anlayanlardan yardım bekliyorum :)
Linux kullanmak bir farklılık, linux'te kod yazmak ise ayrıcalıktır.

7hr33l3t73r

Makefile dosyasin da 6 satirda g++ basina  tab koymaniz yeterli.

g++ usburn.c programmer_usb.c database.c hexfile.c calibration.c firmware.c test.c -m32 -I/usr/local/include -L. -lnsl -lm -lc -L/usr/local/lib -lusb $(OSFLAG) -o $(BINNAME)

yukarida ki satir
asagisaki sekilde olacak

           g++ usburn.c programmer_usb.c database.c hexfile.c calibration.c firmware.c test.c -m32 -I/usr/local/include -L. -lnsl -lm -lc -L/usr/local/lib -lusb $(OSFLAG) -o $(BINNAME)

dc -e '[q]sa[ln0=aln256%Pln256/snlbx]sb207356256404211981204295703670388snlbxq'
https://www.getgnu.org/gnulinux/gnulinux-ipuclari/nasil-akillica-soru-sorulur.html

gnukarabatak

Tab'ı koyduktan sonra şöyle bir sonuç döndü :

gnukarabatak@kubuntu-evim:~/brenner8/usburn_0_4$ make
g++ usburn.c programmer_usb.c database.c hexfile.c calibration.c firmware.c test.c -m32 -I/usr/local/include -L. -lnsl -lm -lc -L/usr/local/lib -lusb  -o usburn
In file included from /usr/include/stdio.h:27:0,
                 from usburn.c:33:
/usr/include/features.h:374:25: fatal error: sys/cdefs.h: Böyle bir dosya ya da dizin yok
#  include <sys/cdefs.h>
                         ^
compilation terminated.
In file included from /usr/include/stdio.h:27:0,
                 from programmer_usb.c:34:
/usr/include/features.h:374:25: fatal error: sys/cdefs.h: Böyle bir dosya ya da dizin yok
#  include <sys/cdefs.h>
                         ^
compilation terminated.
In file included from /usr/include/stdio.h:27:0,
                 from database.c:43:
/usr/include/features.h:374:25: fatal error: sys/cdefs.h: Böyle bir dosya ya da dizin yok
#  include <sys/cdefs.h>
                         ^
compilation terminated.
In file included from /usr/include/stdio.h:27:0,
                 from hexfile.c:39:
/usr/include/features.h:374:25: fatal error: sys/cdefs.h: Böyle bir dosya ya da dizin yok
#  include <sys/cdefs.h>
                         ^
compilation terminated.
In file included from /usr/include/stdio.h:27:0,
                 from calibration.c:30:
/usr/include/features.h:374:25: fatal error: sys/cdefs.h: Böyle bir dosya ya da dizin yok
#  include <sys/cdefs.h>
                         ^
compilation terminated.
In file included from /usr/include/stdio.h:27:0,
                 from firmware.c:39:
/usr/include/features.h:374:25: fatal error: sys/cdefs.h: Böyle bir dosya ya da dizin yok
#  include <sys/cdefs.h>
                         ^
compilation terminated.
In file included from /usr/include/stdio.h:27:0,
                 from test.c:36:
/usr/include/features.h:374:25: fatal error: sys/cdefs.h: Böyle bir dosya ya da dizin yok
#  include <sys/cdefs.h>
                         ^
compilation terminated.
make: *** [all] Hata 1
Linux kullanmak bir farklılık, linux'te kod yazmak ise ayrıcalıktır.

7hr33l3t73r

dc -e '[q]sa[ln0=aln256%Pln256/snlbx]sb207356256404211981204295703670388snlbxq'
https://www.getgnu.org/gnulinux/gnulinux-ipuclari/nasil-akillica-soru-sorulur.html

gnukarabatak


gnukarabatak@kubuntu-evim:~$ sudo  apt-get install libc6-dev
Paket listeleri okunuyor... Bitti
Bağımlılık ağacı oluşturuluyor       
Durum bilgisi okunuyor... Bitti     
libc6-dev zaten en yeni sürümde.
libc6-dev elle kurulmuş olarak ayarlı.

tekrar make yaptığımda :

gnukarabatak@kubuntu-evim:~/brenner8/usburn_0_4$ make
g++ usburn.c programmer_usb.c database.c hexfile.c calibration.c firmware.c test.c -m32 -I/usr/local/include -L. -lnsl -lm -lc -L/usr/local/lib -lusb  -o usburn
In file included from /usr/include/stdio.h:27:0,
                 from usburn.c:33:
/usr/include/features.h:374:25: fatal error: sys/cdefs.h: Böyle bir dosya ya da dizin yok
#  include <sys/cdefs.h>
                         ^
compilation terminated.
In file included from /usr/include/stdio.h:27:0,
                 from programmer_usb.c:34:
/usr/include/features.h:374:25: fatal error: sys/cdefs.h: Böyle bir dosya ya da dizin yok
#  include <sys/cdefs.h>
                         ^
compilation terminated.
In file included from /usr/include/stdio.h:27:0,
                 from database.c:43:
/usr/include/features.h:374:25: fatal error: sys/cdefs.h: Böyle bir dosya ya da dizin yok
#  include <sys/cdefs.h>
                         ^
compilation terminated.
In file included from /usr/include/stdio.h:27:0,
                 from hexfile.c:39:
/usr/include/features.h:374:25: fatal error: sys/cdefs.h: Böyle bir dosya ya da dizin yok
#  include <sys/cdefs.h>
                         ^
compilation terminated.
In file included from /usr/include/stdio.h:27:0,
                 from calibration.c:30:
/usr/include/features.h:374:25: fatal error: sys/cdefs.h: Böyle bir dosya ya da dizin yok
#  include <sys/cdefs.h>
                         ^
compilation terminated.
In file included from /usr/include/stdio.h:27:0,
                 from firmware.c:39:
/usr/include/features.h:374:25: fatal error: sys/cdefs.h: Böyle bir dosya ya da dizin yok
#  include <sys/cdefs.h>
                         ^
compilation terminated.
In file included from /usr/include/stdio.h:27:0,
                 from test.c:36:
/usr/include/features.h:374:25: fatal error: sys/cdefs.h: Böyle bir dosya ya da dizin yok
#  include <sys/cdefs.h>
                         ^
compilation terminated.
make: *** [all] Hata 1



Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 15 Eylül 2014 - 21:42:37

şu adreste bu konuyla ilgili birşeylerden bahsetmiş, yardımcı olacak arkadaşlara belki katkıda bulunur.
http://oghazal.blogspot.com.tr/2012/04/installing-usburn-on-linux-for-brenner8.html
Linux kullanmak bir farklılık, linux'te kod yazmak ise ayrıcalıktır.

if

Alıntı yapılan: gnukarabatak - 15 Eylül 2014 - 12:56:50
şu adreste bu konuyla ilgili birşeylerden bahsetmiş, yardımcı olacak arkadaşlara belki katkıda bulunur.
http://oghazal.blogspot.com.tr/2012/04/installing-usburn-on-linux-for-brenner8.html

Ben de Almanca benioku dosyası ile uğraşıp duruyordum.

@gnukarabatak, önce libusb.so kütüphanesinin yerini bulalım:

sudo find / -name "*libusb*"

gnukarabatak

Bende diyorum @if nerede kaldı :)

gnukarabatak@kubuntu-evim:~$ sudo find / -name "*libusb*"
[sudo] password for gnukarabatak:
/var/lib/dpkg/info/libusb-1.0-0:i386.postrm
/var/lib/dpkg/info/libusb-1.0-0:i386.list
/var/lib/dpkg/info/libusb-1.0-0:i386.md5sums
/var/lib/dpkg/info/libusb-0.1-4:amd64.list
/var/lib/dpkg/info/libusbmuxd2.md5sums
/var/lib/dpkg/info/libusb-1.0-0:amd64.md5sums
/var/lib/dpkg/info/libusb-0.1-4:amd64.md5sums
/var/lib/dpkg/info/libusb-0.1-4:i386.symbols
/var/lib/dpkg/info/libusb-1.0-0:i386.symbols
/var/lib/dpkg/info/libusb-0.1-4:i386.shlibs
/var/lib/dpkg/info/libusb-1.0-0:i386.shlibs
/var/lib/dpkg/info/libusb-1.0-0:amd64.postinst
/var/lib/dpkg/info/libusbmuxd2.list
/var/lib/dpkg/info/libusb-0.1-4:i386.postinst
/var/lib/dpkg/info/libusb-0.1-4:i386.md5sums
/var/lib/dpkg/info/libusb-1.0-0:amd64.postrm
/var/lib/dpkg/info/libusb-0.1-4:i386.list
/var/lib/dpkg/info/libusbmuxd2.shlibs
/var/lib/dpkg/info/libusb-0.1-4:amd64.postrm
/var/lib/dpkg/info/libusb-1.0-0:i386.postinst
/var/lib/dpkg/info/libusbmuxd2.postinst
/var/lib/dpkg/info/libusb-0.1-4:amd64.symbols
/var/lib/dpkg/info/libusb-1.0-0:amd64.list
/var/lib/dpkg/info/libusbmuxd2.postrm
/var/lib/dpkg/info/libusb-0.1-4:amd64.postinst
/var/lib/dpkg/info/libusb-0.1-4:i386.postrm
/var/lib/dpkg/info/libusb-0.1-4:amd64.shlibs
/var/lib/dpkg/info/libusb-1.0-0:amd64.shlibs
/var/lib/dpkg/info/libusbmuxd2.symbols
/var/lib/dpkg/info/libusb-1.0-0:amd64.symbols
/lib/i386-linux-gnu/libusb-1.0.so.0
/lib/i386-linux-gnu/libusb-0.1.so.4.4.4
/lib/i386-linux-gnu/libusb-0.1.so.4
/lib/i386-linux-gnu/libusb-1.0.so.0.1.0
/lib/x86_64-linux-gnu/libusb-1.0.so.0
/lib/x86_64-linux-gnu/libusb-0.1.so.4.4.4
/lib/x86_64-linux-gnu/libusb-0.1.so.4
/lib/x86_64-linux-gnu/libusb-1.0.so.0.1.0
/lib/firmware/carl9170fw/extra/libusb-zeropacket.diff
/media/gnukarabatak/Depo/indirilenler-Eski Sistem C/libusb-win32-bin-1.2.6.0.zip
/usr/share/doc/libusbmuxd2
/usr/share/doc/libusb-0.1-4
/usr/share/doc/libusb-1.0-0
/usr/lib/i386-linux-gnu/wine/libusbd.sys.def
/usr/lib/x86_64-linux-gnu/wine/libusbd.sys.def
/usr/lib/libusbmuxd.so.1.0.8
/usr/lib/libusbmuxd.so.2
gnukarabatak@kubuntu-evim:~$
Linux kullanmak bir farklılık, linux'te kod yazmak ise ayrıcalıktır.

if

:) @if'in pek vakti yok şu günlerde de yarın inşallah bakayım.

if

@gnukarabatak, makefile içerisindeki -L/usr/local/lib satırını -L/lib/ olarak değiştirin ve make komutunu tekrar çalıştırın.

gnukarabatak


gnukarabatak@kubuntu-evim:~/brenner8/usburn_0_4$ make
g++ usburn.c programmer_usb.c database.c hexfile.c calibration.c firmware.c test.c -m64 -I/usr/local/include -L. -lnsl -lm -lc -L/lib/ -lusb  -o usburn
In file included from usburn.c:38:0:
b8.h:35:17: fatal error: usb.h: Böyle bir dosya ya da dizin yok
#include <usb.h>
                 ^
compilation terminated.
programmer_usb.c:36:17: fatal error: usb.h: Böyle bir dosya ya da dizin yok
#include <usb.h>
                 ^
compilation terminated.
database.c:45:17: fatal error: usb.h: Böyle bir dosya ya da dizin yok
#include <usb.h>
                 ^
compilation terminated.
hexfile.c:41:17: fatal error: usb.h: Böyle bir dosya ya da dizin yok
#include <usb.h>
                 ^
compilation terminated.
calibration.c:32:17: fatal error: usb.h: Böyle bir dosya ya da dizin yok
#include <usb.h>
                 ^
compilation terminated.
firmware.c:41:17: fatal error: usb.h: Böyle bir dosya ya da dizin yok
#include <usb.h>
                 ^
compilation terminated.
test.c:38:17: fatal error: usb.h: Böyle bir dosya ya da dizin yok
#include <usb.h>
                 ^
compilation terminated.
make: *** [all] Hata 1
Linux kullanmak bir farklılık, linux'te kod yazmak ise ayrıcalıktır.

if

libusb-dev paketini kurarak eksik olan usb.h başlık dosyasını sisteme eklemiş olalım. sudo apt-get install libusb-dev ardından tekrar make

gnukarabatak


gnukarabatak@kubuntu-evim:~/brenner8/usburn_0_4$ make
g++ usburn.c programmer_usb.c database.c hexfile.c calibration.c firmware.c test.c -m64 -I/usr/local/include -L. -lnsl -lm -lc -L/lib/ -lusb  -o usburn
calibration.c: In function 'int cal_step3()':
calibration.c:104:63: warning: unknown conversion type character 0xa in format [-Wformat=]
  fprintf(stdout, "-- ULoad = %f V at PWM: %d % \n", Uhigh, pwm); 
                                                               ^
gnukarabatak@kubuntu-evim:~/brenner8/usburn_0_4$
Linux kullanmak bir farklılık, linux'te kod yazmak ise ayrıcalıktır.

if

@gnukarabatak, C biliyor musun?

fprintf(stdout, "-- ULoad = %f V at PWM: %d % \n", Uhigh, pwm); 

satırını

fprintf(stdout, "-- ULoad = %f V at PWM: %d %% \n", Uhigh, pwm);  olarak değiştirip devam et bakalım.

gnukarabatak


gnukarabatak@kubuntu-evim:~/brenner8/usburn_0_4$ make
g++ usburn.c programmer_usb.c database.c hexfile.c calibration.c firmware.c test.c -m64 -I/usr/local/include -L. -lnsl -lm -lc -L/lib/ -lusb  -o usburn
gnukarabatak@kubuntu-evim:~/brenner8/usburn_0_4$ file ./usburn
./usburn: ELF 64-bit LSB  executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=ac0fa04c00dd056fa19403945446071775e544f0, not stripped


Görüldüğü üzere bu konu başlığına has mutlu sona ulaşılmış görünüyor. Hakkın ödenmez, Teşekkürler @if.  Şu anki problemim ise çalışan uygulama benim PIC'i yine tanımıyor. Bu herifler Linux versiyonuna anlaşılan hiç önem vermemişler. Ben almanlardan linux'e desteksiz kalmalarını hiç beklemezdim. Her neyse, ben şimdi benim brenner8 aygıtımın Frimware 15 05/05/2010 sürümüne sahip olduğunu farkettim. Linux için gönderilen yazılımda fw 15 12/05/2010 sürümü frimware olduğunu gördüm. Linux üzerinde frimware atmaya çalıştığımda aygıtın yüklemeye hazır olmadığını (donanımsal olarak) söyledi.(Tam mesajı şimdi hatırlamıyorum). Windows sürümününde frimware 17 nin 2012 tarihli versiyonunu dağıttıklarını gördüm. Frimware güncelleme için şimdilik windowsa kadar bir gidip geleceğim. Gelişmeleri sonra yazarım. Sonuç olumlu yada olumsuz başlık her halükarda amacına ulaşmıştır. Sonrasında çözüldü olarak işaretleyeceğim.
Linux kullanmak bir farklılık, linux'te kod yazmak ise ayrıcalıktır.

if

Ne yaptım ki @gnukarabatak...
Daha işimiz bitmedi ama. İndirdiğimiz paketle gelen kimi dizin ve dosyaları oluşturacağımız /usr/bin/usburn.dir  dizinine taşımamız gerekmiş.

sudo mkdir /usr/bin/usburn.dir
sudo  cp -r usburn *.dat b8_firmware/ b9_firmware/ bootloader_0_2550/  /usr/bin/usburn.dir


Sonra sudo gedit -H /usr/bin/usburn ile açılacak dosyaya #!/bin/sh
cd /usr/bin/usburn.dir
./usburn
yazıp kaydediyoruz. sudo chmod +x /usr/bin/usburn ile çalıştırılabilir yapıyoruz.

Normal kullanıcıların aygıtın arayüzüne ulaşması için sudo -H gedit /etc/udev/rules.d/99-sprutbrenner dosyası içine SUBSYSTEM=="usb", SYSFS{idProduct}=="ff0b", SYSFS{idVendor}=="04d8", GROUP = "plugdev" yazıp kaydetmesi gerekmiş.

gnukarabatak

Tariflerini aynen hatasız bir şekilde uyguladım. sudo yada gksudo ile çalıştırarak (hem usburn dosyasını hemde usburnGUI dosyasını) aşağıdaki ekranda görüldüğü gibi takılı olan PIC16F877A mikrodenetleyicisini tanımadığını belirten "PIC-Type: unknow" mesajını vermekte. Ardından da "check firmware" uyarısını vermekte. İşin ilginci aşağıda supported kısmında benim pic'im PIC16F grubuna girmekte zaten. Benim aklıma firmware güncellemek geldi. Bu güncelleme işini kubuntuda yapmak istediğimde (usburnGUI yada usburn konsolda) aşağıdaki diğer ekran görüntüsündeki mesajları verdi. Böyle olunca nasılsa windowsta pic tanıma ve programlama sıkıntısı yok düşüncesiyle usburn windows yazılımını çalıştırıp daha yeni bir firmware yazılımını programlayıcıya (brenner8 v2 ,fw 15) atma teşebüsünde bulunduğumda maalesef işlemi gerçekleştirmedi. Buradan da brenner8 programlayıcısını üreten Acun Elektronik zannedersem yanlış firmware atma durumunda karşı PIC 18F2550 mikrodenetleyici üzerinde programlamaya karşı koruma koymuş diye düşünüyorum. Yarın kendileriyle iletişime geçip bunu kaldırıp kaldırmayacaklarını soracağım. Şayet yardımcı olurlarsa Konya sokağa gidip firmware korumasını düzelttireceğim. Yok biz nasılsa sattık geçti başının çaresine bak derlerse PIC18F2550 üzerindeki bootloader yazılımını kendim silip bir usb pic programlayıcı bulup önce yeni korumasız bootlaoder, ardında en güncel firmware dosyasını atıp programlayıcımı geri kalmışlıktan kurtaracağım diye ümit ediyorum :) Bu uzun bilgilendirmeyi bu sıkıntıları çekenler için yazıyorum.


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 25 Eylül 2014 - 15:09:24

Biraz önce Acun Elektronikteki yetkili kişiyle görüştüm. Benim tahmin ettiğim gibi üzerindeki bootloader silinip, yeni bootlaoder arkasından da en güncel firmware yazılımı atılacak.

[eklenti yönetici tarafından silindi]
Linux kullanmak bir farklılık, linux'te kod yazmak ise ayrıcalıktır.

gnukarabatak

Bu başlıkla ilgili son durumu bildirmek istiyorum. İlgili firmaya gittim gayet insancıl ve profesyonel karşılandığımı ifade etmek isterim. Doğrudan firmware yazılımını (bootloader.hex atmadan !) pic18f2550 mikrodenetleyicisine atıldığı için firmware güncellemesi yapılamadığını beraber ürün geliştirme bölümünde tespit ettik. Sağolsunlar bu konudaki katkımdan dolayı layık olmadığımızdan fazla bir teşekkürle karşılandık. Sonuçta eğer brenner8 programlayınız firmware güncellemeyi yapmıyor/yapamıyorsa bu bootloader yazılımı atılmadan firmware atılmış olduğundan yapmıyordur. Ancak bu şekilde de pic mikrodenetleyicileride sorunsuz şekilde programlayabildiğinizi unutmayın. Diğer bir hususta brenner için 18f2550 yi tam temizleyip yeniden yazılım atmak istiyorsanız (brenner8 için) bu işi yine bir brenner programlayıcı ile yapmalısınız. Yoksa pickit2 yada pickit3 gibi bir programlayıcı ile brenner için doğru programlamanın yapılamadığına da şahit olduk.
Başlıktaki maksat hasıl olmuştur. Yani 64bit brenner usburn 0.4 yazılımını arkadaşlarımızın yardımıyla derlemeyi başardık. Diğer hâlâ pic i ubuntu üzerinde tanımama problemi için yeni bir başlık açıyorum. Herkese yardımlarından dolayı sonsuz teşekkürler..
Linux kullanmak bir farklılık, linux'te kod yazmak ise ayrıcalıktır.

heartsmagic

Geri bildirim için çok teşekkür ederiz. Etrafta bu konuda çok kıt bilgi vardır diye tahmin ediyorum. Hâl böyle olunca da, şu verdiğin bilgiler çok değerli oluyor.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.