AVR 따라하기 > 007 - [LED-5] LED 좌시프트

TODAY684 TOTAL400,790
사이트 이용안내
Login▼/회원가입
최신글보기 질문게시판 기술자료 동영상강좌

아두이노 센서 ATMEGA128 PWM LED 초음파 AVR 블루투스 LCD UART 모터 적외선


BASIC4MCU | AVR 따라하기 | 2015년 강좌 | 007 - [LED-5] LED 좌시프트

페이지 정보

작성자 키트 작성일2017-08-23 14:17 조회667회 댓글4건

본문

	

3660040649_GzU4F1it_25C125A625B825F1_25BE25F825C025BD.PNG3Ftype3Dw740

1
2
3
4
5
6
7
8
9
10
11
12
13
14
//--------------------------------------------------------
// CVAVR
// [LED-5] LED 좌시프트
//--------------------------------------------------------
#include <mega128.h> 
#include <delay.h> 
//
void main(void){
    char i;
    DDRA=0xFF;
    while(1){
        for(i=0;i<8;i++){ PORTA=0x01<<i; delay_ms(100); }
    }
}
cs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//--------------------------------------------------------
// AVRStudio
// [LED-5] LED 좌시프트
//--------------------------------------------------------
#define  F_CPU 16000000UL // 16 MHz
#include <avr/io.h>
#include <util/delay.h>
//
int main(void){
    char i;
    DDRA=0xFF;
    while(1){
        for(i=0;i<8;i++){ PORTA=0x01<<i; _delay_ms(100); }
    }
}
cs

 
//--------------------------------------------------------------------------------------
3660040649_poFncGMq_25C125A625B825F1_25BE25F825C025BD.PNG3Ftype3Dw740
1
2
3
4
5
6
7
8
9
10
11
12
13
14
//--------------------------------------------------------
// CVAVR
// [LED-5] LED 좌시프트
//--------------------------------------------------------
#include <mega128.h> 
#include <delay.h> 
//
void main(void){
    char i;
    DDRA=0xFF;
    while(1){
        for(i=0;i<8;i++){ PORTA=~(0x01<<i); delay_ms(100); }
    }
}
cs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//--------------------------------------------------------
// AVRStudio
// [LED-5] LED 좌시프트
//--------------------------------------------------------
#define  F_CPU 16000000UL // 16 MHz
#include <avr/io.h>
#include <util/delay.h>
//
int main(void){
    char i;
    DDRA=0xFF;
    while(1){
        for(i=0;i<8;i++){ PORTA=~(0x01<<i); _delay_ms(100); }
    }
}
cs

댓글 4

조회수 667

율이님의 댓글

율이 작성일

char는 문자형 변수를 사용할때 쓰는 걸로 알고 있는 데 어떻게 사용되는지 궁금합니다
추가적으로 밑에 소스에 대해 궁금합니다.
int i;
DDRA=0xFF;
while(1){
        for(i=0;i<8;i++){ PORTA=i; _delay_ms(100); }
    }
}
이렇게 사용해도 문제 없는 건가요?

율이님의 댓글

율이 댓글의 댓글 작성일

추가적으로 <<는 대입한다는 뜻인지 궁금합니다.
이런 부호에 대한 설명도 나와있나요?
작성되있다면 어떻게 쳐야지 찾아서 공부할수 있을까요?

master님의 댓글

master 댓글의 댓글 작성일

<<는 좌 시프트 연산자입니다.
>>는 우 시프트 연산자입니다.
https://www.basic4mcu.com/bbs/board.php?bo_table=gesiyo18&wr_id=3 연산자
https://www.basic4mcu.com/bbs/board.php?bo_table=gesiyo18&wr_id=6 비트연산
https://www.basic4mcu.com/bbs/board.php?bo_table=gesiyo18&wr_id=7 2진16진
https://www.basic4mcu.com/bbs/board.php?bo_table=gesiyo18&wr_id=10 조건식
https://www.basic4mcu.com/bbs/board.php?bo_table=gesiyo18&wr_id=13 비트마스크

master님의 댓글

master 댓글의 댓글 작성일

PORTA=i; 이 문장으로는 시프트를 시키지 못합니다.
char 대신 int를 사용해도 됩니다.

AVR 따라하기HOME > AVR 따라하기 > 전체 목록

AVR 따라하기 목록
제목 작성자 작성일 조회
공지 MCU, AVR, 아두이노 등 전자공학에 관련된 질문은 질문게시판에서만 작성 가능합니다. 스태프 19-01-15 82
공지 사이트 이용 안내 댓글[5] 이미지 master 17-10-29 4855
171 2015년 강좌 106 - [타이머인터럽트-19] 누른시간 & 뗀시간 & 더블클릭 체크 키트 17-08-23 842
170 2015년 강좌 105 - [타이머인터럽트-18] 스위치 누르는 시간 & 스위치 누르지 않는 시간 체크 댓글[3] 키트 17-08-23 1213
169 2015년 강좌 WS2812B [1개]- 테스트 - AVRstudio 키트 17-08-23 589
168 2015년 강좌 delay_us()보다 더 짧은 딜레이 함수 - 2 키트 17-08-23 843
167 2015년 강좌 delay_us()보다 더 짧은 딜레이 함수 - 1 키트 17-08-23 898
166 2015년 강좌 104 - [부저] 회로내장형 키트 17-08-23 960
165 2015년 강좌 103 - [타이머인터럽트-17] 스위치 누르는 시간 체크 키트 17-08-23 983
164 2015년 강좌 102 - [타이머인터럽트-16] 스위치 누를 때마다 1칸씩 좌우시프트 키트 17-08-23 1039
163 2015년 강좌 101 - [타이머인터럽트-15] 스위치 8개 SRAM에 읽어서 LED에 출력 키트 17-08-23 664
162 2015년 강좌 100 - [타이머인터럽트-14] 스위치 8개 읽어서 LED에 출력 (포트 다이렉트) 키트 17-08-23 810
161 2015년 강좌 099 - [타이머인터럽트-13] 스위치 1개 SRMA에 읽어서 LED에 출력 키트 17-08-23 473
160 2015년 강좌 098 - [타이머인터럽트-12] 스위치 1개 읽어서 LED에 출력 키트 17-08-23 674
159 2015년 강좌 096 - [타이머 CTC 토글-3] 스위치 8개 피아노 키트 17-08-23 635
게시물 검색

2019년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2018년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
Privacy Policy
MCU BASIC ⓒ 2017
모바일버전으로보기