Jumat, 28 Juli 2017

Rangkaian Running LED dengan Mikrokontroler ATmega8535

Job 1. Rangkaian LED menggunakan Mikrokontroler ATmega8535.

         A.     Penggunaan Software CodeVision AVR untuk membuat menjalankan Program Runing LED.

1.      Jalankan Aplikasi CodeVision AVR .

2.      Pada menubar pilih File lalu klik New. Lalu Pilih Project

      


3.      Kemudian pilih yes pada form konfirmasi ini.


4.      Akan muncul Form berikut ini untuk memilih type chip yang akan digunakan. Disini kita akan menggunakan type chip ATmega.


5.      Kemudian pada form selanjutnya kita akan mengatur Chip yang kita gunakan dan berapa besaran Crystal yang dipakai. Disesuaikan dengan Alat kita.


6.      Selanjutnya adalah dengan mengatur Port I/O yang akan kita gunakan. Kemudian saya contohkan mengatur PORT C sebagai keluaran untuk menyalakan 7segment, maka kita akan melakukan pengaturannya sebagai berikut.


7.      Lalu di menubar pilih Program dan klik Generate, Save and Exit.


8.      Langkah selanjutnya ialah dengan menyimpan program yang telah dibuat, kalau bisa Setiap Nama Program dibuat sama agar lebih mudah di temukan.



9.      Kemudian pada Listing Program seperti dibawah ini. Tambahkan deklarasi #include <delay.h>  untuk mengatur delay pada program.


10.  Kemudian pada bagian while  pada listing code programnya . diisi sebagai berikut yang itu program LED Berkedip.


11.  Setelah Program dibuat . Pada menubar pilih Project , klik Check Syntax untuk mengecek apakah ada listing program yang salah pada saat pengetikan.


12.  Untuk hasilnya bisa dilihat di bagian bawah aplikasi program , apabila kosong maka program bener .


13.  Lalu pada menubar pilih Project , klik Compile / langsung tekan F9. Dan Hasilnya diForm yang akan muncul, apabila No Erros maka Program bagus / benar.


14.  Dan pada menubar pilih Project , klik Build All / langsung tekan Ctrl+F9. Dan Hasilnya diForm yang akan muncul, apabila No Erros maka Program bagus / benar.



15.  Selanjutnya untuk menjalankan Program dirangkaian. Saya menggunakan Program yaitu ProgISP_v.1.72


16.  Selain mempunyai soft-copy programnya, Teman-teman juga harus punya hardware USB ASP yang merupakan perangkat komunikasi antara PC dan Chip Mikrokontroler. Setelah Hardware terhubungke Komputer makan tampilan Program pada Tampilan PRG ISP akan menyalah seperti USBASP


17.  Selanjutnya memanggil file *.hex yang akan di masukkan ke Memori Mikrokontroler , caranya Klik menu Load Flash . Lalu pilih file *.hex yang akan dimasukkan kedalam Mikrokontroler dan pilih Open.  Seperti pada gambar dibawah ini:


18.  Langkah terakhirnya klik Tombol Auto untuk Memasukkan Program, jangan lupa lihat Proses programnya dibagian bawah hingga selesai.



       B.     Ini untuk Program LED bergeser Kekanan .

C.     Lalu ini Program LED bergeser Kekiri.

     C.     Dan ini Program LED bergeser Kanan dan Kekiri
while (1)
{
// Place your code here

PORTA = 0x01;
delay_ms(100);
PORTA = 0x02;
delay_ms(100);
PORTA = 0x04;
delay_ms(100);
PORTA = 0x08;
delay_ms(100);
PORTA = 0x10;
delay_ms(100);
PORTA = 0x20;
delay_ms(100);
PORTA = 0x40;
delay_ms(100);
PORTA = (0x80);
delay_ms(100);

PORTA = 0x40;
delay_ms(100);
PORTA = 0x20;
delay_ms(100);
PORTA = 0x10;
delay_ms(100);
PORTA = 0x08;
delay_ms(100);
PORTA = 0x04;
delay_ms(100);
PORTA = 0x02;
delay_ms(100);
PORTA = 0x01;
delay_ms(100);
}
}

Senin, 11 Juli 2016

Rangkaian Sistem Minimum dan Rangkaian 2 Relay

Rangkaian Sistem Minimum
a. Alat dan Bahan
    -          Switch Button
    -          Crystal 12MHz
    -          Kapasitor 100nF
    -          Kapasitor 33pF 2buah
    -          Resistor 1KΩ
    -          Resistor
    -          Dioda IN4002
    -          Lampu LED
    -           Kapasitor 220µF/25v
    -          IC 7805
    -          Header

