Showing posts with label Program ic ATMEGA. Show all posts
Showing posts with label Program ic ATMEGA. Show all posts

Program Dot matrix 7x5 menggukan Baskom AVR

assalammualaikum wr.wb

wah udah lama ni ndak ngepost sekarang janu akan mempost tentang led matrix atau lebih dikenal dgn dot matrix,sini janu akan memperlihatkan skematik dan juga programnya biar complit.

ini adalah rangkaian skematik dari led matrix 7x5
komponen :
- led 5mm = 35 buah
- R1-R5,1k  = 5
  R6-R12,56 ohm = 5
- transistor bd 547 = 5
rangkaian tersebut inputnya adalah berlogika 1,kolom maupun baris akan bekerja bila diberi logika 1 bisa juga tidak menggunakan transistor dari kaki negatif lang sung nyambung ke pinheatder,contohnya :
dan inputnya untuk kolomnya adlah logika 0,jadi tergantung teman2 mau pakek yg mana.
berikut ini juga skematik mikro yg akan dihubung kan ke led matrix


portc sebagai kolom dan portd sebagai baris
dan berikut ini programnya 

$regfile = "m16def.dat"
$crystal = 8000000

Config Portc = Output
Config Portd = Output

dress Alias Portc
Data_ Alias Portd

Dim Putra As Byte
Dim Man As Byte
Dim N_putra As Byte
Dim N_man As Byte
Dim A As Byte
Dim B As Byte
Dim C As Byte
Dim D As Byte
Dim E As Byte

N_putra = 0
N_man = 0

Do

C = 33
For E = 0 To 33

For B = 0 To 4

For A = 0 To 4

Putra = Lookup(a , Alamat)
adress = Putra

D = A + C
Man = Lookup(d , Janu)
Data_ = Man
Waitms 5

Next
Waitms 1

Next
Decr C

Next

Loop

Alamat:
Data &B11110111
Data &B11101111
Data &B11011111
Data &B10111111
Data &B01111111

Janu:
':D
Data &B00000000
Data &B00000000
Data &B00000000
Data &B00000000
Data &B00000000
Data &B01100110
Data &B01100111
Data &B00000111
Data &B01100111
Data &B01100110
Data &B00000000
'u
Data &B00000000
Data &B01111110
Data &B00000001
Data &B00000001
Data &B00000001
Data &B01111110
Data &B00000000
'n
Data &B01111111
Data &B00000100
Data &B00001000
Data &B00010000
Data &B01111111
Data &B00000000
'a
Data &B00111111
Data &B01001000
Data &B01001000
Data &B01001000
Data &B00111111
Data &B00000000
'j
Data &B01111110
Data &B01000001
Data &B01000001
Data &B01000001
Data &B01000010
Data &B00000000
Data &B00000000
Data &B00000000
Data &B00000000
Data &B00000000

Program tersebut akan membuat dot matrix menampilkan "nama saya" sekali kalinebeng, secara geser ke kiri. Dalam program tersebut proses scanning terjadi pada potongan program

For A = 0 To 4

Lima = Lookup(a , Alamat)
Adress = Lima

D = A + C
Tujuh = Lookup(d , Wahyu)
Data_ = Tujuh
Waitms 1

Next

Pada potogan program tersebut terdapat rumus D = A + C, rumus ini digunakan untuk menggeser karakter yang ditampilkan oleh dot matrix sebanyak satu kalikearah kiri. pada potongan program tersebut proses scanning hanya untuk 5 kolomsaja, jika proses ini hanya diulangi sekali saja maka karakter yang ditampilkan tidak akan terlihat karena terlalu cepat, oleh karena itu proses ini juga diulang ulang sebanyak 5 kali supaya tampilan dapat dilihat dengan jelas, sehingga program menjadi

For B = 0 To 4

For A = 0 To 4

Lima = Lookup(a , Alamat)
Adress = Lima

