BASIC4MCU | ◎초보자가이드 | LED DIY | 답변 : 타이머/카운터0을 이용해 1ms마다 인터럽트가 발생되게 하고 100ms마다 PORTA에 연결된 LED가 좌우로 shift되는 프로그래을 만들어야 하는데 모르겠어요
페이지 정보
작성자 master 작성일2018-06-29 14:23 조회2,671회 댓글0건본문
https://www.basic4mcu.com/bbs/board.php?bo_table=gesiyo10&wr_id=191
이 예제 참고하시고요
// MCU BASIC: https://www.basic4mcu.com// DateTime : 2018-06-29 오후 2:26:47// by Ok-Hyun Park//#define F_CPU 16000000UL#include <avr/io.h>#include <avr/interrupt.h>//uint8_t;//ISR(TIMER0_COMP_vect){ // 매치 인터럽트static uint8_t ms=0,dir=0,pos=0;if(++ms>=100){ ms=0;if(dir){ //오른쪽 시프트pos--;if(pos==0)dir=0;}else{ // 왼쪽 시프트pos++;if(pos==7)dir=1;}PORTA=1<<pos;}}//int main(void){DDRA=0xFF;TCCR0=0x0C; OCR0=249; TIMSK=2; //16000000/ 64/(1+249)=1000Hz=1msSREG=0x80;while(1){ }}
댓글 0
조회수 2,671등록된 댓글이 없습니다.