日々の記録

ほどよく書いてきます。

Nikon DSLR IR Remote

2013年07月14日 23時56分47秒 | その他雑記
ニコンのデジカメのシャッター、リモコンで動かせるのだが、
マイコンでコントロールできてしまえば、インターバル撮影できるようになる。
D7000かD7100なら繰り返し撮影できるらしいんだけどね。

あとは好みの繰り返しループを。
_delay_us()が引数に変数を渡せないらしいと知ってびっくりした。

マイコンはATTiny13Aを使おうと思っているので、足は8本、電源で2本、リセット端子が1つ、赤外線リモコンへの端子が1本、残りは4本の脚。
4本の足を使えば2^4=16パターンの作れる。

/*
* _20130714_tiny13a_nikon_remote.c
*
* Created: 2013/07/14 16:28:42
* Author: user
*/

#define F_CPU 1200000
#include <avr/io.h>
#include <util/delay.h>

int main(void)
{
DDRB = 0b00000010; // 出力方向にする
TCCR0A = 0b00000011; //まずは出力なしでカウンターを回す

TCCR0B = 0b00001001;
OCR0A = 31; // (( 1.2MHz / 38kHz ) / 1(分周) ) - 1 = 30.6
OCR0B = 11; // duty比を1/3にする ( 1.2MHz / 38kHz ) / 3 = 10.5

while(1)
{
TCCR0A = 0b100011; _delay_us( 2000);
TCCR0A = 0b000011; _delay_us(27850);
TCCR0A = 0b100011; _delay_us( 390);
TCCR0A = 0b000011; _delay_us( 1580);
TCCR0A = 0b100011; _delay_us( 410);
TCCR0A = 0b000011; _delay_us( 3580);
TCCR0A = 0b100011; _delay_us( 400);
TCCR0A = 0b000011; _delay_us(63200);
}
}
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする