Picproje Elektronik Sitesi

MİKRODENETLEYİCİLER => Texas Instruments => Konuyu başlatan: Tagli - 23 Haziran 2021, 21:02:25

Başlık: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: Tagli - 23 Haziran 2021, 21:02:25
Daha önce hiç TI işlemcisi kullanmadım, ekosistemlerini bilmiyorum. Bir iş teklifinde, donanım tasarımı bitmiş, üzerinde TM4C123 olan bir karta yazılım yapılması talebiyle geldiler, ben de ilk kez bu sebeple araştırmaya başladım neymiş ne değilmiş diye.

TI TivaWare diye bir kütüphane sunuyor. ST'nin eski SPL'si gibi bir şey anladığım kadarıyla. Ancak bunun klasörünü ne kadar eşelediysem de, ST'den alıştığım CMSIS standartlarına göre oluşturulmuş register ve bit tanımlamalarını içeren cihaz header'larını bulamadım. Evet, kendi kütüphanerinde register ve bit tanımlamaları var ama hiç de ST'ninkilere benzemiyorlar. Hiç hoşuma gitmedi bu. Ben DONANIM->REGISTER gibi struct tabanlı tanımlamalara alışığım ve anladığım kadarıyla bu ST ile değil ARM CMSIS standartları ile ilgili bir notasyon.

İnternette araştırınca Github'da bu repoya (https://github.com/speters/CMSIS/tree/master/Device/TI/TM4C/Include) denk geldim. Tam aradığım şey. Ama en son 7 yıl önce güncellenmiş. TI ile resmi bir bağı yok, birisi nereden bulduysa koymuş bunları. Anladığım kadarıyla işlemciler için tüm register ve bit tanımlamaları ve özelliklerini içeren özel CMSIS-SVD dosyaları oluyor. Bunlar da özel programlara işlenerek istenilen dil vs. için header dosyaları oluşturulabiliyor. Tahminimce bu adam da bir yerden SVD'leri bulup kendisi header'ları üretmiş.

Benim anlamadığım, bu tür dosyaları TI neden kendisi vermiyor? Kendi sitelerinde ne CMSIS Device Header'larını ne de SVD dosyalarını bulamadım. Halbuki ST'nin Cube paketlerinin içinde tüm header'lar geliyor. Benim mi gözümden kaçıyor acaba? Malum TI'ın sitesine de alışık değilim, yolumu bulamamış olabilirim.
Başlık: Ynt: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: muhendisbey - 23 Haziran 2021, 22:55:02
https://www.ti.com/tool/EK-TM4C123GXL

Sitenin en altına doğru ICDI drivers'ın da bulunduğu kısımdaki dosyaları incelediniz mi? Keil MDK4 ile az derleme, az uygulama yapmadım. Bana da şimdi STM32'nin HAL ve CubeMX çok farklı geliyor kullanamıyorum.

Bir diğeri, yapacağınız iş çok register tabanına girmenizi gerektirmiyorsa ide olarak energia (arduino arayüzü) ile programlama yapabilirsiniz.

https://energia.nu/
Başlık: Ynt: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: JKramer - 24 Haziran 2021, 10:22:46
.svd'ler için burasını kullanıyorum, header,vs. üretmek de mümkün: https://github.com/posborne/cmsis-svd
Başlık: Ynt: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: dumansiz - 24 Haziran 2021, 11:27:04
Hazır konusu açılmışken ben de başka bir soru sorayım.
Bu serideki işlemcilerin digikeyde çok iyi stokları var.
Yeni projelerde kullanabilirim.
Yazdıklarınızdan anladığım kadarıyla geliştirme ortamı, STM32'nin geliştirme ortamından farklı.
Tiva C serisinde IDE ve derleyici olarak daha çok ne kullanılıyor?
Ücretsiz derleyicisi var mı?
Başlık: Ynt: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: muhendisbey - 24 Haziran 2021, 13:06:35
Ide'si farklı değil, KEIL ya da IAR ile derleyebilirsiniz. Bunun yanında TI'ın code composer studio derleyicisini de kullanabilirsiniz.

STM32'nin STD lib'inden programlama olarak farksız. HAL library'e göre farklı gelebilir. TI işlemciyle beraber ADC, PWM, UART... gibi örneklerle de gelir. Yani örnek projeyi açıp kodu onun üzerinde rahatlıkla geliştirebiliyorsunuz. Ben bu yöntemi çok sevdim ve uzun zaman kullandım.

