Picproje Elektronik Sitesi

MİKRODENETLEYİCİLER => Atmel => Konuyu başlatan: veliusta - 01 Aralık 2015, 15:18:55

Başlık: AVR Programlamaya Giriş
Gönderen: veliusta - 01 Aralık 2015, 15:18:55
Merhaba.
Atmega8 ve Atmega328P mikrodenetleyicilerini programlamak istiyorum.

(http://www.upmatik.com/m/2015/12/01/s-l1600.jpg)
(http://www.upmatik.com/m/2015/12/01/ATmega328P-ISP.png)

Resimdeki Programlayıcı aldım.
USBasp driverini kurdum.

Hangi derleyiciyi kullanacağım? Eclipse mi? Atmel Studio mu? avrdude winavr bunlar nedir?

mesaj birleştirme:: 02 Aralık 2015, 05:25:40

Şu uygulamayı yapabilirmisiniz? Bunu nasıl yapılacağını gösterin yeterli.
Tüm pinler sırasıyla 500ms araliklarla toggle yapılacak. Dahili Kristal kullanılacak. Reset pini kullanılmayacak. Hex dosyası çalınmayacak.
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: crazy - 01 Aralık 2015, 15:56:14
Aynı programlayıcı  bende de var.Hangi derleyiciyi kullanıyorsan hex dosyasını  oluştur. AVR8_Burn-O-Mat_2_1_2  programı ile  hex dosyanı seç sigorta ayarlarını yap ve yükle. Atmel studio bu programlayıcıyı tanımıyor.
(http://s12.postimg.cc/z9dr8xts9/image.jpg) (http://postimg.cc/image/z9dr8xts9/)

(http://s12.postimg.cc/rn0sk1wy1/image.jpg) (http://postimg.cc/image/rn0sk1wy1/)
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: veliusta - 01 Aralık 2015, 16:10:58
@crazy Teşekkürler hocam.
Şimdi ben yeni başlayacağım hangi derleyici kullanmamı önerirsiniz.

Şimdi denemek amaçlı Arduino ile derlenmiş hex dosyasını AVR8_Burn-O-Mat_2_1_2 ile yükleyebilirim değil mi? Aynı zamanda Arduino bootloader'ide yüklenmiş olacak.
Böyle yaparsam 16MHz Kristal ve dirençleride ekleyeceğim.
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: crazy - 01 Aralık 2015, 16:23:34
Alıntı yapılan: veliusta - 01 Aralık 2015, 16:10:58
@crazy Teşekkürler hocam.
Şimdi ben yeni başlayacağım hangi derleyici kullanmamı önerirsiniz.

Şimdi denemek amaçlı Arduino ile derlenmiş hex dosyasını AVR8_Burn-O-Mat_2_1_2 ile yükleyebilirim değil mi? Aynı zamanda Arduino bootloader'ide yüklenmiş olacak.
Böyle yaparsam 16MHz Kristal ve dirençleride ekleyeceğim.
Hangi derleyici iyi biliyorsan  onu kullan hocam arduino uno karta atmel studio hex yükledim sonra bootloader  yükledim tekrar arduino ide ile kullandım.Fuse  ayarları için direk hexe çeviren site http://www.engbedded.com/fusecalc/ (http://www.engbedded.com/fusecalc/)
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: berkay_91 - 01 Aralık 2015, 18:48:30
aynı ISP kablosundan bendede var, hex kodlarını göndermek için Khazama AVR Programmer.exe kullanıyorum, tavsiye ederim derleyici olarakta Atmel studio...
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: RaMu - 01 Aralık 2015, 19:01:44
Atmel bilmiyorum, gerçekten elime alıp kullanmışlığımda yoktur,
ama Atmel Studio yu kurup denemiştim,
neden Atmel Studio yu seçmiştim;
çünkü mcu yu üreten firmanın kendi ürettiği IDE ~ derleyicisi,
Microchip (PIC) için MPLABx (veya MPLAB) neyse atmel için de Atmel Studio o.

Bilmeyen biri olarak tavsiyede bulunduğumu tekrar belirteyim,
kullananlar daha iyi bilirler.
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: Kabil ATICI - 01 Aralık 2015, 19:40:58
Atmel AVR Studio yakın zamana ( 2-3 sürüm öncesine) kadar kendi arayüzünün kullanıyordu.  Şu an için Microsoft Visual Studio'nun arayüzünü kullanmaktadır. ( Yalıtılmış olarak- microsoft ürünlerine entegre değil).

Kullanım açısından Atmel tüm ürün yelpazesine destek verebilmekte.

Programlayıcı olarak tek sıkıntısı Atmel'in kendi programlayıcılarına desteklemesidir.
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: veliusta - 01 Aralık 2015, 20:14:02
Atmel Studio v7.0.634 indirdim.
Bununla http://www.ebay.com/itm/New-USBASP-USBISP-AVR-Programmer-USB-ATMEGA8-ATMEGA128-/170813851774?hash=item27c54c887e:g:bl0AAOSwKIpWAgOh (http://www.ebay.com/itm/New-USBASP-USBISP-AVR-Programmer-USB-ATMEGA8-ATMEGA128-/170813851774?hash=item27c54c887e:g:bl0AAOSwKIpWAgOh)
Bunun http://www.ebay.com/itm/Micro-5v-USB-Tiny-AVR-ISP-ATtiny44-USBTinyISP-Programmer-For-Arduino-Bootloader-/281684945003?hash=item4195bb286b:g:c5sAAOSwEK9T7r-Q (http://www.ebay.com/itm/Micro-5v-USB-Tiny-AVR-ISP-ATtiny44-USBTinyISP-Programmer-For-Arduino-Bootloader-/281684945003?hash=item4195bb286b:g:c5sAAOSwEK9T7r-Q)
arasındaki fark nedir?
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: crazy - 01 Aralık 2015, 20:38:12
Atmel studio iyi tercih hocam linkteki USBasp  ile senin kullandığın arasında bir fark yok .Bu programlayıcıyı atmel studio ile  kullanmak için google da usbasp avr atmel studio programming diye bir arama yap videolar felan var  bi ara uğraşmıştım winavr felan kurup avr dude üzerinden atmel studio ile hex yüklüyorsun
http://shannonstrutz.com/tutorials/setting-up-usbasp-for-use-with-atmel-studio-6 (http://shannonstrutz.com/tutorials/setting-up-usbasp-for-use-with-atmel-studio-6)
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: EFESU - 01 Aralık 2015, 22:07:46
yükleyicinin ayrı yazılımı  yok mu _?
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: zipzip - 02 Aralık 2015, 00:52:31
Alıntı yapılan: veliusta - 01 Aralık 2015, 20:14:02
Atmel Studio v7.0.634 indirdim.
Bununla http://www.ebay.com/itm/New-USBASP-USBISP-AVR-Programmer-USB-ATMEGA8-ATMEGA128-/170813851774?hash=item27c54c887e:g:bl0AAOSwKIpWAgOh (http://www.ebay.com/itm/New-USBASP-USBISP-AVR-Programmer-USB-ATMEGA8-ATMEGA128-/170813851774?hash=item27c54c887e:g:bl0AAOSwKIpWAgOh)
Bunun http://www.ebay.com/itm/Micro-5v-USB-Tiny-AVR-ISP-ATtiny44-USBTinyISP-Programmer-For-Arduino-Bootloader-/281684945003?hash=item4195bb286b:g:c5sAAOSwEK9T7r-Q (http://www.ebay.com/itm/Micro-5v-USB-Tiny-AVR-ISP-ATtiny44-USBTinyISP-Programmer-For-Arduino-Bootloader-/281684945003?hash=item4195bb286b:g:c5sAAOSwEK9T7r-Q)
arasındaki fark nedir?

USBISP programlayıcı için Progisp yazılımını kullanman gerekiyor, avrdude'yi kullanamazsın. Avrdude için grafik arayüzü olarak avrdudess i tavsiye ederim. İlk linkteki programlayıcı USBISP, USBASP ye çevirmek için firmware'i değiştirmen gerekiyor.
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: veliusta - 02 Aralık 2015, 11:52:25
#define F_CPU 16000000UL

#include <avr/io.h>
#include <util/delay.h>

int main(void){
DDRD = 0xFF;
        DDRB = 0xFF;
PORTD = 0x00;
PORTB = 0x00;

    while(1){
PORTB ^= 0xFF;
PORTD ^= 0xFF;
    _delay_ms(1000);
PORTB ^= 0xFF;
PORTD ^= 0xFF;
    _delay_ms(1000);
    }
}


İlk toggle uygulamam. Doğru yapmışmıyım ??
ISIS'te denedim 1 saniyeyi 10 saniye olarak işliyor. CKSEL Fusesten ayarları değiştirdiğimde hata veriyor isis. Kristal bağladım olmadı. Zamanı tutturamadım.
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: berkay_91 - 02 Aralık 2015, 12:19:41
ben denedim sorun çıkmıyor, CLKDIV8(Divide clock by8) satırını unprogrammed yapın, CKSEL Fuses satırı (0111) ext. Full Swing crystal olucak ve son olarak Advanced properties de (Default) yerine 16MHZ yazın birde bağladığınız kristalin değerini 16 Mhz olarak değiştirmeyi unutmayın...
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: Kabil ATICI - 02 Aralık 2015, 21:01:06
 #define F_CPU 16000000   //  16MH kristal için olacak

#include <avr/io.h>
#include <util/delay.h>

int main(void)
DDRD = 0xFF;
        DDRB = 0xFF;
while(1){
        PORTD = 0xFF;
PORTB = 0xFF;
_delay_ms(1000);
        PORTD = 0x00;
PORTB = 0x00;
_delay_ms(1000);
}


işlemci ile çalışınca sorun olmuyor...

CLKDIV8(Divide clock by8) sigortası her Atmel işlemcide bulunmaz..

İsis çoğu durumda gerçek zamanlı simülasyon yapmaz!..
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: engerex - 02 Aralık 2015, 21:30:38
ISIS güvenmeyin.
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: mehmet - 03 Aralık 2015, 12:08:54
Eclipse kullanıp; programlayıcı ayarını yaparsanız,
başka bir programlayıcı kullanmadan, derlediğiniz
hex direk mcu ya yazılabilir.

Kullandığınız programlayıcının VID:PID değerlerini
verebilirseniz bu konuda yardım edebilirim...
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: veliusta - 04 Aralık 2015, 10:17:07
Bugün Arduino'dan derledeğim hex'i mikrodenetleyiciye atmaya kalktım olmadı. AVR8_Burn  ve KhazamaAVR ile denedim.
Cihaz Aygıt yöneticisinde gözüküyor fakat portlarda gözükmüyor. Arduino ide programı açtığımda portlarda yoktu.
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: crazy - 04 Aralık 2015, 16:26:50
Alıntı yapılan: veliusta - 04 Aralık 2015, 10:17:07
Bugün Arduino'dan derledeğim hex'i mikrodenetleyiciye atmaya kalktım olmadı. AVR8_Burn  ve KhazamaAVR ile denedim.
Cihaz Aygıt yöneticisinde gözüküyor fakat portlarda gözükmüyor. Arduino ide programı açtığımda portlarda yoktu.
Hocam Winavr programı pc de yüklü ise  AVR8_Burn  settings tıkla ekli resimdeki iki dosyayı göster.Yine olmaz ise pc de java programı yüklü olması lazım diye hatırlıyorum.Bu linkte anlatım var http://www.slideshare.net/mangal007/usbasp (http://www.slideshare.net/mangal007/usbasp)
(http://s15.postimg.cc/46lffsi3b/AVR8_Burn_O_Mat_2.jpg) (http://postimg.cc/image/46lffsi3b/)
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: veliusta - 06 Aralık 2015, 10:01:42
Olmuyor.  Khazama AVR Programmer ile yüklemişim sanırım. LED 1sn blink'i 10snde yapıyor. Khazama ile sigorta ayarlarını yükleyemiyorum.

AVR8_Burn Settings'de C:\WinAVR\bin\avrdude.exe yazıyor fakat benim C de öyle birşey yok. Bende Arduino'dan aldım o dosyaları yine olmadı.
AVRDUDE optionsta programmer olarak ne seçeceğim?

Şimdi ben 16MHz Rezonatör ile Arduino Blink uygulamasını deniyorum.
Arduino UNO'nun fuse ayarları nedir?
Low Fuse    0xFF
High Fuse    0xDE
Extended Fuse    0x05

Böylemi olacak?
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: veliusta - 06 Aralık 2015, 12:52:19
(http://www.resimyukle.download/images/2015/12/06/Untitledeba8a.png)

Sigorta ayarlarını yapsın ve entegre sağlamlığını kontrol etmek amacı ile Arduinu UNO ile Arduino klonladım. Sonra Arduino ide'den USBasp ile denedim çalıştı. Şimdi AVRDUDESS ile denedim çalıştı.

mesaj birleştirme:: 06 Aralık 2015, 12:55:58

Birşey merak ediyorum. Şimdi ben Arduino ile bir uygulama yaptım.  Ben bu uygulamanın HEX dosyasını çalınmasını istemiyorum.
Ne yapacağım?
Sadece sigorta ayarlarınımı değiştireceğim?
Sigorta ayarları değiştirdikten sonra Arduino'yu tekrar yüklemeler yapıp kullabilecekmiyim?
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: mehmet - 06 Aralık 2015, 16:28:08
Lock sigorta ayarını 0x00 yaparsanız
kod koruma yapılmış olmaktadır. Merak
etmeyin, mcu silinince lock yine açılır flash
silinir. Tekrar kullanılabilir.
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: veliusta - 06 Aralık 2015, 18:50:03
@mehmet
Teşekkürler kod korumasını denedim oldu.
Resetsiz kullanmak istediğim için Sigortalardan "Reset Disabled" yaptım. Artık mikrodenetleyiciye ulaşamıyorum. Ne olacak? Brick oldu sanırım.
Başlık: Ynt: AVR Programlamaya Giriş
Gönderen: mehmet - 06 Aralık 2015, 21:55:18
Paralel programlayıcı ile kurtarılabilir. Sakın
atmayın.