Jumat, 11 Januari 2013

Perancangan Sistem Minimum STM32F103R

Sistem Minimum atau yang biasa disebut Sismin adalah suatu rangkaian yang dirancang dengan menggunakan komponen-komponen seminimum mungkin untuk mendukung kerja mikrokontroler sesuai  yang kita inginkan.  Komponen tersebut antara lain: 

1.    Mikrokontroler STM32F103x
         STM32F103x adalah salah satu jenis mikrokontroler 32 bit arsitektur ARM yang 
         dikembangkan oleh STMicroelectronics.Mikrokontroler ini termasuk dalam keluarga
         seri Cortex-M. Prosesor di keluarga seri Cortex­-M telah dikembangkan khusus
         untuk domain mikrokontroler, dimana permintaan untuk kecepatan, determinasi
         waktu proses, dan manajemen interrupt bersama dengan jumlah gate silikon minimum
         (luas silikon yang minimum menentukan harga akhir prosesor) dan konsumsi daya
         yang minimum sangat diminati. 

2.   Catu Daya 
     Power supply pastinya untuk menyediakan tegangan kepada mikrokontroler. Tegangannya bisa beda-beda ada yang pakai sistem 5V, 3.3v.Untuk STM32F103x tegangan agar dia bisa bekerja antara 2-3,6 v.Jika masukan tegangan lebih besar dari tegangan kerja diperlukan sebuah rangkaian regulator untuk menyesuaikan tegangan sesuai dengan tegangan kerja.Di bawah ini adalah rangkaian regulator menggunakan IC LM 1117.


Rangkaian Regulator 3,3 Volt



3. Osilator 
      Osilator merupakan sumber clock untuk memberikan pewaktuan/timing 
                  kepada mikrokontroler. Bisa menggunakan eksternal kristal atau osilator
                  internal RC.
Rangkaian osilator

4.  Tombol Reset
Mikrokontroler harus reset setiap kali power supply dinyalakan (power on reset) agar mikro bisa menginisialisasi semua peripheral internalnya dan agar bisa memulai program dari awal. Rangkaian reset sebenarnya cukup menggunakan rangkaian RC, yang nantinya tergantung apakah sinyal reset aktif low atau aktif high. 
Rangkaian Reset


5.   Pin Input/Output   
            Pin input/output digunakan untuk interface dengan perangkat lain atau  
      device lain.
Port Input Output
 

6.  Downloader In System Programming                          
           Mikrokontroler STM32 dilengkapi dengan bootROM yang dapat digunakan untuk memprogram memori Flah internal STM32F103x melalui UART.0 yang terdiri dari Tx dan Rx.Dengan demikian program yang terdapata di mikrokontroler dapat diupdate tanpa harus melepas mikrokontroler dari board.

                  Program yang terdapat di BootROM akan dijalankan setiap kali mikrokontroler dinyalakan atau direset.Program tersebut, dikenal dengan nama BootROM bootloader, dapat menjalankan rutin untuk mengupdate program di mikrokontroler atau menjalankan program pengguna.   

Tabel Konfigurasi Boot mode

         Jika konfigurasi pin BOOT0 dan BOOT1 pada opsi system memory, mikrokontroler booting ke system memory (internal boot ROM memory) dan mengakses bootloader yang sudah tersedia didalamnya. Bootloader bertugas untuk mendownload program yang kita buat ke dalam internal flash memory. Mode ini dilakukan dengan protokol yang sederhana yaitu dengan protokol USART. Dengan USART, komunikasi dilakukan cukup dengan menyambungkan pin Tx dan Rx (PA9 dan PA10) ke pin Rx dan Tx PC.Setelah download program selesai, atur kembali pin BOOT0 dan BOOT1 pada opsi user flash memory dan kemudian menekan tombol reset agar mikrokontroler kembali booting ke internal flash memory dan menjalankan program yang sudah di load. 
           Untuk memasukkan program yang sudah dicompile ke mikrokontroler menggunakan usb to serial, disini menggunakn IC FT232R.