D = A + C
Tujuh = Lookup(d , Wahyu)
Data_ = Tujuh
Waitms 1

Next
Waitms 1

Next

kemudian ditambah lagi dengan satu looping for....next yang digunakan untuk menggeser karakter yaitu.

C = 33
For E = 0 To 33
.
.
.
.
.
Decr C
Next

dan berikut ini contohnya 

sekian dari saya semoga bermanfaat dan selamat mencoba :D
wassalam

sumber : http://janu-tronik.blogspot.com/ dan http://kecoakacau.blogspot.com/ 

Tutorial Membuat Program C untuk microcontroller AVR dengan AVR Studio

AVR Studio yang digunakan  pada artikel disini  masih versi 4,
 pada saat tulisan ini dibuat  AVR studio versi 5  sudah dirilis.
Untuk membuat program AVR dengan AVR Studio 4 anda memerlukan 2 aplikasi:
AVR Studio 4 dan  WinAVR
  1. Download AVR Studio  di:  http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2725 setelah didownload install aplikasi tsb.
  2. Download WinAVR di :  http://winavr.sourceforge.net/     setelah didownload install file tsb.
Setelah kedua File tsb anda install anda sudah bisa membuat program melalui AVR Studio baik asembler maupun bahasa C .
Memulai Membuat Program C  dgn AVR Studio 4:
tahapannya antara lain:
  • Membuat Project baru
  • Mengkompile code C ke file  *.HEX
  • Men Debug code program C  dgn simulator
  • Memasukan file HEX ke  Microcontroller.
  1. Membuat Project AVR Studio 4:
Jika anda sudah menginstall dari menu klik Atmel AVR tools  -> AVR Studio 4
akan muncul menu sbb:
avr studio 1
project baru avr studio
lalu klik -> New Project
akan muncul menu sbb:
memberi nama project baru
Memberi Nama Project Baru
klik AVR GCC dan beri nama untuk projeck baru  lalu klik next
maka akan muncul menu sbb:
memilih type AVR
memilih type microcontroller AVR
klik AVR Simulator  dan Atmega8535   , lalu klik Finish. akan muncul menu sbb:

copy code program C berikut ke kotak code program

#include "avr/io.h" // avr header file untuk IO ports 

int main()

{
unsigned char i; // temporary variable
DDRA = 0x00;     // set PORTA sebagai  input
DDRB = 0xFF;     // set PORTB sebagai output
PORTB = 0x00;    // Port B di beri nilai awal 0 

i = PINA;        // baca PORTA.,simpan nilainya di i  

PORTB = i;       // kirim nilai i ke  PORTB.          

}
 
2. Mengkompile kode C ke file HEX
klik menu Build->Build All
build program
Compiling code program C ke file HEX
sampai proses ini kita berhasil membuat file HEX .  File tsb yang akan kita masukan kedalam microcontroller.
3. Memeriksa Program ( Debugging) dengan Simulator
Klik Debug->Start Debugging,
lalu tekan  F11 .
debugging
Debugging
Untuk setiap penekanan  F11, tiap baris code  akan diperiksa dan perubahan nilai register pada code program akan ditampilkan pada visaualisasi sebelah kiri spt tampak pada gambar diatas.
4. Memasukan  file *.hex ke  chip  Microcontroller
sebelumnya anda hubungkan alat dowloader /programmer ke PC anda.

cek nomor port pada device manager
pada contoh ini saya menggunakan AVR USB ISP Downloader DT-HQ buatan inovative electronic surabaya.
buka menu tools->program AVR->connect

menu konek ke downloader/programmer
maka akan muncul:

pilih Com2 sesuaikan spt no port untuk ISP pada device manager
Menu dowloader

menu memasukan *.hex ke Chip Microcontroller

sumber :http://pccontrol.wordpress.com

