avatar_Hattuşa

DSPIC ve proton24 kullanımı

Başlatan Hattuşa, 17 Aralık 2017, 10:46:46

Hattuşa

slm arkadaşlar;
16 bit mimarisinde dspic24 ve dspic33 ile çalışma yapan arkadaşlar varmı?
proton help kısmında proton24.pdf dosyasını inceleme fırsatım oldu. 16F ve 18F serilerine göre oldukça gelişmiş olan bu MCU lar ilgilimi çekmeye başladı ve özdizsandan 2 adet DSPIC33EP32MC204-I/PT siparişinde bulundum. bu MCU da yok yok, 70MSP hız 12 bit adc (500ksps hız) tft ekranların kontrolü vs vs.
açıkcası ne kadar kontrol edebiliyoruz merak ettim

Maxim

evet aynı denemeleri bende yapmak istiyorum ama bir türlü fırsat bulamadım
üstelik koskoca özellikleri olan DSPIC33EP32MC204 işlemcinin satış fiyatı 16TL (özdisan da)
içinde opamp falan var ya şaka gibi, bana uymayan tek şey 3.3 volt beslemeyle çalışmaları.

http://www.microchip.com/wwwproducts/en/dsPIC33EP32MC204


Features

        Operating Conditions
            3.0V to 3.6V, -40ºC to +85ºC, DC to 70 MIPS
            3.0V to 3.6V, -40ºC to +125ºC, DC to 60 MIPS
        dsPIC33E DSC Core
            Modified Harvard Architecture
            C Compiler Optimized Instruction Set
            16-bit Wide Data Path
            24-bit Wide Instructions
            16x16 Integer Multiply Operations
            32/16 and 16/16 Integer Divide Operations
            Two 40-bit Accumulators with Rounding and Saturation Options
            Single-Cycle Multiply and Accumulate
            Single-Cycle shifts for up to 40-bit Data
            16x16 Fractional Multiply/Divide Operations
        High-Speed PWM
            Up to three PWM pairs with independent timing
            Dead time for rising and falling edges
            7.14 ns PWM resolution
            PWM support for:- Inverters, PFC, Lighting- BLDC, PMSM, ACIM, SRM
            Programmable Fault inputs
            Flexible trigger configurations for ADC conversions
        Advanced Analog Features
            ADC module:- Configurable as 10-bit, 1.1 Msps with four S&H or12-bit, 500 ksps with one S&H
            Up to three Op amp/Comparators:- Op Amp direct connection to the ADC module- Additional dedicated comparator- Programmable references with 32 voltage points for comparators
            Charge Time Measurement Unit (CTMU):- Supports mTouch™ capacitive touch sensing
        Timers/Output Compare/Input Capture
            12 general purpose timers:- Five 16-bit and up to two 32-bit timers/counters- Four OC modules configurable as timers/counters- PTG module with two configurable timers/counters- 32-bit Quadrature Encoder Interface (QEI) module configurable as a timer/counter
            Four IC modules
            Peripheral Trigger Generator (PTG) for scheduling complex sequences
        Communication Interfaces
            Two UART modules (15 Mbps)
            Two 4-wire SPI modules (15 Mbps)
            Two I2C™ modules (up to 1 Mbaud) with SMBus support
            PPS to allow function remap
            Programmable Cyclic Redundancy Check (CRC)
        Direct Memory Access (DMA)
            4-channel DMA with user-selectable priority arbitration
            UART, SPI, ADC, IC, OC, and Timers



Hattuşa

MAXIM hocam;
stm32f103C8t6 kit ile ILI9341 2,3 inc tft dokunmatik ekranı kontrol ediyorum. C dili için henüz kendimi çok geliştiremediğim için hassas işlemler yapamıyorum. uzun vade de yapılacak işlerim bu C dili
ancak proton24.pdf sinin 179. sayfasında ILI9320 ye ait control komutları ve örneği 180. sayfada da dokunmatik ekranın kontrol komutları mevcut, açıkcası bundan basit bir deneme yapmak istiyorum. bu amaçla Dspic33 üsatın aldım. protonda destekliyor. bakalım nasipse başlangıç sıkıntılarını aşabilirsem kontrol edebileceğimi düşünüyorum. haftaiçi bişeyler yapmış olurum ve konuyu burada paylaşırım.

