Nette dolaşırken Atmega644 ile yapılmış bir projeyle karşılaştım. 12 MHz (12 MIPS) ile yapabildikleri bence etkileyici.
Bende yaklaşık 4 aydır ATmega serisiyle çalışıyorum ve gerçekten PIC'lerin yüzünü bile görmek istemiyor insan bi kez alışınca=)
Fiyat ve performans olarak süper MC'ler bence.
Kodlar C++ ile yazılmış. Kaynak kodlarda sitede mevcut.
Link:
http://rossum.posterous.com/avr-homebrew-device-with-iphone-aspirations (http://rossum.posterous.com/avr-homebrew-device-with-iphone-aspirations)
Diğer projeleride ilgi çelici:
http://rossum.posterous.com/ (http://rossum.posterous.com/)
Videosu:
Hardware320x240 LCD with 4 wire resistive touch screen - a ELT240320ATP variant from a dead Sylvania MP3 player - uses a ILI9325 controller.
12Mhz Atmega644 CPU with 64k Flash and 4k RAM - demo fits in 32k.
USB connector for PC communication and charging.
Lithium polymer battery with software controlled power.
Software controlled backlight.
SD Micro slot.
SoftwareLCD driver to support blitting image decompression and smooth scrolling.
Z-sorted span 3D engine with zero overdraw.
Basic UI framework for gadgets and poorly drawn pictures.
USB mouse or keyboard HID support.
Sampling profiler.
Movie playback.
Sprite engine.
Bunu yapanı Apple yazılımcı olarak en kısa zamanda "kapaklar" :)
Bu proje GNU olarak devam etmez :D edemezz....
Çok hoş bir proje olmuş tek kelime ile!
bir 8bit mcu için çok iyi bir performans
Ama bazı ayrıntılar var :
Kodları inceledim göründüğü gibi atmega64 e çok uçuk işlemler yaptırılmamış . Grafik ile alakalı şeylerin çoğu sd kartın içinde hazır (jpeg yerine lcd ile birebir çözünürlükte bmp dosyaları vs... )
Evet öyle ayrıntılar var. Ayrıca kaydırma işlemindede LCD'nin hardware scroll desteği kullanılmış.
Birkaç pixel kaydırma yapmak için tüm LCD'ye yeniden veri gönderilse performans çok kötü olurdu.
Sadece kayan alan kadarı yeniden gönderiliyor LCD'ye.
Yinede güzel bir proje. Ayrıca sitede ILI9325'li 320x240 TFT konusu vardı onun içinde güzel bir örnek.
Saygılar...
WinAvr de çok güzel bir derleyici imiş...
Bu kadar kodu problemsiz şekilde derlediğine göre avr projeleri için önerilecek bir derleyici.
Kesinlikle öyle. Ayrıca bedava! Kürek kaçak göçek vs yok.
Atmel'le uğraşan bir çok kişi kullanıyor ve sürekli geliştiriliyor.
Ticari derleyicilerden fazlası var eksiği yok bence.
Birde derleyiciyi Eclipse'ye adapte ettin mi başka hiç bir derleyiciye değişmem =)
Ben şuanda eclipse ile kullanıyorum fakat AvrStudio ya geçmeyi düşünüyorum siz ne tavsiye edersiniz?
Gördüğüm kadarı ile avrstudio debug işlemleri için daha iyi (simulasyon vs. )
Hi-Tech Hi-Tide'dan kalma alışkanlıklar nedeniyle Eclipse bana çok kolay ve kullanışlı geliyor. (Zaten Hi-Tide Eclipse'nin makyajlı hali)
Debug işlemleri için proteus kullanıyorum ama genelde direkt olarak donanınım üzerinde çalıştrııyorum kodları.
Yaptığım USB programlayıcıyıda Eclipseye adapte ettim. Tek tıkla derlenen kod, donanıma aktarılıyor. Herşey kolay ve temiz.
AvrStudio'yu denemek için Win7'ye kurmaya çalışınca hata vermişti. Hiç deneme fırsatım olmadı o yüzden yorum yapamayacağım. İkisininde kendine göre artı eksileri vardır tabi.
Saygılar...
codevisionavr öneririm üstelik lisansı 150 euro cuk.
denemek isteyenler için 2.03.4 versiyonu,
http://uploaded.to/?id=iamdyd ilaçlanmış gübrelenmiş, ekiyorsun çıkıyor modeli...
Link GÜNCELLENDİ.
Allegro üstadım gübreli toprak yok diyor...
En kısa zamanda AVR öğrenmek istiyorum ;D
WinAvr olmadıktan sonra atmelin ne farkı kalıyorki?
Benim atmeli seçmemin en önemli nedeni winavr : özgür yazılım + winavr ile yapılmış bir sürü örnek var...
WinAvr + eclipse = bir numara bence
@Allegro hocam konuyu geçici mesajlara açmıştım ama güzel paylaşımlar oldu, konu ATMEL başlığı altına taşınabilirse AVR ile ilgilenmek isteyen diğer arkadaşlarada faydalı olur diye düşünüyorum.
Saygılar...
Alıntı yapılan: dhan000 - 24 Mayıs 2010, 12:47:39
Allegro üstadım gübreli toprak yok diyor...
Afedersin... Şu anda link çalışıyor...
@Allegro abi bir ara ATMEL vs PIC diye sormuştum PIC demiştin şimdi konularda yorumların ile atmele teşfik ediyorsun :)
Kusura bakma şirket değiştirdim de..
Artık Atmel satıyoruz :D
Alıntı yapılan: Allegro - 24 Mayıs 2010, 14:50:23
Kusura bakma şirket değiştirdim de..
Artık Atmel satıyoruz :D
hocam profil resmin nezaman değişecek ATMEL den bişiler korsun artık ::)
Buyur Erol abi. (Atmel CEO'su)
(http://files.shareholder.com/downloads/ATML/0x0x141501/491FE084-338E-4AC5-A3AC-8C9FD3205FFD/Steve_Laub_new.jpg)
Bu arada Source Boost tan dolayı PIC le arasında duygusal bir bağ oluştu :D Vazgeçemez...
RTOS konusunda AVR de o kadar çok opsiyon var ki başım döndü.
Sadece AVRx RTOS bile beni yoldan çevirmeye yetti :)
Sourceboost ta ayrı bir güzellik tabi :)
Bende PIC ten ATMEL' e göç edenlerdenim. Kesinlikle tavsiye ediyorum. Buradaki video zaten performansını gözler önüne seriyor, üstüne daha ne söylenebilir ki... İlk zamanlar win avr editörünü kullanıyordum şuan AVR studio kullanıyorum. MPLAB gibi bir havası var hoşuma gitti :)
bu zamazing nsıl oluyorda 12clk da 12mpıs yapıyor?
"nerdeyse" tüm komutlar 1 clock saykılında gerçekleştiriliyor.
PIC te ise bu 4 clock saykılı oluyor.
Dolayısıyla atmelde 12MHZ, 12MIPS hızını desteklerken, PICte 12MHz ancak ve ancak 3MIPS hızını veriyor. :)
Küçücük (2-3 liralık) ATtinny serileri 20MIPS hızında çalışabiliyor ve 4 kanal donanımsal PWM i var.
Bu özellikleri gördüğüm vakit PIClerle oynamayı bıraktım :)
Arkadaşlar ben pic e başlıcaktım. Sizce başlamıyım mı :) Bu proje aklımı çeldi
:o sizin gözünüz dönmüş nankörlerrr.
Yakında PicProjenin adını avareproje yapalım da dersiniz , korkulur sizden . :D
Kazım hocam nankörlük insanoğlunun yaradılışında var,
Sanırım bende aralarına katılacağım. ;D
aslında avareproje.com kulağa hiçte fena gelmiyor ;D
Atmeller'le ilgilenmek isteyen arkadaşların biraz daha aklını çelelim; :)
ATmega ve ATtiny serisini programlayan basit ucuz(maliyeti 10 TL bile değil) bi USB programlayıcı, board üzerinde denedim sonuç çok iyi;
https://www.picproje.org/index.php/topic,28462.0.html (https://www.picproje.org/index.php/topic,28462.0.html)
avareproje.org :)
Alıntı yapılan: XX_CİHAN_XX - 25 Mayıs 2010, 02:17:16
"nerdeyse" tüm komutlar 1 clock saykılında gerçekleştiriliyor.
PIC te ise bu 4 clock saykılı oluyor.
Dolayısıyla atmelde 12MHZ, 12MIPS hızını desteklerken, PICte 12MHz ancak ve ancak 3MIPS hızını veriyor. :)
Pice 12 Mhz kristal takıp 48 Mhzde çalıştırıyorsun. hatta bazı serilerde bu osilatör çok esnekmiş 20 Mhz kristal takarsan 80Mhzde krallar gibi kullanıyormuşsun. Sizce bu bahsettiğim picler kaç $ dır? sadece 1.3 $ hem usb si de içinde ;) Yağni demem o ki yapacağınız işe göre pic veya başka bir şey seçebilirsiniz. bunların kendine göre avantajı vardır veya yoktur. Bazısı da avantajlıdır fakat kullanamazsınız. çünkü bilmezsiniz.
Alıntı yapılan: t2 - 25 Mayıs 2010, 14:50:10Yani demem o ki yapacağınız işe göre pic veya başka bir şey seçebilirsiniz. bunların kendine göre avantajı vardır veya yoktur. Bazısı da avantajlıdır fakat kullanamazsınız. çünkü bilmezsiniz.
Tebrikler... Çok güzel bir açıklama yapmışsınız. Bazen 1 i bazen de diğeri avantajlı olur.
Önemli olan aklımızdakini gerçekleştirip gerçekleştiremediğimiz.
Aklımızda FİKİR namına birşey yoksa AVR den
daha hızlısı da olsa bi işe yaramaz :)yalnız şu esnek osc li, 20 mhz xtal ile x4 PLL = 80 Mhz çalışan PIC MCU lar hangileri ? :)))
DİP NOT :
Kod yazan ve sebepsiz yere daha iyi geliştirme aracı arayan herkese bu NOTUM :
Kullanmayı bilmediğin attan, eşek bile olmaz :D
Yanlış söylemişim 80 değil 96 Mhz. yani 24 Mhz kristal takarsan picin 96 Mhz ile çalışıyor. tepe tepe kullanıyorsun. Bu picler K veya J serisi piclermiş . Tam numarasını hatırlayamadım. arayın bulun :)
Alıntı yapılan: t2 - 25 Mayıs 2010, 15:28:01
Yanlış söylemişim 80 değil 96 Mhz. yani 24 Mhz kristal takarsan picin 96 Mhz ile çalışıyor. tepe tepe kullanıyorsun. Bu picler K veya J serisi piclermiş . Tam numarasını hatırlayamadım. arayın bulun :)
iddiayı ortaya atan sensin... :)
Varsa "şu" de... yoksa "sus"...
var hocam ama ben kullanmadım. adam bunu kataloga bakmış söylüyor. o tarihte bende baktım gerçekten sistem müsaitmiş katalogda üst sınır baya yukarıdaydı. Ben şuan bir pici 12 Mhz takarak 48 Mhz de çalıştırıyorum. Şuan kullandığım picin datasına baktım ama uzun sayfalar 96Mhz diye aratınca çıkmadı. tam da yerini bulamadım.
Ama o tarihte adamın dediği pice , kataloğa bakmıştım gayet güzel bir şekilde çalışabilir. Şimdi buna ihtiyaç duyan kolayca deneyebilir. zor değil. sadece 24 Mhz kristali takacaksın. PLL i ayarlayacaksın. tabi usb kulanacaksan usb clock 48 de sabit olacak. sistem clk 96 olacak. ışık hızında kullanacaksın.
ben bunun çalışacağına inanıyorum ama ihtiyaç duymadım. şimdi "ispatlamak" için oturup devre mi kurayım. sadece duyduğumu söylüyorum. hem bunu diyen adam bir amatör değil. işi n erbabı biri. bir Compiler'ın müellifi oluyor.
Alıntı yapılan: t2 - 25 Mayıs 2010, 16:22:52
ben bunun çalışacağına inanıyorum ama ihtiyaç duymadım.
şimdi "ispatlamak" için oturup devre mi kurayım.
sadece duyduğumu söylüyorum.
hem bunu diyen adam bir amatör değil.
işi n erbabı biri. bir Compiler'ın müellifi oluyor.
Sözünün eri, lafının ardında durur.
MHZ ile MIPS kavramı karışıyor gibi geldi.
12Mhz takıyorsunuz 48Mhz olarak kullanıyorsunuz waaoovv :o
Peki bu 48MHZ kaç MIPS oluyor yine 12MIPS oluyor :)
İşlemcinin hızını MHz ile değil MIPS ile ifade ederseniz daha az yanıltıcı olur.
(http://img143.imageshack.us/img143/4138/performancec.jpg)
Şekilde de görüldüğü gibi 8 bitlik PIC serilerinin en iyisi olan PIC18 serisi
en fazla 16MIPS i görebilirken ATMEL lerin 8 bitlik hemen her modeli 19 - 20MIPS hızını desteklemektedir :)
Burada adil bir performans kıyaslaması için atmelin 8 bitlik modeli ile tutupta PIC in 16 yada 32 bitlik modellerini kıyaslamıyacaksınız herhalde :)
Yoksa ATMEL in de çok güzel 32 bitlik modelleri var onlarla kıyaslamayı yapabilirsiniz elbette :)
Evet hesapta yanlışlık yapmayalım. Şimdi clk frekansının 4 te birini alıyoruz komut hızı ortaya çıkıyor İSE en ucuz 18f K serisi bir pici 96 Mhz de çalıştırabiliyorsak 96 /4 = 24MIPS etmez mi?
24 MHhz kristal takılır mı? evet takılır demiş.
Bu frekansı da katlamaz mı evet katlar.
Eh o zaman bir tek PIcin MIPS hesabı kalıyor. o da frekansın 4 de biriydi (değişmediyse)
K serisi en cuz PIC 1.5 $ civarı. Sizin kıyasladığınız atmelin fiyatı nedir?
Alıntı yapılan: t2 - 25 Mayıs 2010, 18:01:00
...en ucuz 18f K serisi pici alıyorum 96 Mhz de çalıştırıyorum 96 /4 = 24MIPS eder...
bu pic hangi pic :)
İnanın bilmiyorum bilsem söylerim. ama adamın dediği tarihte bakmıştım. 48 Mhz olarak zaten çoğu çalışıyor ona şüphe yok. 18f14k50 çalışıyor. Mesajı düzelttim. ben 48 de çalıştırdım. 96 yı kendim denemedim
googlede bir şeyler var;
http://books.google.com.tr/books?id=NPSQShtCQaUC&pg=PA448&lpg=PA448&dq=pic+96+mhz&source=bl&ots=Dzcc_LXWYC&sig=h4LA0KrhfVQL_EuhGvpq1qkVbFg&hl=tr&ei=2e77S_KpKMiy4QbI1qmnAg&sa=X&oi=book_result&ct=result&resnum=2&ved=0CCAQ6AEwAQ#v=onepage&q&f=false
Alıntı YapFigure 8.23 shows part of the PIC18F4550 clock circuit. The circuit consists of a
1:1 – 1:12 PLL prescaler and multiplexer, a 4:96MHz PLL, a 1:2 – 1:6 PLL postscaler,
and a 1:1 – 1:4 oscillator postscaler. Assuming the crystal frequency is 8MHz and
we want to operate the microcontroller with a 48MHz clock, and also remembering
that a 48MHz clock is required for the USB module, we should make the following
choices in the Edit Project option of the mikroC IDE:
Set _PLL_DIV2_1L so the 8MHz clock is divided by 2 to produce 4MHZ at
the output of the PLL prescaler multiplexer. The output of the 4:96MHZ PLL
is now 96MHz. This is further divided by 2 to give 48MHz at the input of
multiplexer USBDIV.
http://www.3dreplicators.com/cgi-bin/cblog/index.php?/archives/373-Digging-into-the-18F4550.html
Alıntı Yap
The 18F4550 has a peculiar handling for clock speeds. It's very nice but a bit complicated. Microchip wanted you to be able to run high speed USB comms regardless of how fast you want to run your chip and they didn't want you to have to install two crystals, one for the CPU and one for the USB.
Here is what they did. The chip has an internal clock which runs at 4 MHz or you can install a faster crystal. That's nothing unusual. What happens after that is unusual. The 18F4550 has a prescaler which cranks whatever crystal speed you utilize up to 96 MHz and then one postscaler for the CPU and another for the USB. If you postscale for the CPU you can divide that 96 MHz for a maximum CPU speed of 48 MHz, which is what I did.
4550 gibi serilerle K serisini karıştırmayın. K olanlar daha hızlı çalışabiliyor. katalog bilgisine güvenip yüksek hız elde edilecek.
http://techtrain.microchip.com/webseminars/documents/PIC18J_090909.pdf
buraya bakarsak 16MIPS demiş neden öyle dmiş acaba ? kristali yüksek taksak frekans ve mIPS yükselir. ve de o picler bunu sağlayabilir kanaatindeyim. deneyen adam öyle diyordu. Bunları kullanabilirseniz DSPye ihtiyacınız yok diyordu.
Alıntı yapılan: FxDev - 25 Mayıs 2010, 19:32:49
Bugün AVR Studio'yu indirip bir iki kurcaladım, bir pinden led yakıp söndüreyim dedim, anam ağladı (lafın gelişi tabi).
Sanırım AVR'de birinci kural maskeleme yapıp pinleri ona göre yönlendirme, yanılıyor muyum?
Evet FxDev hocam. Maskeleme gerekiyor. PIC'teki gibi RB0=0 diyemiyoruz. Aslında PIC dışında bi çok MC'de böyle. Ama böyle küçük ayrıntıları aşınca işin PIC'e program yazmaktan farkı kalmıyor herşey kolaylaşıyor.
Eğer bit işiyle uzun uzun uğraşmak istemiyorsanız. Kodunuz başına şu makroyu ekleyip kullanabilirsiz mesela:
#define SetBit(port,bit) port |= _BV(bit)
#define ClrBit(port,bit) port &= ~_BV(bit)
//yada daha açık haliyle
#define SetBit(port,bit) port |= (1<<bit)
#define ClrBit(port,bit) port &= ~(1<<bit)
Daha sonra
SetBit(PORTD,7);
ClrBit(PORTB,6);
şeklinde kullanabilirsiniz.
Saygılar...
Ekleme:Hocam bildiğim kadarıyla sizde HI-TIDE'de kod yazıyordunuz. AVR Studio yerine Eclipse IDE indirip AVR-GCC ile kullanabilirsiniz. HI-TIDE'nin neredeyse aynısı, hiç zorluk çekmezsiniz.
Alıntı yapılan: FxDev - 25 Mayıs 2010, 19:49:05
Alıntı yapılan: Elektroemre - 25 Mayıs 2010, 19:41:22
Hocam bildiğim kadarıyla sizde HI-TIDE'de kod yazıyordunuz. AVR Studio yerine Eclipse IDE indirip AVR-GCC ile kullanabilirsiniz. HI-TIDE'nin neredeyse aynısı, hiç zorluk çekmezsiniz.
Çok kısa yapmam gereken nedir bunu gerçekleştirebilmek için?
Zaten şu an WinAVR kurulu olduğundan AVR-GCC'ye sahibim sanırım, eclipse'de şu an iniyor, peki sonra?
Hocam şu linli incelerseniz size yardımcı olur:
http://berik.net/forum/index.php?topic=14.0 (http://berik.net/forum/index.php?topic=14.0)
Saygılar...
Ben 4 aydır uğrıyorum Atmel'le, şimdiye kadarki projelerimin hepsinde delayları böyle kullandım ve şimdiye kadar bi yamuğunu görmedim. Ayrıntı için AVR-GCC'nin manual kısmana göz atabilirsiniz, orada sadece yüksek hızlarıda belli bir değere kadar doğru çalıştığından bahsediyordu sanırım. En güzeli küçük bir örnek yazıp isis'te konrol etmek tabi
Saygılar...
Alıntı yapılan: FxDev - 25 Mayıs 2010, 19:58:09
İşin garibi ben o sitenin takipçisiyim, nasıl görememişim anlamadım.
Bugün bir deneme yapıp, bir örnek sunayım, ayrıca _delay_ms(xx) gibi bir kaç fonksiyon kullandım, bu kütüphaneler sağlam mıdır?
Açıkçası o kütüphanenin sağlam olmadığını düşünüyorum. Yada kullandığım isisin osilaskopunda sorun var ikisinden biri :)
Bu arada@FxDev eğer eclipsede ilk derlemelerinde kod çok kabarıksa şu ayarı kontrol et:
(http://img327.yukle.tc/images/34622505a.jpg)
Release seçeneği aktif olmalı. (her projede yeniden ayarlamak gerekiyor). Diğer türlü çok kabarık bir kod üretiliyor. İlk başladığımda büyük sorun yaşamıştım bununla ilgili onun için paylaşmak istedim.
Saygılar...
Makefile ince ayarların olduğu bi dosya. Ama Eclipse zaten bunu bizim yerimize otomatik oluşturduğu için uğraşmıyoruz.
Eğer çok gerekli olursa manuel olarakta verilebilir Eclipse'ye. berik.net'te bununda konusu geçmişti bi aralar.
Saygılar...
FxDev hocam sizide birazcıkta olsa Atmel tarafına doğru çekebildiysek ne mutlu:)
İlk başta hatta uzun bi süre ATmega8 biçok projede yeterde artar bile. Onunda topu topu iki Fuse Byte'ı var.
DataSheet'ten registerlere bakıp kod yazmak çok kolay Atmelde, PIC'ten çokta karışık değil daha kolay hatta.
Hadi hayırlısı :)
slmlar, gordugum kadariyla burda da bir avr vs pic savasi yasanmis:) yalniz bazi ufak noktalar atlanmis bence.. bildigim kadariyla avr ve pic mimarileri farkli.(gerci bazi kaynaklar ayni oldugunu soyluyor bazisi farkli belki bazi modellerde aynidir sadece:) ). sadece mips'e bakarak hizini belirleyemeyiz bence. PICde interruptlari saymazsak ki o da piyasadaki en dusuk latencye sahip, 3 instruction cycle, pic in skip komutlari haric hepsi 1 cycle, skiplerde 2. atmelde 3 ve ya 4 cycle'a kadar uzayan komutlar var. simdi biri bi isi 1 cycle da halledio, dieri belki 3. hangisi hizli o zmn:) bide pic'in komut seti daha kucuk sanirim, atmelde daha fazla galiba. pic 18flerde belki 16mips sinir var ama komut seti daha hizli diyebilcegimizi dusunuyorum:) onun disinda, bende ayri bi sardim bu aralar avr'ye, isten vakit bulabilirsem gomulcem ama iste is vaktin cogunu alip goturuyor maalesef:)
Alıntı yapılan: Elektroemre - 25 Mayıs 2010, 20:52:25
FxDev hocam sizide birazcıkta olsa Atmel tarafına doğru çekebildiysek ne mutlu:)
İlk başta hatta uzun bi süre ATmega8 biçok projede yeterde artar bile. Onunda topu topu iki Fuse Byte'ı var.
DataSheet'ten registerlere bakıp kod yazmak çok kolay Atmelde, PIC'ten çokta karışık değil daha kolay hatta.
Hadi hayırlısı :)
hocam çekmeye gerek yok zaten öyle olmalı :) bir konuda uzman olup diğerlerinden az çok bilmeli diye düşünüyorum gerçi ben programlama konusunda bilgili değilim ama bilenler mutlaka diğer işlemcileri öğrenmeli her işte böyle ne kadar çok çeşit o kadar ekmek :) heleki maliyetin önemli olduğunu düşünürsek dahada gerekli
Alıntı yapılan: XX_CİHAN_XX - 25 Mayıs 2010, 02:17:16
"nerdeyse" tüm komutlar 1 clock saykılında gerçekleştiriliyor.
PIC te ise bu 4 clock saykılı oluyor.
Dolayısıyla atmelde 12MHZ, 12MIPS hızını desteklerken, PICte 12MHz ancak ve ancak 3MIPS hızını veriyor. :)
Küçücük (2-3 liralık) ATtinny serileri 20MIPS hızında çalışabiliyor ve 4 kanal donanımsal PWM i var.
Bu özellikleri gördüğüm vakit PIClerle oynamayı bıraktım :)
tamam onu anladım da nasıl omutlar fecth,execute vs yapılıyor. içerde çarpıyor olmasın ?
takip ettiğim kadarı ile AVR C de bir pine istediğimiz değeri hitech deki gibi atamıyoruz sanırım....
PINB7=1;
yapamıyoruz yani????
Alıntı yapılan: FxDev - 25 Mayıs 2010, 23:13:05
Alıntı yapılan: serdararikan - 25 Mayıs 2010, 23:10:05
takip ettiğim kadarı ile AVR C de bir pine istediğimiz değeri hitech deki gibi atamıyoruz sanırım....
PINB7=1;
yapamıyoruz yani????
Pin tanımlamalarında Pic'e nazaran iki farklılık var...
Birincisi DDR, TRIS gibi aynı fakat TRIS'te 0x00 lar çıkışken, DDR'de giriş oluyor.
İkincisi ise RB0 gibi bir tanımlama maalesef olmuyor. PORT tanımlaması üzerinden işler maskeleme ile yürütülüyor.
evet hitech de buna çok alışmıştık.atmel de bu rahatlığı kullanamayacağız sanırım.
mesela PORTD nin 7. bitini 1 yapmak için
PORTD=(1<<PIND7);
şeklinde bir kullanılabilir.
Alıntı yapılan: muhittin_kaplan - 25 Mayıs 2010, 21:50:02
Alıntı yapılan: XX_CİHAN_XX - 25 Mayıs 2010, 02:17:16
"nerdeyse" tüm komutlar 1 clock saykılında gerçekleştiriliyor.
PIC te ise bu 4 clock saykılı oluyor.
Dolayısıyla atmelde 12MHZ, 12MIPS hızını desteklerken, PICte 12MHz ancak ve ancak 3MIPS hızını veriyor. :)
Küçücük (2-3 liralık) ATtinny serileri 20MIPS hızında çalışabiliyor ve 4 kanal donanımsal PWM i var.
Bu özellikleri gördüğüm vakit PIClerle oynamayı bıraktım :)
tamam onu anladım da nasıl omutlar fecth,execute vs yapılıyor. içerde çarpıyor olmasın ?
Aradığınız cevap datasheet te açıkça gösterilmiş. Görüldüğü gibi çarpma bölme felan yok :)
(http://img63.imageshack.us/img63/3486/sinedt.jpg)
Alıntı yapılan: serdararikan - 25 Mayıs 2010, 23:17:50
mesela PORTD nin 7. bitini 1 yapmak için
PORTD=(1<<PIND7);
şeklinde bir kullanılabilir.
Ben şu tarz bir yazım şeklini benimsedim, tavsiye ederim.
#define bitclr(x, y) x &= ~(1<<y)
#define bitset(x, y) x |= (1<<y)
Bu şekilde makromu tanımlıyorum.
bitset(PORTB, 0);
bitclr(SREG, 1);
Bu şekilde de kullanıyorum rahat oluyor.
Eğer if ile bir bitin konumunu soracaksamda,
if(bit_is_set(SREG, 0))
yada
if(bit_is_clear(PIND, 3))
Şeklinde yazıyorum.
Not: bit_is_set ve bit_is_clear makroları,
#include <avr/io.h>
dosyasında hazır olarak tanımlı bulunan bir makrodur...
evet bu set ve clear makroları hitechde de çoğu derleyicide de mevcut fakat test işlemi için böyle bir şeye gerek yok sanırım çünki PINX yazmacısadece okunabilen bir yazmaç olduğu için pin giriş olarak atandığında PIN6 şeklinde direk olarak pinin değerini test edebiliriz(tabiki test işlemi port için yapılacaksa!!)
Bu arada, ECLIPSE'nin hangisini kullanmam gerekiyor ( Galileo, Helios ) ve win avr'yi nasıl adapte ediyorsunuz?
Alıntı yapılan: papylon - 26 Mayıs 2010, 07:37:14
Bu arada, ECLIPSE'nin hangisini kullanmam gerekiyor ( Galileo, Helios ) ve win avr'yi nasıl adapte ediyorsunuz?
En alttaki mesaj:
https://www.picproje.org/index.php/topic,28431.30.html (https://www.picproje.org/index.php/topic,28431.30.html)
Sanırım becerdim arkadaşlar, Teşekkürler. :)
bu Eclipse Galileo C/C++ tam olarak ne işe yarıyor???
Alıntı yapılan: serdararikan - 26 Mayıs 2010, 14:51:22
bu Eclipse Galileo C/C++ tam olarak ne işe yarıyor???
Eclipse bir
IDE, AVR-GCC derleyicisini bu
IDE'a entegre edip kullanıyoruz. Kullanım kolaylığı sağlıyor. İsterseniz AVR Studio gibi farklı alternatifleride kullanbilirsiniz ama derleyicimiz hep aynı 'AVR-GCC'.
Saygılar...
[/quote]
Bugünlerde en sık kullandığım özelliği ise ctrl+boşluk tuşu na bastığınızda fonksiyonlarınızı göstermesi. Ya da ctrl ile fonksiyon ismine tıkladığınızda fonksiyonun yazılı olduğu alana sıçraması..
[/quote]
bu özellik çok iyiymiş.hep düşündüğüm şey buydu.bir visual basic kullanıcısı olarak kafamdan hep öyle bir editör olmalıki benim yazdığım fonksiyonları ben kodu yazarken bana göstersin parametrelerini hatırlatsın ve bende böylece kendime güzel bir kitiphane oluşturabileyim...
sanırım buna yakın bir özellik.henüz indirmedim ama indirip deneyecem.bilgi için teşekkürler
hiteck de var bu "." ya bastığınızda çıkar vb de
Alıntı yapılan: muhittin_kaplan - 26 Mayıs 2010, 22:34:27
hiteck de var bu "." ya bastığınızda çıkar vb de
nasıl yani??
Selam,
Bu Hi-Tech, AVR veya VB'nin özelliği degil editörün özelliğidir. Örnegin Visual Studio çok gelişmiş bir IDE dir. Editörü kopyalama, arama vb. işlemlerde ciddi kolaylıklar sağlar. MPLAB'ında bazı özellikleri vardır.
örneğin ;
-> Structure(yapılar) tanımladığınızda içindeki elemanlara MPLAB "EDİTÖRÜNÜN" desteği sayesinde ulaşabilirsiniz.
-> örnegin bir değişken adını proğram içinde kullanacağınız yerde CTRL + ALT OK yaparsanız tüm değişken ve registerlar görüntülenir. CTRL + SPACE yaptıgınızda değişkeninizin ismini editör otomatik olarak tamamlar.
Ve dahası...
Esen kalın.
doğrudur. dille değil IDE ile alakalıdır bu kolaylıklar.