Silahkan di share dengan menuliskan sumbernya..

Created by: Rifqi Arridho Abid
    

Kamis, 10 Januari 2013

Mengenal ARM Cortex M3

Setelah anda mempelajari arsitektur ARM, kini saatnya mengenal berbagai jenis keluarga mikroprosesor ARM. Mikroprosesor ARM mempunyai beberapa jenis/ tipe untuk menjangkau berbagai aplikasi.


Jenis/tipe mikroprosesor ARM dibagi menjadi 3 yaitu:
  1. Classic ARM Processors
  2. ARM klasik adalah keluarga ARM prosesor yang pertama kali dirilis oleh ARM Ltd (sekarang ARM). Prosesor ARM klasik ideal untuk pengguna yang ingin menggunakan teknologi telah teruji di pasar. Prosesor­prosesor ini telah digunakan untuk berbagai macam produk elektronik selama     bertahun­-tahun. Desainer produk elektronik yang memilih prosesor­prosesor ini dijamin mempunyai         dukungan ekosistem dan sumber daya yang luas, tingkat kesulitan integrasi yang minimum, dan         menurunkan waktu desain. Dalam ARM klasik terdiri dari ARM 7, ARM9, ARM 11.

  3. Embedded Cortex Processors
  4. Prosesor di keluarga seri Cortex­-M telah dikembangkan khusus untuk domain mikrokontroler, dimana permintaan untuk kecepatan, determinasi waktu proses, dan manajemen interrupt bersama dengan jumlah gate silikon minimum (luas silikon yang minimum menentukan harga akhir prosesor) dan konsumsi daya yang minimum sangat diminati. Contoh aplikasi prosesor Cortex­-M adalah mikrokontroller dan sensor cerdas.
    Prosesor di keluarga seri Cortex-­R, sebaliknya, dikembangkan khusus untuk keperluan real­time yang mendalam, dimana kebutuhan konsumsi daya minimum dan sifat interrupt yang terprediksi diimbangi dengan performa yang luar biasa dan kompatibilitas yang kuat dengan platform yang telah ada. Contoh aplikasi prosesor Cortex-­R adalah ABS (Automotive Braking Systems), kontroler elektronik roda gigi, hidrolik, dan mesin otomotif.Dalam ARM Embedded terdiri dari Cortex M0, Cortex M1, Cortex M3, dan Cortex R4.



  5. Application Cortex Processors
  6. Prosesor jenis ini dikembangkan untuk aplikasi yang membutuhkan daya komputasi yang tinggi (frekuensi prosesing rata-­rata 2GHz), seperti netbook, mobile internet devices, smartphone, dan lain-­lain.Dalam ARM application terdiri dari Cortex A5, Cortex A8, Cortex A9.
    Setelah kita mengetahui berbagai jenis dari keluarga ARM , maka kita dengan mudah menentukan jenis mana yang akan kita gunakan. Karena kebutuhan penulis saat ini sedang mengembangkan sebuah sistem embedded, maka prosesor yang dipilih adalah dari jenis ARM embedde cortex processor, yaitu Cortex M3.


    ARM Cortex-­M3


    ARM Cortex-­M3 adalah prosesor dari keluarga ARM Cortex prosesor embedded untuk menggantikan aplikasi mikrokontroler 8­/16­bit. Keunggulan ARM Cortex­-M3 dibandingkan mikrokontroler 8­/16­bit terletak pada :
    • Kemampuan komputasi yang lebih tinggi untuk frekuensi kerja yang sama
    • Konsumsi daya yang lebih kecil atau sama
    • Harga yang lebih murah atau sama
    • Kompatibel dengan ARM Cortex­-M lain (ARM Cortex-­M0, ARM Cortex-­M4). Aplikasi yang di   compile untuk ARM Cortex­-M3 bisa dijalankan di ARM Cortex-­M lainnya. Hal ini berguna untuk     upgrade hardware, tanpa membuang software yang sudah dikerjakan.

Silahkan di share dengan menuliskan sumbernya..