Program lampu lalu lintas 4 jalur (Jl.majapahit,mataram.NTB)

   hello para sobat janu tronik,kemarin kita sudah membahas lampu lalu lintas 3 jalur di seruni sekarang janu akan memberikan program lampu lalu lintas untuk 4 jalur seperti di Jl.majapahit mataram NTB,tidak perlu panjang lebar langsung aja.
    Gbr.lampu lalu lintas 4 jalur :

Tabel kebenarannya :
 programnya sbb :
$regfile = "m8535.dat"
$crystal = 12000000

Config Porta = Output
Config Portb = Output

Do
Porta = &H0C
Portb = &H09
Waitms 400
Porta = &H0A
Portb = &H09
Waitms 200
Porta = &H21
Portb = &H09
Waitms 400
Porta = &H11
Portb = &H09
Waitms 200
Porta = &H09
Portb = &H21
Waitms 400
Porta = &H09
Portb = &H11
Waitms 200
Porta = &H09
Portb = &H0C
Waitms 400
Porta = &H09
Portb = &H0A
Waitms 200

Loop
End
                                     "end program"
 ket : tulisan merah adalah programnya
sekian yg dapat janu sampaikan kurang lebihnya mohon maaf........

sumber : JANUARMAN MAULANA PUTRA

Program lampu lalu lintas 3 jalur ( jl.seruni,mataram.NTB)

  sekarang janu akan posting tentang program lampu lalu lintas,soalnya kemarin janu praktek cara program lampu lalu lintas 3 jalur.......menggunakan program BASKOM AVR karena bahasanya yg mudah,dari bada janu banyak cerita mendingan langsung aja ke programnya :

$regfile = "m8535.dat"
$crystal = 12000000

Config Porta = Output
Config Portc = Output

Do = untuk menjalankan
Porta = &H0C
Portc = &H01
Waitms 400 = waktu lampu merah dan hijau
Porta = &H0A
Portc = &H01
Waitms 200 = waktu lampu kuning
Porta = &H21
Portc = &H01
Waitms 400
Porta = &H11
Portc = &H01
Waitms 200
Porta = &H09
Portc = &H04
Waitms 400
Porta = &H09
Portc = &H02
Waitms 200
Loop = mengulang perintah DO

End                                                         'end program

ket : tulisan merah adlh programnya.

berikut tabel kebenaranny

ket : -M1,M2,M3 = lampu merah
        -K1,K2,K3 = lampu kuning
        -H1,H2,H3 = lampu hijau

gambar lalu lintasnya di Jl.seruni,mataram.NTB
  
Sekian postingan sy semoga bermanfaat........

sumber : januarman maulana putra

Project Input Output Led dengan Switch Berbasis ATmega8535

   Lama dah gak nongol,, salam blogger kali aku mau shared tentang Microprocessor,, Kamu tau Atmega8535 ??? nah itu lah kegiatan yang dibahas kali ini..
Saya mau share sebuah Porject yang aku buat yaitu Project Led Berjalan dengan Switch yang berbasis Microprocessor Atmega8535 tadi. Langkah pembuatannya cukup simpel ja kok. Aku tunjukan layout rangkaian di bawah ini..,
Kalau pengen file yang udah jadi saya juga punya tinggal download layout design :


Dalam pembuatan Project ini saya menggunakan Software yang diberi oleh kakak kelas di Kampus,, Softwarenya berupa “CodeVisionAVR” dan “Proteus 7 Pro”. Project ini sengaja aku buat,, karena iseng-iseng pengen pelajari lebih dalam tentang microprocessor karena aku suka dengan robotik. Terus sekalian lah kalau ada yang pengen belajar atau mau sharing ke aku biar lebih bisa ^_^ hehe,,,
Baiklah kita mulai langkah pembuatannya.
Pertama aku buka Project nyala Led dengan switch berbasis mircoprocessor ATmega8535 nya yang dah dibuat dengan Proteus. Nyala led didasarkan berdasarkan switch yang kita tekan. Jika :
  • Switch 1 ditekan led nyalanya berjalan dari kanan ke kiri.
  • Switch 2 ditekan led nyalanya berjalan dari kiri ke kanan.
  • Switch 3 ditekan led nyalanya berkedip semua.
  • Switch 4 ditekan led nyalanya berkedip bergantian.
  • Switch 5, 6, 7, 8 kosong bisa diisi sendiri terserah kalian .... hehehe ^_^