Maxim

evet, ILI9341 lcd için hem 18F hem 24 serisi için hazır kütüphane var (yanlış hatırlamıyorsam)

Burak

Kişisel fikrim , konfigürasyon kolaylığından dolayı ARM mimarisine yönelin .. 16 Bit ile değil 32 Bit ile çalışmaya başlayın .. Ayrıca fiyat/performans .. cabası ...

Tecrübeyle sabittir ....

Burak
Ω Gens Una Sumus Ω

Hattuşa

Burak usta;

haklısınız ancak C dili lazım ona, C için uğraşlar var sorun basic dili ile yazanlar C ye geçmekte biraz zorlanıyor yada ben zorlanıyorum. sizde bildiğim kadarıyla basic ile upraşıyorsunuz. C diline de hakimmisiniz? eğer bunu başardıysanız bize önerileride bulunun.

Burak

Basic insanları PIC'e PIC'te insanları Basic diline bağladı yıllardır .. Basic dil seviyesi olarak yüksek seviyeli bir dildir .. Yani insan tarafından anlaşılması çok kolay bir dildir .. Düşük seviyeli dillere örnek olarak ise makina dilini verebiliriz .. Yüksek seviyeli dillere örnek olarak Pascal , cobol , fortran ve basic gibi dilleri verebiliriz .. ve bu diler syntax olarak basit olduğu kadar yazım olarakta derleyicinin sunduğu kadar geniş olan bir kodlama gücüne sahiptir .. Lakin , orta seviyeli bir dil olan C ve ADA gibi diller ile birlikte artık yazılımcılar işin pointer ve adresleme aritmetiğinede hakim oldular dolayısıyla , parametre ve argüman değiş tokuş sistemi kullanıcıya tek bir hamlede yüzlerce adresteki yerel ve global değişkenlere ulaşabilir ve kontrol edebilir hale getirdi .. C dilini gözünüzde büyütmeyin .. Dilin gücü sadece kompleks gibi görünen yazım zorluğunda saklı .. Onun dışında C her zaman en iyi ve detay/kontrol gücü yüksek olan dil olarak kalacaktır ..

C dili için hepinize Kaan Aslan'ın A'dan Z'ye C Kılavuzu adlı kitabını öneririm .. Şayet piyasada bulunması neredeyse imkansız bir kitaptır .. Bu kitap yıllar önce basılmış ve kitabın bir örneğinin Kaan hocamda bile olmadığını iddia edebilirim :) .. C ile ilgili onlarca kitabı son 1 yılda hatim etmiş birisi olarak kesinlikle üzerine düşülmesi elzem bir dil olduğunu düşünüyorum hatta kaçınılmaz ... Çünkü artık bütün işlemci platformları C ile optimize edilmiş bir biçimde sunuluyor ... Ben yıllardır PIC mikroların 4 işlem yavaşlığından , FPU eksikliklerinden şikayetçi oldum , zamanla yarışılması gereken işlerdeki hantallıklarından kurtulmaya çalıştım .. Lakin bunu mimari değiştirerek başardım .. PIC32 serisi gerçekten inanılmaz bir işlemci ailesi .. Ama şiddetle ARM fiyat ve performansta inanılmaz önde giden bir dünya ... Arkasından birgün FPGA'lar gelecek .. hemde çok yaygın bir biçimde .. Ve onlara Basic ile ulaşamayacaksınız .. Sözüm o ki .. Bu işin sempatizanı iseniz Basic gerçekten size cennetin kapılarına kadar eşlik eder ... Lakin o kapıdan içeriye C ile girmek zorundasınız ... Umarım bu herşeyi kısaca ifade etmiştir ..

Burak
Ω Gens Una Sumus Ω

mehmet

Başlangıç olarak PC üzerinde başlayın. DEV C++ bu iş
için çok uygun olacaktır.
http://www.bloodshed.net/devcpp.html
Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
http://www.mehmetbilgi.net.tr

Maxim


Burak

Kaan Aslan'la iletişime geçiyorum , mesajlar atıyorum ama cevap gelmiyor .. Kitabın yeni bir baskısını halen beklemekteyiz lakin bu süreçte bu tür linklerden faydalanabilirsiniz .. Kitap linklerindeki pdf'ler eksik gibi görünmüyor .. Sadece okuması biraz zor .

Burak
Ω Gens Una Sumus Ω

Hattuşa

hocam sıkıntı C de ki komutları yazmak değil aslında, zira komutları yazdıp çıktıyı MCU da koştururken yaşanan sıkıntıları görebiliyorsun, bana sıkıntı yaratan çalışacağın MCU ya ait başlangıç ayarları, malum çalışacağımız MCU ların registerleri o kadar fazla ki ayar yapmak çile haline geliyor. bir diğer sıkıntı ise hazır fonksiyonların programa dahil edilmesi ve programı koştururken çağırılması, bahsettiğim sıkıntı kişiye özel sıkıntı olabilir yani benim anlayamadığım bir konu olabilir.
keşke bu site üzerinden belirlenen bir IDE ile C derslerini adım adım yapabilecek bir gönüllü olsa, elbette youtube kanalında onlarca kişi bişeyler paylaşmış ancak paylaşım esnasında soru sorulması gerektiğinde sıkıntılar başlıyor ki bu tip eğitimler forum üzerinden yapılsa daha verimli olur diye düşünüyorum.
yani basit eğitim videoları ve forumda kısım kısım C eğitimi için gönüllü bir hoca yokmudur? sitemizde böyle bir çalışma yapılabilir mi?

Hattuşa

bende necati ergin'in "C ders notları" adlı kitabını okumuştum güzel bir kaynak ilgilenenler için

c_kitap.pdf -  3.2 MB


Burak

Bu kitabı hakkıyla okuyup uygulayın .. İnceledim biraz önce ve dikkatimi çeken ilk şey C ve SistemProgramcıları Derneği'nden bir kişiye ait olduğunu farkettim , Kaan Aslan'da zaten bu derneğin başkanıydı .. Dolayısıyla onunda kitabından derlemeler de yapılmıştır diye düşünüyorum .. Eğitim olayına gelecek olursak , bu zaman isteyen birşey gönlümde kesinlikle böyle bir girişim arzusu var .. Zaman gösterecek .. Ama bu süreçte kitap ayırt etmeden dilin tüm özelliklerini kullanabileceğiniz bir IDE (Bloodshed C yada Turbo C gibi) ile çalışmaya başlamanız .. Basic'ten geçenler için C ilk baştan çok aykırı geliyor biliyorum ama benzetim yöntemlerini kullanınız .. Benzetememeye başladığınızda C'yi öğrenmeye , ayrımlarını görmeye başlamışsınızdır ..

Burak
Ω Gens Una Sumus Ω

mehmet

Hocam az çok mcu registerlerine ve sigorta ayarlarına
hakimsiniz.
MPLABX IDE bu konuda çok yardımcı oluyor. Mcu seçip
proje oluşturduğunuzda basit bir şekilde sigorta çm ayarlarına
ulaşıp istediğiniz değişikliği yapabiliyorsunuz. Çıktıyı
seçip projenize yapıştırıyorsunuz.

Başlangıç seviyesi için küçük yardımlarım olabilir elimden
geldiğince...
Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
http://www.mehmetbilgi.net.tr

Hattuşa

mehmet hocam;
neredeyse 1 aydır elime stm32f103c8t6 geçti datasheetinde 1.08 uS da adc okur yazıyor. ardiono ile bu mcu da adc okutuyorum. 1 haftadan daha uzun süredir uğraşıyorum bu "libadc.h" dosyasından adc registerlerini değiştiremedim. adc yi okuma süresini 5 uS altına çekemedim. bir kaç saat cubemx kurulum, kullanım vs vidoları izledim ama nafile, haa derdim o adc yi 1uS da okutmakta değil aslında zira bu sorunu bi şekilde aşılabilir. sorunum klasik kutuphanelerin içleri ile oynamak istediğimizde yaşayacağımız sorunların korkutması.

Powered by EzPortal