b. Gambar Schematic Sistim Minimun
 

c. Gambar PCB layout Sistim Minimum


d.  Cara membuat Sistem Minimum
1.      Siapkan papan PCB yang berukuran 5 x 7 cm yang sudah dipotong sebelumnya.
2.      Siapkan juga hasil fotocopy rangkaian sistim minimum yang menggunakan kertas photo.
3.      Lalu tempelkan layout rangkaian sistim minimum pada PCB yang sudah di potong. Kemudian gosok rangkaian tersebut menggunakan setrika. Kira-kira paling lama 5 menit sampai rangkaian tersebut menyatu dengan papan PCB tersebut.
4.      Setelah itu celupkan PCB tadi pada wadah yang telah diberi air secukupnya untuk memudahkan kertas photo tadi terlepas pada papan PCB.
5.      Setelah terlepas siapkan wadah yang sudah diberi FeCl3, lalu masukan PCB tadi ke dalam wadah tersebut.
6.      Goyangkan wadah tersebut secara perlahan sampai tembaga yang tidak tertutupi sama kertas photo tadi hilang.
7.      Setelah tembaga yang ada di papan pcb hilang, menyisakan jalur rangkaian, selanjutnya amplas papan pcb untuk memperhalus.
8.      Kemudian celupkan rangkaian pada air untuk menghilangkan bekas debu yang sudah di amplas tadi. Lalu lap papan PCB tersebut menggunakan tisu.
9.       Setelah itu pasang komponen pada rangkaian yang telah di siapkan tadi.

Gambar Sismin Tampak Bawah


Gambar Sismin Tampak Atas
e.   Cara mengisi program pada downloader

Langkah 1: Instalasi Hardware
Sebelum men-download file *.hex langkah pertama adalah melakukan instalasi hubungan antar muka (interface) antara komputer dengan IC mikrokontroler. Perantara interface tersebut dilakukan dengan menggunakan piranti tambahan yang disebut dengan USB programmer.
Seperti di bawah ini program CodeVision AVR 
/*****************************************************
This program was produced by the
CodeWizardAVR V2.05.3 Standard
Automatic Program Generator
© Copyright 1998-2011 Pavel Haiduc, HP InfoTech s.r.l.
 http://www.hpinfotech.com
 Project :
 Version :
  Date    : 15-Jul-2016
  Author  : tyery08
  Company : embeeminded.blogspot.com
  Comments:


   Chip type               : ATmega16A
   Program type            : Application
   AVR Core Clock frequency: 12.000000 MHz
   Memory model            : Small
   External RAM size       : 0
   Data Stack size         : 256
   *****************************************************/

   #include <mega16a.h>

   #include <delay.h>

  // Declare your global variables here

  void main(void)
 {


 // Declare your local variables here
 // Input/Output Ports initialization
 // Port A initialization
 // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
 // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
 PORTA=0x00;
 DDRA=0x00;

 // Port B initialization
 // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
 // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
 PORTB=0x00;
 DDRB=0x00;
 

 // Port C initialization
 // Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out
// State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=0
PORTC=0x00;
DDRC=0xFF;

// Port D initialization
// Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out
// State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=0
PORTD=0x00;
DDRD=0xFF;


// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=0xFF
// OC0 output: Disconnected
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer1 Stopped
// Mode: Normal top=0xFFFF
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;

// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer2 Stopped
// Mode: Normal top=0xFF
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;

// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
MCUCR=0x00;
MCUCSR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x00;

// USART initialization
// USART disabled
UCSRB=0x00;

// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;

// ADC initialization
// ADC disabled
ADCSRA=0x00;

// SPI initialization
// SPI disabled
SPCR=0x00;

// TWI initialization
// TWI disabled
TWCR=0x00;

while (1)
      {
      // Place your code here
      PORTD = 0XFF;
      PORTC = 0X00;
      delay_ms (100);
      PORTD=0X00;
      PORTC=0XFF'
      delay_ms(100);
      PORTD = 0XFF;
      PORTC = 0X00;
      delay_ms (100);

      }
}

#tulisan yang berwarna merah adalah kata yang perlu diperiksa dan diperhatikan apakah sudah benar atau tidak dengan alat nya
Langkah 2: Instalasi Software
Software ProgISP bukan merupakan software yang perlu di instalasi (portable software), sehingga untuk menjalankannya cukup klik pada file progisp.exe maka program aplikasi software ProgISP akan berjalan. 
Langkah 3: Running Software
Lakukan klik dua kali (klik satu kali >> enter) pada file progisp.exe yang berada di dalam folder tempat anda menyimpan file-file software ProgISP. Atau supaya mempermudah, buatkan shortcut software ProgISP ini pada desktop komputer anda (lihat gambar 2). Jika berhasil akan muncul tampilan seperti gambar 3.
Gambar 2. Icon Progisp.exe
Gambar 3. Tampilan awal Software ProgISP
Langkah 4: Pemilihan Tipe Mikrokontroler
Pada scroll kolom menu ‘Select Chip’ pilih seri IC mikrokontroler yang sesuai dengan IC mikrokontroler yang ada pada papan sistem mikrokontroler yang digunakan. Lihat gambar 4.
Gambar 4. Pemilihan tipe mikrokontroler