Baru kemudian buka CodeVision AVR.. dapat kalian liat tampilan Code Vision AVR dibawah ini

buat new project.. File > New > Project.




Confirm “Yes”.











Pilih AVR Chip Type “AT90,Atmega,FPSLIC”.

Maka akan terbuka Code Wizard AVR ... seperti di bawah ini

Ubah Tab “Chip” dengan nama “Atmega8535”, dan Clock 12,000000 MHz. Clock merupakan sebuah crystal yang digunakan..dalam rangkaian kita.. kemudian kita buka tab Ports.











Buat PORT A sebagai Out karena keluaran Led dari Poteus kita tadi PORTA dan PORTB merupakan inputan Switch.. bila sudah Generate , Save and Exit.

Dalam save kita dianjurkan untuk Save sebanyak 3 kali. Beri nama project yang sama setiap kali kita Membuat Project.. bila sudah kalian akan mendapatkan sebuah kode-kode berupa Program C.. dimana kita udah tau tengan program C kan....



Di atas merupakan kode Bahasa C yang telah didapatkan tadi.. kode di atas belum selesai kita harus menambahkan sebuah Program Kerja pada Atmega8535 tadi untuk keperluan kita yaitu Membuat Led nyala dengan menekan Switch yang ada.. bila switch 1 ditekan Led nyala dari kanan ke kiri, switch 2 ditekan Led nyala dari kiri ke kanan, switch 3 ditekan Led nyala berkedip-kedip dan seterusnya.. kode yang kita tambah yaitu sebagai berikut :

Tambahkan kode #include <delay.h> dibawah kode #include <mega8535.h>
#include <mega8535.h>
#include <delay.h>
Lalu cari kode 
while (1)
      {
      // Place your code here
      }
Letak dari kode diatas paling bawah sendiri.. masukkan sebuah kode “IF else” bahasa C pada kurung kurawal,, bahasa C yang saya buat hanya sederhana berupa perintah dari Input dan Output yang telah kita buat tadi diatas.

if (PINB.0==0)

       {

        PORTA=0b00001110;

        delay_ms(5);

        PORTA=0b00001100;

        delay_ms(5);

        PORTA=0b00001001;

        delay_ms(5); 

        PORTA=0b00000011;

        delay_ms(5); 

        PORTA=0b00010111;

        delay_ms(5); 

        PORTA=0b00111111;

        delay_ms(5); 

        PORTA=0b01101111;

        delay_ms(5);

        PORTA=0b11001111;

        delay_ms(5);  

        PORTA=0b10001111;

        delay_ms(5);

       }

       else if (PINB.1==0)

        {

         PORTA=0b10001111;

         delay_ms(5);

         PORTA=0b11001111;

         delay_ms(5);

         PORTA=0b01101111;

         delay_ms(5);

         PORTA=0b00111111;

         delay_ms(5);

         PORTA=0b00010111;

         delay_ms(5);

         PORTA=0b00000011;

         delay_ms(5);

         PORTA=0b00001001;

         delay_ms(5);

         PORTA=0b00001100;

         delay_ms(5);

         PORTA=0b00001110;

         delay_ms(5);

        }

        else if (PINB.2==0)

         {

          PORTA=0b00001111;

          delay_ms(15);

          PORTA=0b11110000;

          delay_ms(15);

         }

         else if (PINB.3==0)

          {

           PORTA=0xFF;

           delay_ms(15);

           PORTA=0x00;

           delay_ms(15);

          }

          else

           {

            PORTA=0x0F;

           }