Son zamanlarda daha hazırcı oldum. STM32 ile bile proje geliştireceksem Arduino IDE'si kullanıyorum. Sıkıldım sayfalarca datasheet okumaktan, vector table, interrupt priority ayarlamaktan. Bazen ne kadar ayarlarsan ayarla 1 hafta saçma sapan noktada takılıp kalıyorsun.
Başlık: Ynt: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: Tagli - 24 Haziran 2021, 13:52:13
Code Composer Studio diye Eclipse tabanlı bir IDE'si var, ancak maalesef Eclipse'in biraz eski bir versiyonunu kullanıyor gibi. Bazı eklentileri yüklerken hata verdi. Ayrıca kendi AppCenter gibi bir yeri var, oraya da bağlanamadı.

Ekleme: Yanlış anlaşılmasın, Eclipse'i severek kullanıyorum. Ancak Eclipse tabanlı bazı IDE'ler, dayandıkları Eclipse versiyonunu güncellemeyip birkaç yıl öncesinden kalma Eclipse kullanıyorlar. Bu da sıkıntılara neden oluyor. Cypress'in FX2 & FX3 için olan IDE'si de (adını unuttum) böyle, sanki 3-5 yıl geriden geliyor gibi.

IDE'de proje oluştururken TI'ın kendi derleyicisi veya GCC arasında seçim imkanı veriyor. İkisi için de linker script ve startup dosyalarını (en azından bir kısmını) kendisi üretiyor. Sonrasında boş bir main.c ile baş başa kalıyorsunuz.

Ben register seviyesinde kod yazmaktan hoşlanan biri olduğum için bu ekosistem benim hoşuma gitmedi. Daha önce bahsettiğim CMSIS headerlarını, TI'ın kendi forumlarında bir çalışanın paylaştığı bir .zip paketinde de buldum. Belki de asıl kaynak odur.

Bir de TI'ın kendi RTOS'u olan TI-RTOS'un inceledim - istemsiz bir şekilde kafamda hep "Tırt OS" diye sesleniyor. Ben FreeRTOS'ta olduğu gibi header ve source dosyalarını projeye ekleyip doğrudan kullanabilirim diye ummuştum ama anladığım kadarıyla öyle olmuyor. İllaki IDE üzerinden sağa sola tıklayıp bir çeşit konfigürasyon oluşturmak falan gerekiyor, ya da ben öyle anladım. Yani dosyaları bir ön işlemeden geçiriyor. Hiç hoşuma gitmedi bu.
Başlık: Ynt: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: muhendisbey - 24 Haziran 2021, 16:46:23
RTOS işine hiç girmedim, yorum yapmam doğru olmaz. Eskiden ide'si eclipse tabanlı değildi, sonradan eclipse modası çıkardılar, bu durumu ben de pek sevmiyorum. Benzer sebeple Atollic kullanmama sebebim de eclipse tabanlı oluşu.

Keil içerisinde CMSIS ile geliyor olabilir. Böyle bir sıkıntı ile karşılaşmadım. Example boards kısmındaki kendime en yakın projeler üzerinden yürüttüm kodlama işlemlerimi. Tiva'nın önceki adı stellaris idi. Stellarisware adlı bir kurulum paketi ile tek seferde Keil'e entegre oluyordu ve oradan direk kullanıyordum. Siz böyle deyince kendimi "acaba CMSIS ile hiç muhatap olmadım mı?" diye sorguluyorum cevabım yok. Ekstra CMSIS indirdiğimi hatırlamıyorum.
Başlık: Ynt: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: sinus - 24 Haziran 2021, 22:18:09
Alıntı yapılan: Tagli - 23 Haziran 2021, 21:02:25Ben DONANIM->REGISTER gibi struct tabanlı tanımlamalara alışığım ve anladığım kadarıyla bu ST ile değil ARM CMSIS standartları ile ilgili bir notasyon.

https://www.youtube.com/watch?v=xkAT9MXh8UY&list=PLmfT_cdP5PYBWYvK_bCdGyBqQEiRzUPeq&index=7 bu videolarda istediğiniz yapıda bir programlama anlatılıyor.


