BASIC4MCU | AVR 따라하기 | 2015년 강좌 | 101 - [타이머인터럽트-15] 스위치 8개 SRAM에 읽어서 LED에 출력
페이지 정보
작성자 키트 작성일2017-08-23 16:45 조회2,812회 댓글0건본문
12345678910111213141516171819202122232425262728 //--------------------------------------------------------// CVAVR// [타이머인터럽트-15] 스위치 8개 SRAM에 읽어서 LED에 출력//--------------------------------------------------------#include <mega128.h>//char sw=0xFF;//interrupt [TIM1_COMPA] void timer1_compa_isr(void){ // 100mssw=~PINE;}//void main(void){PORTE=0xFF; DDRA=0xFF;TCCR1B=0x0B; OCR1A=24999; TIMSK=0x10; //100msSREG|=0x80;while(1){if(sw&0x01)PORTA.0=1; else PORTA.0=0;if(sw&0x02)PORTA.1=1; else PORTA.1=0;if(sw&0x04)PORTA.2=1; else PORTA.2=0;if(sw&0x08)PORTA.3=1; else PORTA.3=0;if(sw&0x10)PORTA.4=1; else PORTA.4=0;if(sw&0x20)PORTA.5=1; else PORTA.5=0;if(sw&0x40)PORTA.6=1; else PORTA.6=0;if(sw&0x80)PORTA.7=1; else PORTA.7=0;}}cs
1234567891011121314151617181920212223242526272829 //--------------------------------------------------------// AVRStudio// [타이머인터럽트-15] 스위치 8개 SRAM에 읽어서 LED에 출력//--------------------------------------------------------#include <avr/io.h>#include <avr/interrupt.h>//volatile unsigned char sw=0xFF;//ISR(TIMER1_COMPA_vect){ // 100mssw=~PINE;}//int main(void){PORTE=0xFF; DDRA=0xFF;TCCR1B=0x0B; OCR1A=24999; TIMSK=0x10; //100msSREG|=0x80;while(1){if(sw&0x01)PORTA|=0x01; else PORTA&=~0x01;if(sw&0x02)PORTA|=0x02; else PORTA&=~0x02;if(sw&0x04)PORTA|=0x04; else PORTA&=~0x04;if(sw&0x08)PORTA|=0x08; else PORTA&=~0x08;if(sw&0x10)PORTA|=0x10; else PORTA&=~0x10;if(sw&0x10)PORTA|=0x20; else PORTA&=~0x20;if(sw&0x10)PORTA|=0x40; else PORTA&=~0x40;if(sw&0x10)PORTA|=0x80; else PORTA&=~0x80;}}cs
댓글 0
조회수 2,812등록된 댓글이 없습니다.