atmega32>atmega8 I2c modülleri ve komutları farklımıdır ?

Başlatan coco, 20 Kasım 2011, 13:48:13

coco

Codevision AVR ile Atmega32 için yazılmış I2c  portunda aldığı bilgileri Lcd ekranda gösteren programı çip ismi değiştirilerek Atmega8 için derlendiğide sadece açılış ekranı çalıştı I2c portundan aldığı bilgileri göstermesi çalışmadı.
Sorun ne olabilir?Çipler içindeki I2c modülleri ve komutları farklımıdır?

mozkan87

Code vision avr için chip ismi değiştirerek değilde, yeni chip için proje oluşturup kodun uygun yerlerini kopyala yapıştır yaparak deneyebilirsiniz. Belki register isimlerinde farklılıklar olabilir o yüzden dikkatli olmak gerekir. Kolay gelsin.

Kabil ATICI

Her iki işlemci ciddi şekilde farklılık gösteriyor. Atmega8 atmega32'ye göre oldukça kırpılmış bir donanıma sahip.

i2c komut ve kullanımı aynı olması gerekiyor. Gördüğüm kadarıyla da aynı. bağladığın i2c donanımıyla ilgili bir şey olabilir.

örneğin

                     sda                  scl
atmega8       pc4                  pc5
atmega32     pc1                  pc0
bu bacak değişikliği?

veya bağladığın i2c ürünü ile ilgili bir bir sorun olabilir.

kolay gelsin.
ambar7

coco

Yeni bir Atmega8L  Projesi  oluşturup ilgili kısımları kopyala yapıştır yapıp  denedim...Atmega8L için olan portC4 portC5 pinlerne göre uyarladım sonuç aynı.

Programlayıcıdan Internal osilator 8mhz aktif yani işaretli olarak " CKSEL0,CKSEL1, CKSEL3, SUT0, BOOTZ0 ,BOOTZ1," ayarladım doğrumudur?

Kabil ATICI

Ben atmel avrstudio kullanıyorum,  sigorta ayaları farklı şekilde gösteriliyor. (sigorta gruplarını isim ve seçenek vererek görüntüleniyor.) O yüzden bu konuda yardımcı olamayabilirim.

Ama programı incelemek gerekebilir. Programda işlemcini ram bölümü kullanılıyorsa,atmega8'in ram adresi dışında kalırsa sorun olabilir.
ambar7