https://dev.ti.com/tirex/ buradan da TI'ın tüm denetleyici ve boardlarıyla ilgili bilgilere ulaşabilirsiniz.
Başlık: Ynt: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: RaMu - 25 Haziran 2021, 22:16:16
Alıntı yapılan: Tagli - 23 Haziran 2021, 21:02:25... Bir iş teklifinde, donanım tasarımı bitmiş, üzerinde TM4C123 olan bir karta yazılım yapılması talebiyle geldiler, ben de ilk kez bu sebeple araştırmaya başladım neymiş ne değilmiş diye.
...
Ben olsam TM4C123 yerine lehimlenecek şekilde, ST bir mcu ya dönüştürücü çizer, bildiğim mcu ya yazardım kodu.
Başlık: Ynt: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: halil82ist - 26 Haziran 2021, 09:27:21
Alıntı yapılan: RaMu - 25 Haziran 2021, 22:16:16Ben olsam TM4C123 yerine lehimlenecek şekilde, ST bir mcu ya dönüştürücü çizer, bildiğim mcu ya yazardım kodu.

muhtemelen piyasada st işlemci yok diye öyle yapmışlardır  . Bizde msp430 a çevirmeye uğraşıyoruz .
Başlık: Ynt: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: Tagli - 26 Haziran 2021, 09:50:15
@halil82ist Yok, anladığım kadarıyla cihaz donanımı 5-6 yıl önce tasarlanmış (en azından o tarihlerde başlamış), ama hem aciliyet olmamış hem de araya başka işler girince pek üzerinde durmamışlar, kalmış öyle. Hatta işlemciyi zamanında seçen arkadaş şimdi artık o firmada çalışmıyor bile. Seçmiş oldukları işlemcinin güncel tedarik sorunlarından pek etkilenmemesi tamamen şans yani...
Başlık: Ynt: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: muhendisbey - 26 Haziran 2021, 12:46:55
Alıntı yapılan: Tagli - 26 Haziran 2021, 09:50:15Seçmiş oldukları işlemcinin güncel tedarik sorunlarından pek etkilenmemesi tamamen şans yani...

Aslında pek şans değil. TI ve Cortex M4 denince ilk akla gelen, uzun süredir üretimde olan bir MCU. Launchpad serisi geliştirme kartları çok fazla tutmuş geliştirme kartlarından. Bugün bile bulunuyor olması da bu yüzden. İlk etapta bir ARM işlemcisi geliştirme kartı iken, arduino platformuna taşınması kartı popüler hale getirdi. Birçok M4 serisi mikrodenetleyicide EEPROM dahili olarak bulunmazken bu seride 2kb EEPROM dahili olarak gelmekte. Bu ciddi bir avantaj. Üstelik zamanında 5 dolar gibi rakam ile satıldı, kargo ücreti dahil.
Başlık: Ynt: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: neccarzade - 26 Haziran 2021, 22:12:48
Konuyla ilgilenen arkadaşlar olursa diye eklemek istedim. Üniversiteden bir hocamız lisansta mikro dersimizde eski versiyonu olan stellaris kitini anlatmıştı bizlere. Pandemi sürecinde tiva m4 serisini ders olarak eklemiş kanalında. Faydalanmak isteyenler için link: https://www.youtube.com/playlist?list=PL-eKWUr5h4myBzqmyVgmhaZztvl7gbR4E
Başlık: Ynt: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: RaMu - 16 Temmuz 2021, 08:49:52
Alıntı yapılan: RaMu - 25 Haziran 2021, 22:16:16Ben olsam TM4C123 yerine lehimlenecek şekilde, ST bir mcu ya dönüştürücü çizer, bildiğim mcu ya yazardım kodu.


Gülme komşuna gelir başına :)

@Tagli durum nedir, projeyi kabul ettin mi?
Bende benzer bir iş için TI nin TMS570 mcu suna başladım.
HalCoGen ve CSS kullanacağım, led blink aşamasını az çok geçtim, bakalım neler bekliyor bizi.
Başlık: Ynt: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: Tagli - 16 Temmuz 2021, 09:18:18
@RaMu , hayır, projeyi kabul etmedik. İşlemci tercihi dışında daha ciddi başka sorunlar da vardı. Teklifi getirenlerin muhtemelen düşündüklerinin aksine, epey zaman ve insan kaynağı gerektirecek uzun soluklu büyük bir projeydi ve bizim gerekli kaynaklarımız yoktu. Şu kadarını söyleyeyim: Projenin FDA'dan onay alması gerekiyordu. Muhtemelen kod yazmak için harcayacağımız zamanın 5 katını testler ve evrak işleri için harcamamız gerekecekti.

