12F629.BLOGSPOT.COM
PICマイコンの忘備録
絶対にマネしないでください!!
ラベル
12F1822
(2)
A/D変換
(3)
Arduino
(7)
Nikon D40 リモコン インターバルタイマー
(6)
Nゲージ 自動往復運転コントローラ
(5)
Nゲージの運転コントローラ
(3)
PICマイコンツール
(5)
XC8
(1)
サーボモーター
(1)
プログラム
(15)
赤外線リモコン送信
(1)
赤外線リモコン送信 キャリア波(38kHzか40kHz)の作成
(2)
電子部品/キット/輸入品
(26)
2011/10/21
Nikon D40 リモコン インターバルタイマー 実験
Nikon D40 リモコン インターバルタイマー 実験
1分間間隔で写真を撮影しています。
利用するカメラはNikonD40、秒針が逆回転している原因はタイマーは約2分ことに1秒遅れています。
下記の動画は撮った写真は117枚、1秒間隔で再生しています。
2011/10/16
Nikon D40 リモコン インターバルタイマー プログラム
Nikon D40 リモコン
インターバルタイマー
結果
2011/09/18
PIC でタイマーの作成
スタックにより、タイマーの作成。
サブルーチンのネストは8回までに制限されています。
まず、時間に必要なサイクル数を計算。
;//////////////////////////////////////////
;タイマー
;4Mhz
1クロック=0.00000025S = 0.25μS
;4Mhz
1サイクル=1μS
; 1S=1000mS
; 1S=1000000μS
;1秒 =1000000サイクル
;10秒 =10000000サイクル
;30秒 =30000000サイクル
;1分 =60000000サイクル
;30分 =180000000サイクル
;//////////////////////////////////////////
S6TIME
MOVLW
D'1'
;1X4+4+40=48
MOVWF
SCONT6
S6LOP
CALL
S5TIME
DECFSZ
SCONT6
GOTO
S6LOP
RETURN
S5TIME
MOVLW
D'1'
;1X4+4+32=40
MOVWF
SCONT5
S5LOP
CALL
S4TIME
DECFSZ
SCONT5
GOTO
S5LOP
RETURN
S4TIME
MOVLW
D'1'
;1X4+4+24=32
MOVWF
SCONT4
S4LOP
CALL
S3TIME
DECFSZ
SCONT4
GOTO
S4LOP
RETURN
S3TIME
MOVLW
D'1'
;1X4+4+16=24
MOVWF
SCONT3
S3LOP
CALL
S2TIME
DECFSZ
SCONT3
GOTO
S3LOP
RETURN
S2TIME
MOVLW
D'1'
;1X4+4+8=16
MOVWF
SCONT2
S2LOP
CALL
S1TIME
DECFSZ
SCONT2
GOTO
S2LOP
RETURN
S1TIME
;1000μS、1mS
MOVLW
D'1'
;1
1X4+4=8
MOVWF
SCONT1
;1
S1LOP
NOP
;1
DECFSZ
SCONT1
;1
GOTO
S1LOP
;2
RETURN
;2
;---------------------
;4MHz の場合
;1秒 =1000000サイクル
;10秒 =10000000サイクル
;30秒 =30000000サイクル
;1分 =60000000サイクル
;30分 =180000000サイクル
約1分間の例
60.000961サイクル、計算より961サイクルが多い。
2011/09/12
赤外線リモコン送信 キャリア波(38kHzか40kHz)の作成
赤外線リモコン送信 キャリア波(38kHzか40kHz)の作成
1秒間4万回点滅させる方法
1. PIC12F629
2. ロック 4MHz
4Mhz
1クロック=0.00000025S = 0.25μS
4Mhz
1サイクル=1μS
3. 40kHz 1秒/40000回=0.000025S=0.025mS=25μS
38kHz 1秒/38000回=0.000026S=0.026mS=26μS
4. 40kHz 方形波=12.5μS ON + 12.5μS OFF
38kHz 方形波=13 μS ON + 13 μS OFF
5. 600μs事にHiかLowを出力します。
600μS/25=24回
600μS/26=23回
少し進んだ
少し進んだ
下記のコマンドで 38.05-38.06kHz が発生できます。
MAIN
CALL
T600
GOTO
END
T600
MOVLW
15H
MOVWF
CONT1
PIN
BSF
GPIO,0
NOP
;1
NOP
;2
NOP
;3
NOP
;4
NOP
;5
NOP
;6
NOP
;7
NOP
;8
NOP
;9
NOP
;10
NOP
;11
NOP
;12
NOP
;13
NOP
;14
BCF
GPIO,0
NOP
;1
NOP
;2
NOP
;3
NOP
;4
NOP
;5
NOP
;6
NOP
;7
NOP
;8
NOP
;9
NOP
;10
DECFSZ
CONT1,F
;11
GOTO
PIN
;13
RETURN
;14
実際の確認結果、正しいかはわからないが、38kHzに一番違い
値になります。 38kHz 方形波=15μS ON + 14μS OFF
少し進んだ
PICKIT3(Power)で接続した場合と他の電源(電池)測定した結果、ずれが発生します。
電池(1.5×4) → 40.00-40.03kHz
5Vの電源アダプタ → 40.33-40.42kHz
http://kaihatsu.shizuoka-c.ed.jp/H20kaihatsu/kougyou/hikari_1/4shou/4_2kankei.pdf
参考資料
2011/08/16
4Mhz タイマー
;//////////////////////////////////////////
;タイマー
;4Mhz
1クロック=0.00000025S = 0.25μS
;4Mhz
1サイクル=1μS
; 1S=1000mS
; 1S=1000000μS
;//////////////////////////////////////////
TIMER1
;100μS,100コマンド、24
MOVLW
D'24'
;1 24x4+4=100
MOVWF
TCON1
;1
T1LOP
NOP
;1
DECFSZ
TCON1
;1
GOTO
T1LOP
;2
RETURN
;2
;--------------------
TIMER2
;200μS,200コマンド、49
MOVLW
D'49'
;1 49x4+4=200
MOVWF
TCON1
;1
T2LOP
NOP
;1
DECFSZ
TCON1
;1
GOTO
T2LOP
;2
RETURN
;2
;--------------------
TIMER5
;500μS,500コマンド、124
MOVLW
D'124'
;1
MOVWF
TCON1
;1
T5LOP
NOP
DECFSZ
TCON1
;1
GOTO
T5LOP
;2
RETURN
;2
;--------------------
TIMER10
;1000μS,1000コマンド、249
MOVLW
D'249'
;1 249x4+4=1000
MOVWF
TCON1
;1
T10LOP
NOP
;1
DECFSZ
TCON1
;1
GOTO
T10LOP
;2
RETURN
;2
2011/06/29
VBスクリプトでパソコンの休止状態、節電プログラム
VBS で休止状態(節電プログラム)の作成
Windowsメモ帳を開く、下記の文字をコピーして、「名前をつけて保存(A)」選択して保存する、
ファイル名は自由で、拡張子を「VBS」につけます。例 S4.VBS
保存したファイルをクロックするだけでパソコンが休止状態になります。
------
Set WshShell = CreateObject("WScript.Shell")
Msgbox "休止状態スタート"
WshShell.Run "%systemroot%\system32\rundll32.exe powrprof.dll,SetSuspendState", 6,true
------
2011/06/26
1/4W 抵抗50種類、各種類50本
1/4W 抵抗50種類、各種類50本、全部2500本
新しい投稿
前の投稿
ホーム
登録:
投稿 (Atom)