Membuat perpustakaan Anda sendiri cukup sederhana. Dokumentasi spec register mereka cukup bagus, sebagian besar jika tidak semua periferal mudah dipasang. Saya merasa jauh lebih menyakitkan untuk menggunakan perpustakaan mereka. tapi mungkin itu hanya aku. Ini berlaku untuk st, nxp, ti, atmel untuk beberapa nama (tidak terlalu banyak untuk intel dan microchip).
Mengapa mereka mengganti perpustakaan, bisa karena sejumlah alasan, beberapa bos baru mengambil alih, beberapa divisi ditutup dan yang lain mengambil alih. Pemasaran menginginkan citra baru untuk produk tersebut. Seperti yang disebutkan ElectronS, bisa menjadi upaya untuk menjauh dari perangkat keras lebih untuk menarik pengguna yang tidak mau atau tidak mampu melakukan bare metal. Saya akan melangkah lebih jauh tentang itu dan mengatakan mereka mungkin mencoba bersaing dengan fenomena Arduino. Yang tidur dan semua orang selalu berusaha melakukan dan gagal (bahkan sebelum Arduino).
Bagaimanapun juga semakin jauh dari perangkat keras itu semakin membengkak dan lebih lambat, sehingga semakin banyak Anda harus menghabiskan per unit untuk rom, ram dan mhz. Hanya agar Anda bisa menghabiskan jumlah waktu pemrograman yang sama? Hanya melakukannya secara berbeda?
Anda mengatakan Anda berasal dari dunia PIC, sekarang mereka melakukan pekerjaan yang baik-baik saja dengan peralatan, dokumen chip mereka sangat mengerikan, beberapa yang terburuk. mereka dikompensasi dengan perpustakaan dan kotak pasir.
Pada akhirnya, cobalah berbagai pilihan, coba produk yang bersaing untuk melihat bagaimana alat mereka membandingkan. Banyak hal yang dapat Anda lakukan secara gratis hanya untuk melihat apakah itu masuk akal dan Anda dapat menyusun barang. Mungkin bahkan menggunakan set instruksi simulator. Temukan yang cocok untuk Anda.
Catatan, opsi tanpa pustaka kalengan SELALU tersedia untuk Anda. Anda tidak terbatas pada toolchain apa yang dapat Anda gunakan, sistem operasi host apa, ide apa, editor, dll. Mereka mungkin menempel pada Anda pada pemrograman bagian-bagian, jika opsi mereka sangat terbatas dalam hal pindah ke beberapa chip lain atau vendor jika Anda bisa.
Untuk menjual produk chip seperti ini, mereka harus menyediakan lingkungan pengembangan baik itu milik mereka atau barang gratis yang direkatkan bersama. Dan mereka cenderung menyatukan perpustakaan. Itu hanya harus terlihat cukup baik dan kedipan contoh yang dipimpin bekerja dengan cukup baik untuk membuat manajemen Anda atau tim perangkat keras Anda mendesain produk mereka, maka ketika produk papan Anda dilemparkan ke dinding ke perangkat lunak, adalah ketika rasa sakit tidak atau tidak tiba. Jika hampir berhasil tetapi tidak cukup merupakan kemenangan besar bagi vendor chip karena Anda sekarang akan membayar untuk dukungan teknis untuk itu sedikit terakhir. Jadi adalah kepentingan terbaik mereka untuk berada di sana tetapi tidak cukup.
Vendor chip hanya perlu terlihat cukup baik untuk mendapatkan kemenangan desain. Mereka harus terus meningkatkan (mengubah) produk untuk menarik pelanggan baru dan lama. Jadi mereka harus melakukan overs, seberapa jauh jarak dan berapa banyak perpustakaan sebelumnya yang terus didukung, bervariasi. Jadi hampir semua perpustakaan yang Anda gunakan akan hilang pada akhirnya. Jadi belajar beradaptasi (atau jangan gunakan barang-barang mereka dan pergi sendiri, yang dapat Anda dukung tanpa batas). Memang, idealnya, Anda hanya perlu mengembangkan aplikasi sekali per produk, membuat firmware Anda sempurna (semoga berhasil jika menggunakan perpustakaan pihak ketiga), dan Anda tidak perlu kembali dan menemukan komputer yang akan memuat toolchain mereka jika Anda dapat menemukan salinannya, dan ingat bagaimana menggunakan perpustakaan lama itu. Ingat tidak hanya Anda harus menyimpan kode sumber Anda, tetapi Anda harus menyimpan semua alat dan dokumen mereka.
Pustaka mereka hanya didukung pada biasanya satu toolchain, di bawah satu mungkin dua IDE dan kadang-kadang hanya pada Windows, dan versi tertentu. Sekali lagi Anda tidak memiliki batasan itu, pasti bukan untuk ARM, jika Anda melakukan hal Anda sendiri. Anda selalu dapat membaca salah satu / semua perpustakaan mereka untuk melihat bagaimana mereka melakukan sesuatu. Tapi itu seringkali sangat menakutkan, mereka tidak menggunakan pengembang tim A mereka untuk perpustakaan, saya telah mengekstrak beberapa baris kode untuk bertanya kepada kandidat wawancara apa yang salah dengan kode ini.
untuk menghemat waktu dan tenaga baik di sisi silikon dan sisi perangkat lunak mereka sangat sering mendaur ulang ip yang sama, jadi setelah Anda melihat bagaimana perangkat bekerja pada salah satu chip mereka sering bekerja dengan cara yang sama pada banyak chip lainnya. Ya sistem jam bisa rumit dengan atau tanpa perpustakaan mereka. Peluang yang tinggi untuk merusak chip, di situlah sebagian besar chip / board bricking saya terjadi. Membantu memahami cara kerja chip mereka, misalnya AVR's, sebagian besar jika tidak semua, dapat diprogram ulang saat chip di reset, sehingga setiap kode buruk yang mengacaukan pin yang diperlukan untuk memprogram ulang, atau menggantung logika yang diperlukan untuk memprogram ulang, tidak masalah, Anda dapat memprogram ulang chip tersebut. Beberapa vendor ini (st adalah satu) memiliki bootloader internal yang dapat Anda pilih menggunakan tali (BOOT0 misalnya di dunia st),
Satu ukuran cocok untuk semua, tidak ada yang cocok. Terutama berlaku untuk perangkat lunak. Jadi setiap upaya untuk mengabstraksi perangkat keras, hanya membuatnya lambat dan kembung. Mungkin juga dapatkan chip yang lebih besar dan jalankan linux di atasnya, jika itu yang Anda cari. Banyak dari ini karena para pengembang, tidak ingin tangan mereka kotor, jadi kami pada dasarnya meminta ini, dan mereka mencoba untuk memasoknya.
Sekali lagi, jangan mengunci diri Anda di st atau vendor mana pun (kecuali sudah terlambat dan manajemen dan atau tim perangkat keras telah menempelkannya kepada Anda, perhatikan bahwa produk stm32 bagus dan mudah digunakan). Melihat-lihat. TI memasukkan banyak telur ke dalam keranjang korteks-m4. Anda dapat melakukan beberapa hal pada sejumlah produk lengan ini serta solusi yang didukung vendor.
Satu hal yang selalu dapat Anda andalkan, adalah bahwa mereka akan mengubah perpustakaan dari waktu ke waktu dan pada akhirnya berhenti mendukung perpustakaan yang sudah biasa Anda gunakan.