Created by: Rifqi Arridho Abid

Mengenal Arsitektur ARM

ARM adalah prosesor dengan arsitektur set instruksi 32­bit RISC (Reduced Instruction Set Computer) yang dikembangkan oleh ARM Holdings. ARM merupakan singkatan dari Advanced RISC Machine (sebelumnya lebih dikenal dengan kepanjangan Acorn RISC Machine). Pada awalnya ARM prosesor dikembangkan untuk PC (Personal Computer) oleh Acorn Computers, sebelum dominasi Intel x86 prosesor­ Microsoft di IBM PC kompatibel menyebabkan Acorn Computers bangkrut.

Pada tahun 2007, sekitar 98% dari satu miliar mobile phone yang terjual menggunakan setidaknya satu buah prosesor ARM. Dan pada tahun 2009, prosesor ARM mendominasi sekitar 90% dari keseluruhan pasar prosesor 32-bit RISC. Prosesor ARM digunakan di berbagai bidang seperti elektronik umum, termasuk PDA, mobile phone, media player, music player, game console genggam, kalkulator dan periperal komputer seperti hard disk drive dan router.

Lisensi arsitektur ARM dimiliki oleh Alcatel, Atmel, Broadcom, Cirrus Logic, Digital Equipment Corporation, Freescale, Intel melalui DEC, LG, Marvell Technology Group, NEC, NVIDIA, NXP Semiconductors, OKI, Quallcomm, Samsung, Sharp, ST Microelectronics, Symbios Logic, Texas Instruments, VLSI Technology, Yamah dan ZiiLABS.Perlu diketahui bahwa disini ARM hanya menjual arsitekturnya kepada vendor yang membutuhkan bukan membuat IC nya.

Fitur ARM :
•32 bit RISC Processor
•Register R0 – R16
•Load and Store architecture
•Uniform and fixed length instructions
•Good speed and power consumption ratio
•High code density
•Single cycle execution
•Speed 1 MHz – 1.25 GHz

•Support Java jezelle DBX (direct byte code execution)
•DSP enhanced instructions
•In build circuit for debugging
•Againts RISC
   –32 bit barrel shifter
   –Conditional execution of all instructions


Di bawah ini adalah diagram Core ARM :



Register
  • ARM mempunyai 37 register yang panjangnya 32 bit
  • 1 program counter register
  • 1 program status register
  • 5 saved program status register
  • 30 general purpose register


Silahkan di share dengan menuliskan sumbernya..
Created by: Rifqi Arridho Abid

Selasa, 08 Januari 2013

Belajar ARM Mikroprosesor

Setelah beberapa minggu mengerjakan tugas besar mata kuliah mikroprosesor dan sistem embedded yang diwajibkan menggunakan prosesor ARM sebagai "otaknya", Alhamdulillah akhirnya selesai juga :D
Ini kali pertama saya menggunakan prosesor ARM, yang sebelumnya sudah terbiasa dimanjakan dengan prosesor jenis AVR.Setelah mencari-cari beberapa referensi yang kebanyakan masih menggunakan bahasa Inggris *karena masih sedikit banget referensi tentang ARM dalam bahasa Indonesia* akhirnya tugas ini bisa selesai tepat waktu dan hasilnya memuaskan.Oleh karena itu saya ingin berbagi semua tentang apa yang telah saya dapat saat mengerjakan tugas ini mulai dari arsitektur, perancangan hardware, sampai programmingnya .. langsung saja, disini akan saya bagi menjadi beberapa topik dan tentunya akan dimulai dengan kenalan dulu dengan ARM *biar makin sayang dg ARM :D*.Semoga artikel ini bisa membantu dan dijadikan referensi yang ingin belajar ARM, khususnya ARM Cortex-M3.

  1. Berkenalan dengan arsitektur ARM
  2. Berkenalan dengan ARM Cortex M3
  3. Perancangan Hardware STM32F103x
  4. Programming ARM

Silahkan di share dengan menuliskan sumbernya..
Created by: Rifqi Arridho Abid