RSS [F/W & S/W]  |  개발자포럼

AVR로 AVR 인공호흡하기

오실레이터 대신에 AVR의 포트 출력을 발진기로 만들고, 죽은 AVR의 XTAL1에 입력해주면 된다.

 

AVR을 발진기로 만드는 소스코드

 

// Atmege 8 is shipped with 1MHz internal clock
// this code is to generate clock on port C.0
// found at http://blog.louic.nl/?p=161
#define F_CPU 8000000UL  // set the internal clock speed of 8 MHz
#include <avr/io.h>  //Required to use assembler commands
#include <util/delay.h>
int main(void){
    unsigned char state = 0;
    unsigned int count = 0, high = 0;
 
    DDRD = 0xFF;    //Make Port C output values
    PORTD = 0x00;  //Turn all output pins on port c off
 
    while(1) {
        PORTD |= 0x0F;  // turn off port
        _delay_us(1);
        PORTD &= 0xF0;  // turn on low port D
        _delay_us(1);
        count++;
        if(count >= 1000){
            count = 0;
            high++;
        }
        if(high >= 1000){  // elapsed 1 sec
            high = 0;
            if(state == 0){
                state = 1;
                PORTD |= 0x10;  // Turn on port D.4
            }else{
                PORTD &= 0x0F;
                state = 0;
            }
        }
    }
}

 

PD0..3 이 1MHz 클럭을 출력한다.



추천 0 비추천 0

트위터 페이스북 구글플러스 싸이공감 네이트온 쪽지 구글 북마크 네이버 북마크
댓글이 0 개 달렸습니다.
[F/W & S/W] 게시판 게시물 목록
번호 제   목 이름 날짜 조회 추천
5 AVR로 AVR 인공호흡하기 LV 7 동물의왕국 06-17 1178 0
4 AVR 인공호흡 방법 LV 7 동물의왕국 06-17 1370 0
3 PonyProg2000 사용법 (설치부터 펌웨어 다운로드까지) LV 5 카이저소자 06-17 3198 0
2 AVR 퓨즈비트(Fuse bit) LV 7 동물의왕국 06-17 2653 0
1 Atmel AVR Studio 6 업그레이드 및 다운로드 (무작정 따라하기) LV 7 동물의왕국 06-17 10944 0
1
  • 월간
  • 주간
  • 일간
 
게시물이 없습니다.
1/3