Langkah 5: Periksa koneksi PC dengan Chip mikrokontroler
Sebelum melakukan langkah download, pastikan komputer terhubung dengan IC mikrokontroler, yaitu dengan cara klik menu bar Command>>Read Chip Signature (Alt+S). Lihat gambar 5.
Gambar 5. Periksa koneksi komputer dengan mikrokontroler

Langkah 6: Pilih file *.Hex yang akan di download.
Pilih menu File>>Load FLASH. Llihat gambar 6.


Gambar 6. Pilih file *.hex

Selanjutnya pilih file *.hex yang akan di download, kemudian klik Open. Lihat gambar 7.
Gambar 7. Jendela direktori tempat file hex disimpan

Setelah file *.hex berhasil di Load, maka pada bagian report akan muncul keterangan letak directory file *.hex tersebut di komputer.
f.         Rangkaian 2 Relay
                VII.a. Alat dan Bahan
                               -          2 Relay 5v
                               -          Resistor 1KΩ 2buah
                               -          Dioda IN4002
                               -          Transistor bc547
                               -          Header
                     VIII.b. Gambar Jalur Bawah 2 relay



                      VIII.c. Gambar Tampak Atas 2 relay


      g.  Cara membuat 2 Relay
             1.      Siapkan papan PCB yang berukuran 5 x 5 cm yang sudah dipotong sebelumnya.
             2.   Setelah itu pasang komponen pada rangkaian yang telah di siapkan tadi.
             3.      Lalu buat jalur  rangkaian 2 relay diatas tadi pada PCB Matrik yg sudah di potong                  Sebelumnya. 
Gambar Jadi Rangkaian 2 Relay





Semoga bermanfaat buat teman" . Apabila ada kekeliruan coment dibawah ini . Maaf jika ada kata" yang salah :D


Bagi yang ingin mendonwload file Project Sistim Minimun
Disini!!!


dan bagi teman yang ingin file wordnya Klik dibawah ini:
Rangkaian Sistem minimum dan 2 Rangkaian Relay 

Minggu, 29 Mei 2016

Membuat Downloader USB

Membuat Downloader USB
               Downloader atau programmer dalam dunia mikrokontroler dikenal sebagai alat yang dapat digunakan untuk mengisi (flashing) program ke dalam chip mikrokontroler. Downloader atau programmer merupakan alat atau tools wajib yang harus Anda miliki ketika ingin ngoprek mikrokontroler. Downloader mikrokontroler banyak jenisnya, tertantung  merek mikrokontroler apa yang Anda gunakan. Masing-masing pabrik mikrokontroler biasanya menjual programmernya secara terpisah. Anda dapat membelinya sesuai dengan chip mikrokontroler apa yang Anda gunakan. Downloader atau programmer mikrokontroler dapat juga dibuat sendiri. Banyak sekali rangkaian downloader mikrokontroler atau programer mikrokontroler yang dapat Anda lihat di internet. Salah satunya adalah downloader mikrokontroler AVR yang bernama USBasp. USBasp merupakan salah satu downloader mikrokontroler AVR yang sifatnya open source. Anda dapat mendownload rangkaiannya secara gratis. Anda juga dapat membuat sendiri rangkaian downloadernya tanpa harus membayar lisensi ke pembuat rangkaiannya.
              Untuk membuat rangkaian downloader USBasp, Saya menggunakan software desain PCB gratis yaitu Cadsoft Eagle PCB. Software tersebut dapat Anda download pada link berikut ini http://www.cadsoftusa.com/. Berikut ini merupakan skematik rangkaian downloader yang telah saya buat. Klik pada gambar untuk melihat gambar dengan ukuran fullsize
 Pertama tama anda siapkan komponen seperti dibawah ini
  1. PCB polos
  2. Ferit Clorid
  3. Atmega 8 
  4. Crystal 12Mhz
  5. Soket Atmega 8 (28 pin)
  6. LED Green dan Red
  7. Resistor 10K, 100 Ohm, 270 Ohm, 1.5 K, dan  (Masing masing 4 buah)
  8. Capacitor 22pF , 100nF
  9. Pin Header
  10. Jumper
  11. USB tipe B
  12. Kaber USB tipe B to USB 
  13. Elco 10uF
 Di bawah ini adalah Gambar Schematic rangkaian usb downloader


 Gambar USB downloader yg akan di cetak di PCB polos