Setelah itu COMPILER dengan menekan tombol pada Keyboard yaitu “SHIFT + F9” jangan lupa dalam kita membuat sebuah project kalau udah selesai harus di compiler akar program yang kita buat bisa diakses jika tidak maka program kita tidak berjalan.. setelah selesai langkah berikutnya merupakan langkah akhir yang jadi penentu Project kita jadi atau gagal.. kita buka Proteus kita tadi yang telah dibuat..

Pada blog IC microprocessor Atmega8535 kita “Klik Doble” ,,
Pada Program File : ...... isi file yang udah kita buat dan disimpan dengan AVR tadi pada folder Exe... file nya berupa “.hex” lalu setelah itu OK..
kemudian jalankan apakah program yang dibuat tadi berjalan dengan baik atau tidak...dengan menekan tombol Play pada Project Proteus..
Saya udah persiapkan Project Jadi yang saya buat bila pengen mengetahuinya ,, berupa file download. Jika ingin bisa download ja link di bawah ini




Download :

Itu tadi merupakan langkah-langkah yang kita lakukan untuk membuat Project Led Nyala dengan menekan Switch yang ada. Banyak Project-project lainnya yang pastinya mengasikkan seperti Trafict Led, Seven Segment, dan masih banyak lagi.. 
 
sumber : http://lbukhori.blogspot.com/2011/10/project-input-output-led-dengan-switch.html

Membuat program LED berjalan ( RUNNING LED )


Kita akan membuat led berjalan 2 kali ke kiri dan dua kali ke kanan secara berulang, berikut program pada bascom avrnya:


$regfile = "m8535.dat"
$crystal = 12000000

Config Porta = Output

Tombol Alias Pina.0
Lampu Alias Portb

Porta = &B00000000
Dim X As Byte

Do
If Tombol = 1 Then
For X = 1 To 2
PortA = &B00000001
Waitms 100
PortA = &B00000010
Waitms 100
PortA = &B00000100
Waitms 100
PortA = &B00001000
Waitms 100
PortA = &B00010000
Waitms 100
PortA = &B00100000
Waitms 100
PortA = &B01000000
Waitms 100
PortA = &B10000000
Waitms 100
Next
For X = 1 To 2
PortA = &B10000000
Waitms 100
PortA = &B01000000
Waitms 100
PortA = &B00100000
Waitms 100
PortA = &B00010000
Waitms 100
PortA = &B00001000
Waitms 100
PortA = &B00000100
Waitms 100
PortA = &B00000010
Waitms 100
PortA = &B00000001
Waitms 100
loop
end                                            "end program" 

ket : tulisan merah adlh programnya


Pembahasan Program :

$regfile = "m32def.dat"  library yang menyatakan bahwa mikrokontroller yang kita pakai adalah atmega32,
$crystal = 8000000  meyatakan bahwa clock oscillator yang kita pakai sebesar 8Mhz,
Config Porta = Input pengkonfigurasian bahwa porta menjadi input
Config Portb = Output pengkonfigurasian bahwa porta menjadi output
Porta = &B00000000 menyatakan bahwa keadaan awal pada portb semuanya logic low(0)
Tombol Alias Pina.0 = inisialisasi bahwa tombol adalah dipina.0
Lampu Alias Portb = inisialisasi bahwa lampu adalah portb
Dim X As Byte = pendeklarasian bahwa variable X adalah tipe byte dimana rangenya adalah 0-255,
Do-loop = perintah perulangan,
If Tombol = 1 Then menyatakan jika tombol =1 /logic high maka
For X = 1 To 2 yang menyatakan perulangan 2 kali,
Lampu = &B00000001 ini bearti led paling kanan / led 1 hidup
Waitms 100        dengan delay 100 milisecond
Begitu seterusnya Selamat mencoba…!