membuat shift register dot matrix atmega

menggunakan-dot-matrix-atmega-dengan-codevision-3

Kali ini kita melanjutkan materi memprogram dot matrix menggunakan mikrokontrol atmega16 dengan bantuan IC shift register, dimana untuk teori IC shift register bisa dibaca memahami shift register, dengan bantuan shift register kita bisa meng-expand jumlah output ATmega yang digunakan untuk menjalankan kolom milik dot matrix. Shit shift register yang dipakai adalah 74595, boleh pakai varian 74LS595 apa yang lain kalo ada, seterah deh

Membuat Program Shift Register Pada Dot Matrix dengan ATMega

membuat shift register dot matrix atmega

Programnya lagi2 masih simpel cuma nampilin karakter satu digeser sejauh 10 kolom trus balik lagi dari kolom pertama. Kenapa enggak sekalian yang karakter berjalan??? haha sabar deh masih males2an bikinnya, n sekarang udah akhir semester jadi hahaha berasa males buat ngelanjutin yang berat2 pengen yang having fun wae 😀

Ok deh sementara ini dulu, klo inget besok dilanjutin tutorial dotmatrix nya, pengennya sih untuk dotmatriks minimal sampe 5 chapter, tapi ya sedapetnya ajah #dasarbloggergalau

/*****************************************************
This program was produced by the
CodeWizardAVR V2.03.4 Standard
Automatic Program Generator
© Copyright 1998-2008 Pavel Haiduc, HP InfoTech s.r.l.
http://www.hpinfotech.com

Project : menggeser output dotmatrix II
Version :
Date : 07/06/2012
Author : priyo harjiyono
Company : https://anotherorion.com
Comments:
Chip type : ATmega8535
Program type : Application
Clock frequency : 4,001000 MHz
Memory model : Small
External RAM size : 0
Data Stack size : 128
*****************************************************/

#include <mega8535.h>
#include <delay.h>

// Declare your global variables here

void main(void)
{
// Declare your local variables here
char geser;
// Input/Output Ports initialization
// Port A 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
PORTA=0x00;
DDRA=0xFF;

// 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=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=Out Func0=Out
// State7=T State6=T State5=T State4=T State3=T State2=T State1=0 State0=0
PORTC=0x00;
DDRC=0x03;

// Port D 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
PORTD=0x00;
DDRD=0x00;

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

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer 1 Stopped
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer 1 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: Timer 2 Stopped
// Mode: Normal top=FFh
// 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;

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

while (1)
{
// Place your code here
for(geser=0;geser<10;++geser)
{
PORTA=~0x18;

if(geser==0)
{
PORTC.0=1;
delay_ms(40);
}
PORTC.1=1;
delay_ms(40);
PORTC.1=0;
delay_ms(40);
PORTC.0=0;
delay_ms(40);
}
};
}

 

shift register dot matrix atmega

Artikel ini terakhir diperbarui pada: 9 April 2021 untuk menjaga relevansi dengan kondisi terkini.

4 komentar untuk “menggunakan-dot-matrix-atmega-dengan-codevision-3”

  1. Judul Harga Beli Sekarang
    Dasar Mikrokontroler Atmega8535 dengan CAVR BUKU ORIGINAL Rp64.000  
    Buku Belajar Sendiri Mikrokontroler AVR Seri ATMega8535 Simulasi, Hardware, Dan Aplikasi Rp70.000  
    Buku 20 Aplikasi Mikrokontroler ATMega 8535 & ATMega 16 Menggunakan Bascom-AVR+CD Rp70.500
    BUKU PRAKTIKUM TEKNOLOGI MICROCONTROLLER ATMEGA- 16 UNTUK SMK/ MAK Rp40.000  
    Buku Dasar Mikrokontroler Atmega8535 dengan CAVR Rp64.000
    BUKU MIKROKONTROLER AVR ATMEGA8535 + CD Rp80.750  
    buku pemrograman mikrokontrorler avr atmega 16 + cd Rp50.000  
  2. Khoirur Ridho Juansah

    mas, kalo mau buat 1 huruf aja, gmna mas codingnya ?
    bisa ngak kalo kayak gini
    saya mau buat r kecil
    PORTA =~0x7c,0x08,0x04,0x04,0x08;

    mohon bantuannya mas

    1. biasanya dibagian 0xff itu simbol X nya ketika dipaste jadi karakter x(kali) bukan X heXa, ditulis ulang aja simbol xnya mas

Tinggalkan Komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

(Note, links and most HTML attributes are not allowed in comments)

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses

Ingin produk/website Anda kami ulas? Silahkan klik tombol dibawah ini