Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- cf80/2.8
- Kodak Ektar 100
- M-Rokkor 40/2
- FujiFilm GFX50s
- GRD2
- cs50/2.5
- N80/4
- Kodak 400TX
- Minolta CLE
- Contax G2
- 2018 미국출장
- Minolta TC-1
- 4870
- Germany
- Kodak T-Max 100
- ZeissIkon ZI
- cf50/4 fle
- Rollei35s
- Hasselblad 500cm
- kodak t-max 400
- Kodak 5222
- FujiFilm C200
- SONY A7
- 2019 유럽여행
- Nikon 28Ti
- fujifilm velvia 50
- Kentmere 400
- Leica M7
- Mamiya 7
- G28/2.8
Archives
- Today
- Total
J 창고
[Atmega128] 특정 비트만 SET or Clear 하기 위한 Define 본문
#define sbi(PORTX, BitX) PORTX |= (1 << BitX) // Set Bit Instruction
#define cbi(PORTX, BitX) PORTX &= ~(1 << BitX) // Clear Bit Instruction
사용방법
sbi(EIMSK, 0); // EIMSK 레지스터의 0번째 bit를 SET
sbi(EICRA, 1); // EICRA 레지스터의 1번째 bit를 SET
ps. Atmel Studio 에서 Interrupt를 사용하기 위해선
#include <avr/interrup.h>
를 추가하고
sei();
를 실행해야 함
SREG |= 0x80; 와 같은 듯
반대로 Interrupt를 금지하기 위해선
cli();
실행
SREG &= 0x7F; 와 같은 뜻
SREG레지스터가 먹히질 않아서....
Comments