타이머/카운터
클럭 : 동작 주파수
클럭-시간
주파수-초당 진동수
Atmega2560의 클럭 16mhz
16,000,000hz - oscillator(16.000 mhz)
1:1
빠른 CPU는?
기본외부 주파수 16mhz일때, PLL이 48mhz로 뻥튀기
PLL (phase locked loop) ; 위상 동기 루프
10진법-인간-1Mhz->1000khz
2진법-컴-1Mbyte->1024kbyte
분주비의 개념
No prescaling - 분주를 하지 않음
From prescaler 분주비 (x/n)
/1024가 세기에 가장 좋음
8bit 타이머 카운터를 만드는데는 8/64/256/1024 중에서
오차 없는 분주비 64가 최적
동작주파수 |
분주비 |
클럭당 소요시간 |
기준시간 |
카운터 |
16000000 |
1 |
0.00000006250000000000 |
0.001 |
16000.000 |
8 |
0.00000050000000000000 |
0.001 |
2000.000 | |
64 |
0.00000400000000000000 |
0.001 |
250.000 | |
256 |
0.00001600000000000000 |
0.001 |
62.500 | |
1024 |
0.00006400000000000000 |
0.001 |
15.625 |
내부 인터럽트 - 두가지 방식
over flow방식, compare방식
over flow방식
CharA=256; printf 했을 때 0
Interrupt Vectors in ATmega 2560
Table
타이머 카운터 실습
1초마다 A세기
시간 출력(00:00:03)
char caTime[]="00:00:00";
//0시 0분 0초, 2byte : 0~65535 최대 18시간 저장가능한 시계를 만들수 있다.
'0' |
'0' |
: |
'0' |
'0' |
: |
'0' |
'0' |
null |
[0] [1] 2 [3] [4] 5 [6] [7] 8 - 9개
시 : 0, 1 / 분 : 3, 4 / 초 : 6, 7
'코스웨어 > 16년 스마트컨트롤러' 카테고리의 다른 글
2016.03.16 이종찬 업무일지 (1) | 2016.03.18 |
---|---|
2016.03.17 이종찬 업무일지 (2) | 2016.03.18 |
20160317_김가연_업무일지_LCD 시간 출력 (3) | 2016.03.18 |
아두이노 시계 (2) | 2016.03.17 |
20160317-이보원 업무일지 펌웨어 ATMega2560(타미머) (2) | 2016.03.17 |
20160317_장진웅_업무일지_펌웨어 실습(타이머카운터) (1) | 2016.03.17 |
20160315-허도경-업무일지-전역/지역변수, 펌웨어 분석/실습 (0) | 2016.03.17 |
타이머 카운터 소스 (0) | 2016.03.17 |