Picproje Elektronik Sitesi

MİKRODENETLEYİCİLER => Atmel => Konuyu başlatan: pwr_24 - 18 Mayıs 2019, 23:52:54

Başlık: Atmega328p program yazma
Gönderen: pwr_24 - 18 Mayıs 2019, 23:52:54
Arkadaşlar herkese merhaba.2 adet sorum olacaktı.
1- Arduino uno kartının üzerindeki atmega328p mcu suna avr ile program yazıp yuklesek sorun olurmu. Yada arduino bootloader i silip normal avr mcu gibi kullanilirmi?
2- Timer kullanırken internal veya external osc nasıl ayarlanıyor.

Şimdiden teşekkürler.
Başlık: Ynt: Atmega328p program yazma
Gönderen: volkanunal - 19 Mayıs 2019, 00:10:57
1-Evet , bootloader silip harici bir programlayıcı ile yükleme yapabilirsiniz. İsterseniz Arduino IDEsinde C ile de yazabilirsiniz programınızı , harici bir programlayıcı ihtiyaç duymadan yükleme yapabilirsiniz. Ancak bazı kısıtlamalar olabiliyor , örneğin millis() , delay() gibi fonksiyonlarda Timer birimini kullandıkları için , register ayarlamaları yaptıktan sonra ide hata verebiliyor.

2-Timer yapılandırmasında ki formülleri incelerseniz , CPU_Freq diye bir ifade var. Bu işlemciniz için frekans değerini temsil ediyor. Harici ya da dahili olarak frekans değerinizi sigorta ayarlarından yapılandırabiliyorsunuz. Arduino uno kartında 16mhz kristal mevcut , ancak sigorta ayarlarınızı yaptıktan sonra dahili kristali kullanabilirsiniz. Fakat bu durumda Arduino kütüphanelerini kullanacaksanız sapıtabilir , çünkü genelde 16mhz referans alınarak yazılmış.
Başlık: Ynt: Atmega328p program yazma
Gönderen: Kabil ATICI - 19 Mayıs 2019, 00:31:54
Timer "TCCRxB – Timer/Counter Control Register B" ile kontrol edilmekte.
CSx0,CSx1,CSx2 bitleri kontrolu ile iç saat kaynakları (iç bölücüler) harici saat girişi olarak seçilebilmektedir. Hatta harici kaynağın düşen veya yükselen kenarda tetiklenmesi seçilebilmektedir.
 
Not:buradaki x timer register numarasıdır.
Başlık: Ynt: Atmega328p program yazma
Gönderen: pwr_24 - 19 Mayıs 2019, 00:41:59
Alıntı yapılan: volkanunal - 19 Mayıs 2019, 00:10:571-Evet , bootloader silip harici bir programlayıcı ile yükleme yapabilirsiniz. İsterseniz Arduino IDEsinde C ile de yazabilirsiniz programınızı , harici bir programlayıcı ihtiyaç duymadan yükleme yapabilirsiniz. Ancak bazı kısıtlamalar olabiliyor , örneğin millis() , delay() gibi fonksiyonlarda Timer birimini kullandıkları için , register ayarlamaları yaptıktan sonra ide hata verebiliyor.

2-Timer yapılandırmasında ki formülleri incelerseniz , CPU_Freq diye bir ifade var. Bu işlemciniz için frekans değerini temsil ediyor. Harici ya da dahili olarak frekans değerinizi sigorta ayarlarından yapılandırabiliyorsunuz. Arduino uno kartında 16mhz kristal mevcut , ancak sigorta ayarlarınızı yaptıktan sonra dahili kristali kullanabilirsiniz. Fakat bu durumda Arduino kütüphanelerini kullanacaksanız sapıtabilir , çünkü genelde 16mhz referans alınarak yazılmış.

Yanıtlar için teşekkürler. Ben eclipse ile derliyorum programları. Arduino kulanmadım kullanmamda. Eclipse daha program yazılmadan osc frekansını istiyor.O yüzden F_CPU komutu yok.
 Anladığım kadarıyla flash'a yazarken external yada internal seçiliyor. Atmel konusunda yerli kaynak çok az nette yabancı kaynaklar üzerinden gidiyorum ben. Teşekkürler
Başlık: Ynt: Atmega328p program yazma
Gönderen: Tagli - 19 Mayıs 2019, 10:02:19
AVR'leri artık MPLAB X ile de programlayabilirsin. Ancak desteklediği programlayıcı cihaz sayısı az, .hex kodunu IDE dışında bir yöntemle cihaza atman gerekebilir.
Başlık: Ynt: Atmega328p program yazma
Gönderen: pwr_24 - 19 Mayıs 2019, 17:26:11
Alıntı yapılan: Tagli - 19 Mayıs 2019, 10:02:19AVR'leri artık MPLAB X ile de programlayabilirsin. Ancak desteklediği programlayıcı cihaz sayısı az, .hex kodunu IDE dışında bir yöntemle cihaza atman gerekebilir.
Evet bende youtube'dan baktım ilgili videolara ama yeterince cevap vermiyor  mplab. ATMEL, eclipse ve codeblocks şuanlık iyi gibi.