Gambar USB downloader setelah dipasang komponen




Pada rangkaian di atas di print dengan kertas kalender dan di gosokan ke papan PCB (ingat Printnya harus leser, jika tidak ada silahkan di print biasa dan di fotocopy memakai kertas kalender). Jika ingin data di atas silahkan download hasilnya dibawah ini.

Download Terlebih Dahulu Software Eagle 7.20
DOWNLOAD

Download Rangkaian di atas
DOWNLOAD


Lihat rangkaian dengan program eagle. Nama File RANGKEYAN.SCH
  1. buat rangkaian tersebut ke PCB, Pasang komponen dan solder (INGAT jangan sampai ada jalur yang tersambung).
  2. siapkan kabel usb, hati hati tertukar minimal VCC sama GND tidak nyambung.
  3. sekarang masukkan kabel usbnya.
  4. Ingat , ini baru percobaan, MIKRO ATMEGA 8 JANGAN DIMASUKKAN DULU KE SOKET JANGAN DULU.
  5. jika benar, akan muncul seperti ini.




            Sekarang Tinggal memprogram downloader tersebut, sebelum diprogram atur fuse bit downloader karna kita menggunakan Crystal 12Mhz. Saya akan gunakan downloader yg sudah jadi untuk menginjeck driver USBasp pada downloader yg di buat.

Siapkan Downloader yang sudah jadi

  • Hubungkan Downloader yang sudah jadi ke downloader yang baru dibuat, karna akan melakukan proses cloning / injeck driver USBasp. Kemudian sediakan USBASP (Downloader) yang lain untuk mendownload firmware ke atmega8. (Downloader tidak harus yang berbasis USBASP bisa yang lain asal kompatibel dengan MOSI,MISO,SCK dan reset mikrokontroler AVR).
  • Dengan cara ini membutuhkan dua downloader USBASP. yang satu sebagai 'USBASP' yang saya manfaatkan sebagai board target dan satunya lagi sebagai USBASP downloader.
  • Untuk membuat USBASP menjadi target board caranya adalah dengan menghubungkan jumper self programming (JP2)


  • Selanjutnya buka software downloader (khazama/avrdude/Extreme burner AVR dll ), DISINI saya menggunakan Khazama Avr Downloader.
  • Bagi yang belum punya silakan download disini.
  • Untuk mikrokontroler yang belum pernah diotak-atik fuse bitnya (masih menggunakan Frekuensi Osilator Internal) dapat membaca artikel tentang  Langkah Pengaturan Fusebit Atmega8.
  • Oke berikutnya saya anggap fusebit sudah diatur selanjutnya adalah copkan  koneksikan konektor USB (USBASP) pada PORT USB (ya iyalah emang mau kemana lagi. :D).
  • Saya anggap koneksi ke PC atau Laptop sudah lancar . cara ngetestnya adalah buka khazama AVR Programmer kemudian pilih command > read signature.

  • Jika ada permasalahan dalam koneksi maka akan muncul notifikasi berikut :
  •  Solusinya adalah :
  1. Cek kembali koneksi (kabel ke mikrokontroler target) 
  2. Jangan lupa untuk memberi supply tegangan ke mikrokontroler target.
  3. Jika permasalahan masih terjadi maka mungkin terjadi permasalahan pada saat  penginstalan driver
  4. Jika koneksi lancar maka akan muncul notifikasi seperti berikut.


  • Pengisian Driver USBasp telah sukses
  • Berikutnya adalah load firmware caranya
  1. Klik File
  2. Load flash to buffer
  3. Kemudian cari dimana firmware tersebut disimpan
  4. Setelah itu klik auto program
  5. Load Flash  
  6. Cari file.HEX
  7. Write Flas


  • Succesfully Writing Flash
  • Sampai disini telah berhasil mengisi firmware ke dalam mikrokontroler atmega8 . Untuk mencobanya apakah firmware yang anda isi telah berfungsi dengan baik, anda dapat mencobanya langsung diboard USBASP.

  • Lihat di device manager (start > Run > "devmgmt.msc") jika berfungsi dengan baik , maka USBASP akan tampil tanpa tanda seru.
  • USBASP sudah terinstall
Apabila teman sekalian ingin yang praktis . ini saya ada project Downloader .Schematic dan Board
Klik disini

dan bagi kalian yang mau file wordnya download klik dibawah ini:
Membuat Downloader USB