Neyse, şimdilik TM4C123 maceram rafa kalkmış oldu. Yine de bu vesile ile güncel durumdan biraz haberim oldu.

Alıntı yapılan: Tagli - 26 Haziran 2021, 09:50:15Hatta işlemciyi zamanında seçen arkadaş şimdi artık o firmada çalışmıyor bile.
Bu proje ve birlikte çalışma ihtimali o zaman da gündeme gelmiş ve bu arkadaş bana o zaman Tiva C Series Launchpad aldırmıştı. 1-2 hafta sonra da işten çıkmıştı :) Hala blinky bile yapmadım, kart öyle duruyor. Başka bahara kaldı artık...
Başlık: Ynt: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: RaMu - 16 Temmuz 2021, 23:06:46
Alıntı yapılan: Tagli - 16 Temmuz 2021, 09:18:18@RaMu , hayır, projeyi kabul etmedik. ...

 Şu kadarını söyleyeyim: Projenin FDA'dan onay alması gerekiyordu. Muhtemelen kod yazmak için harcayacağımız zamanın 5 katını testler ve evrak işleri için harcamamız gerekecekti.

...

Bizimde SIL4 isteri var. Aynı durum sözkonusu. Yalnız bu standartları isteyen işler gördüğüm kadarıyla ne kadar yazı çizi onay uğraştırsada çok iyi projeler, yapılası işler.
Bir şekilde bu taraftada kendimizi geliştirmek seviye atlamak gibi olacak.

Alıntı yapılan: Tagli - 16 Temmuz 2021, 09:18:18@RaMu
 ...
Tiva C Series Launchpad aldırmıştı. 1-2 hafta sonra da işten çıkmıştı :) Hala blinky bile yapmadım, kart öyle duruyor. Başka bahara kaldı artık...
HalCoGen ve CCS ile yarım saatte halledersiniz blinky yi. Arada deneyin güzel Safety Critical mcuları var TI nin, bir gün işe yarar. Şimdiden keşke daha önceden baksaymışım diyorum.
Başlık: Ynt: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: fahri- - 17 Temmuz 2021, 09:33:18
Alıntı yapılan: RaMu - 16 Temmuz 2021, 23:06:46Bizimde SIL4 isteri var
@RaMu
Hocam SIL ile ilgili detaylı döküman var mı paylaşabileceğiniz?
Başlık: Ynt: Tiva C (TM4C123) CMSIS Device Header Dosyaları
Gönderen: RaMu - 17 Temmuz 2021, 13:01:06
Alıntı yapılan: fahri- - 17 Temmuz 2021, 09:33:18@RaMu
Hocam SIL ile ilgili detaylı döküman var mı paylaşabileceğiniz?

Bende yeni başladım SIL işine.
Olayı anlamak adına genel bir tarama yapıyorum.
TI, ST, Microchip sitelerinde konu hakkında ne yazmış bakınca sanki bir kuşbakışı çıkıyor.
Özelikle TI bu konuda önde gibi.
En yüksek standart olan SIL4 için mcu su var ve yanlış anlamadıysam HalCoGen ve CCS ile direk standarta uygun kod üretilebiliyor.
SIL seviyeleri temelde ürünün neden olabileceği can ve mal kaybının büyüklüğüne göre sınıflandırılmış.
Otomotiv, medikal, demiryolu ve havacılık gibi ana gruplar ele alınmış.

Konu Functional Safety olarak anılıyor, aramalarda anahtar kelime bu.
IEC61508 ana kaynak.
Musluğu baş taraflarında synopsys var herhalde,
https://search.synopsys.com/?q=what%20is%20functional%20safety&lang-id=en

https://www.ti.com/technologies/functional-safety/overview.html

https://www.st.com/content/st_com/en/ecosystems/functionalsafety.html


https://youtu.be/qSVgshwVP_s

https://youtu.be/WnS2sOdNO5s