プログラマブル赤外線リモコン送信機の製作②
32x64=2048通りのRC5リモコン信号を送れます、、と言っても一つづつ常用漢字を充てても十分なくらいの数量。機能の多いガラパゴス携帯電話の設定みたいにステージアップで選択するような無限大の事が出来る。 肝心なのは、作った作品の機能操作にどのアドレスとコマンドを使ったかと言う事。自分の今までの作品のRC5リモコン信号をどれを使ったのか記録して無いのでもう一度整理し直して誤動作が起きない様に考えてみる。
基板用DIPスイッチ 8Pでの設定 AVRマイコンATtiny2313A
1P- PortD-5
2P- PortD-4
3P- PortD-3
4P- PortD-2
5P- PortA-0
6P- PortA-1
エクセルで32x64=2048通りのRC5リモコン信号使用用途一覧表を作ってみた。
プッシュSWを8個で共通性のあるコントロールの規則性を作ってみようと思う。
基板用タクトスイッチ AVRマイコンATtiny2313A
黒 SW1:1個 PortB-0
白 SW2:1個 PortB-1
赤 SW3:1個 PortB-2
水 SW4:1個 PortD-6
橙 SW5:1個 PortB-6
黄 SW6:1個 PortB-5
10m位の距離でも伝達出来るので、赤外線LED[5mm] 2個使用の物も作ってみた。
トイラジコンの改造模してみようと思う。
AVRマイコンATtiny2313Aのプログラムは次回。
基板用DIPスイッチ 8Pでの設定 AVRマイコンATtiny2313A
1P- PortD-5
2P- PortD-4
3P- PortD-3
4P- PortD-2
5P- PortA-0
6P- PortA-1
エクセルで32x64=2048通りのRC5リモコン信号使用用途一覧表を作ってみた。
プッシュSWを8個で共通性のあるコントロールの規則性を作ってみようと思う。
基板用タクトスイッチ AVRマイコンATtiny2313A
黒 SW1:1個 PortB-0
白 SW2:1個 PortB-1
赤 SW3:1個 PortB-2
水 SW4:1個 PortD-6
橙 SW5:1個 PortB-6
黄 SW6:1個 PortB-5
10m位の距離でも伝達出来るので、赤外線LED[5mm] 2個使用の物も作ってみた。
トイラジコンの改造模してみようと思う。
AVRマイコンATtiny2313Aのプログラムは次回。
赤外線リモコン・プログラマブルイルミネーションLED
赤外線リモコン・プログラマブルイルミネーションLED
クリスマスツリーに飾り付け配線まで出来ずにブレッドボードのままクリスマスを迎えてしまいました。もうこのままで良いか。
イルミネーションプログラム
' **************************************************
' * ledpikapikaプログラム *
' * AVR is using ATtiny2313 S.Tsuda *
' * Basic Compiler is BASCOM-AVR *
' * Copyright By LEDeco 2012. 12.19 *
' **************************************************
$Regfile = "attiny2313.dat" 'AVRデバイスを"ATtiny2313"に設定
$crystal = 1000000 'クロック周波数を4MHzに設定。
$hwstack = 32 'ハードウェア・スタックの容量を設定。
$swstack = 8 'ソフトウェア・スタックの容量を設定。
$framesize = 24 'フレーム領域の容量を設定。
Config Porta = Output 'Portaの接続ポートを出力に設定する。
Config Portb = Output 'Portbの接続ポートを出力に設定する。
Config Portd.0 = Output 'Portd.0の接続ポートを出力に設定する。
Config Portd.1 = Output 'Portd.1の接続ポートを出力に設定する。
Config Portd.2 = Output 'Portd.2の接続ポートを出力に設定する。
Config Portd.3 = Output 'Portd.3の接続ポートを出力に設定する。
Config Portd.4 = Output 'Portd.4の接続ポートを出力に設定する。
Config Portd.5 = Output 'Portd.5の接続ポートを出力に設定する。
Config Rc5 = Pind.6 , Wait = 2000 '赤外線受信モジュールの接続ポートを設定する。
Dim Ads As Byte 'リモコンRC5コードのアドレス。(0 ~ 31)
Dim Cmd As Byte 'リモコンRC5コードのコマンド。(0 ~ 63)
Enable Interrupts
Dim R As Byte
Dim N As Byte
Dim M As Byte
Dim T As word
Dim s As word
Do
R = 0
T = 30
N = 1
s = 300
Porta = &B00000011
Portb = &B00000000
Portd = &B00111111
Wait 7
Portb = &B00000001
Waitms T
Portb = &B00000000
Waitms s
Portb = &B00000010
Waitms T
Portb = &B00000000
Waitms s
Portb = &B00000100
Waitms T
Portb = &B00000000
Waitms s
Portb = &B00001000
Waitms T
Portb = &B00000000
Waitms s
Portb = &B00010000
Waitms T
Portb = &B00000000
Waitms s
Portb = &B00100000
Waitms T
Portb = &B00000000
Waitms s
Portb = &B01000000
Waitms T
Portb = &B00000000
Waitms s
Portb = &B10000000
Waitms T
Portb = &B00000000
Wait 7
Do
Do
Do
Getrc5(ads , Cmd)
If Ads < 32 Then
Exit Do
End If
Loop
If Ads = 0 Then
If Cmd = 0 Then
Portb = &B11111111
Exit Do
End If
If Cmd = 1 Then
PORTb = &B01010101
Exit Do
End If
If Cmd = 2 Then
PORTb = &B10101010
Exit Do
End If
If Cmd = 3 Then
PORTb = &B11001100
Exit Do
End If
If Cmd = 4 Then
PORTb = &B00110011
Exit Do
End If
If Cmd = 5 Then
PORTb = &B11110000
Exit Do
End If
If Cmd = 6 Then
PORTb = &B00001111
Exit Do
End If
If Cmd = 7 Then
Portb = &B00000000
Exit Do
End If
If Cmd = 8 Then
Portb = &B00000000
Exit Do
End If
If Cmd > 8 Then
Portb = &B00000000
Exit Do
End If
End If
If Ads = 1 Then
If Cmd = 0 Then
Portb = &B11111111
Exit Do
End If
If Cmd = 1 Then
Portb = &B11111110
Exit Do
End If
If Cmd = 2 Then
Portb = &B11111101
Exit Do
End If
If Cmd = 3 Then
Portb = &B11111011
Exit Do
End If
If Cmd = 4 Then
Portb = &B11110111
Exit Do
End If
If Cmd = 5 Then
Portb = &B11101111
Exit Do
End If
If Cmd = 6 Then
Portb = &B11011111
Exit Do
End If
If Cmd = 7 Then
Portb = &B10111111
Exit Do
End If
If Cmd = 8 Then
Portb = &B01111111
Exit Do
End If
If Cmd > 8 Then
Portb = &B00000000
Exit Do
End If
End If
If Ads = 2 Then
If Cmd = 0 Then
Portb = &B11111111
Exit Do
End If
If Cmd = 1 Then
PORTb = &B00000001
Exit Do
End If
If Cmd = 2 Then
PORTb = &B00000010
Exit Do
End If
If Cmd = 3 Then
PORTb = &B00000100
Exit Do
End If
If Cmd = 4 Then
PORTb = &B00001000
Exit Do
End If
If Cmd = 5 Then
PORTb = &B00010000
Exit Do
End If
If Cmd = 6 Then
PORTb = &B00100000
Exit Do
End If
If Cmd = 7 Then
Portb = &B01000000
Exit Do
End If
If Cmd = 8 Then
Portb = &B10000000
Exit Do
End If
If Cmd > 8 Then
Portb = &B00000000
Exit Do
End If
End If
Waitms s
Loop
Loop
Loop
End
クリスマスツリーに飾り付け配線まで出来ずにブレッドボードのままクリスマスを迎えてしまいました。もうこのままで良いか。
イルミネーションプログラム
' **************************************************
' * ledpikapikaプログラム *
' * AVR is using ATtiny2313 S.Tsuda *
' * Basic Compiler is BASCOM-AVR *
' * Copyright By LEDeco 2012. 12.19 *
' **************************************************
$Regfile = "attiny2313.dat" 'AVRデバイスを"ATtiny2313"に設定
$crystal = 1000000 'クロック周波数を4MHzに設定。
$hwstack = 32 'ハードウェア・スタックの容量を設定。
$swstack = 8 'ソフトウェア・スタックの容量を設定。
$framesize = 24 'フレーム領域の容量を設定。
Config Porta = Output 'Portaの接続ポートを出力に設定する。
Config Portb = Output 'Portbの接続ポートを出力に設定する。
Config Portd.0 = Output 'Portd.0の接続ポートを出力に設定する。
Config Portd.1 = Output 'Portd.1の接続ポートを出力に設定する。
Config Portd.2 = Output 'Portd.2の接続ポートを出力に設定する。
Config Portd.3 = Output 'Portd.3の接続ポートを出力に設定する。
Config Portd.4 = Output 'Portd.4の接続ポートを出力に設定する。
Config Portd.5 = Output 'Portd.5の接続ポートを出力に設定する。
Config Rc5 = Pind.6 , Wait = 2000 '赤外線受信モジュールの接続ポートを設定する。
Dim Ads As Byte 'リモコンRC5コードのアドレス。(0 ~ 31)
Dim Cmd As Byte 'リモコンRC5コードのコマンド。(0 ~ 63)
Enable Interrupts
Dim R As Byte
Dim N As Byte
Dim M As Byte
Dim T As word
Dim s As word
Do
R = 0
T = 30
N = 1
s = 300
Porta = &B00000011
Portb = &B00000000
Portd = &B00111111
Wait 7
Portb = &B00000001
Waitms T
Portb = &B00000000
Waitms s
Portb = &B00000010
Waitms T
Portb = &B00000000
Waitms s
Portb = &B00000100
Waitms T
Portb = &B00000000
Waitms s
Portb = &B00001000
Waitms T
Portb = &B00000000
Waitms s
Portb = &B00010000
Waitms T
Portb = &B00000000
Waitms s
Portb = &B00100000
Waitms T
Portb = &B00000000
Waitms s
Portb = &B01000000
Waitms T
Portb = &B00000000
Waitms s
Portb = &B10000000
Waitms T
Portb = &B00000000
Wait 7
Do
Do
Do
Getrc5(ads , Cmd)
If Ads < 32 Then
Exit Do
End If
Loop
If Ads = 0 Then
If Cmd = 0 Then
Portb = &B11111111
Exit Do
End If
If Cmd = 1 Then
PORTb = &B01010101
Exit Do
End If
If Cmd = 2 Then
PORTb = &B10101010
Exit Do
End If
If Cmd = 3 Then
PORTb = &B11001100
Exit Do
End If
If Cmd = 4 Then
PORTb = &B00110011
Exit Do
End If
If Cmd = 5 Then
PORTb = &B11110000
Exit Do
End If
If Cmd = 6 Then
PORTb = &B00001111
Exit Do
End If
If Cmd = 7 Then
Portb = &B00000000
Exit Do
End If
If Cmd = 8 Then
Portb = &B00000000
Exit Do
End If
If Cmd > 8 Then
Portb = &B00000000
Exit Do
End If
End If
If Ads = 1 Then
If Cmd = 0 Then
Portb = &B11111111
Exit Do
End If
If Cmd = 1 Then
Portb = &B11111110
Exit Do
End If
If Cmd = 2 Then
Portb = &B11111101
Exit Do
End If
If Cmd = 3 Then
Portb = &B11111011
Exit Do
End If
If Cmd = 4 Then
Portb = &B11110111
Exit Do
End If
If Cmd = 5 Then
Portb = &B11101111
Exit Do
End If
If Cmd = 6 Then
Portb = &B11011111
Exit Do
End If
If Cmd = 7 Then
Portb = &B10111111
Exit Do
End If
If Cmd = 8 Then
Portb = &B01111111
Exit Do
End If
If Cmd > 8 Then
Portb = &B00000000
Exit Do
End If
End If
If Ads = 2 Then
If Cmd = 0 Then
Portb = &B11111111
Exit Do
End If
If Cmd = 1 Then
PORTb = &B00000001
Exit Do
End If
If Cmd = 2 Then
PORTb = &B00000010
Exit Do
End If
If Cmd = 3 Then
PORTb = &B00000100
Exit Do
End If
If Cmd = 4 Then
PORTb = &B00001000
Exit Do
End If
If Cmd = 5 Then
PORTb = &B00010000
Exit Do
End If
If Cmd = 6 Then
PORTb = &B00100000
Exit Do
End If
If Cmd = 7 Then
Portb = &B01000000
Exit Do
End If
If Cmd = 8 Then
Portb = &B10000000
Exit Do
End If
If Cmd > 8 Then
Portb = &B00000000
Exit Do
End If
End If
Waitms s
Loop
Loop
Loop
End
プログラマブル赤外線リモコン送信機の製作①
プログラマブル赤外線リモコン送信機を製作しました。32x64=2048通りのRC5リモコン信号を送れます。
受信は、流星LED光の滴イルミネーションやクリスマス用プログラマブルイルミネーションLEDの回路図に付けていた赤外線リモコン受信機の赤外線モジュールを使います。プログラムは未対応。
アトメルのAVR410:RC5赤外リモコン受信器、AVR415:RC5赤外リモコン送信機を参考に
BASCOM-AVRに用意されているRC5規格の赤外線リモコン用を使用しました。
ヨーロッパ規格のPhilipsのフィリップステレビ、フィリップスDVDを所有の方は誤動作
する恐れがあるけど日本での使用は大丈夫でしょう。
BASCOM-AVRのBASICコンパイラ(有償版)でプログラムしました。
仕様書 DEVICEコード(Address)が5ビット アドレス(Add)(0 ~ 31)
COMMANDが6ビット(Command)が6ビット コマンド(Com)(0 ~ 63)
アドレス(Add)(0 ~ 31)とコマンド(Com)(0 ~ 63)の組み合わせで32x64=2048通りの
リモコン信号を送れます。
トグルビット。 (0 or 32)は、リモコン信号を一回送るたびに反転します。
設定 8個のタクトスィッチと基板用DIPスイッチ 8Pの組み合わせで設定します。
8個のタクトスィッチには直ぐに押して動作用ボタンSWで、DIPスイッチ 8Pはパターン
設定、アドレス設定に使用。
出力端子 AVRマイコンATtiny2313Aの端子接続 PortB-3(OC1A)
36KHz赤外線リモコン信号発信
ハイサイドSW
デュアルPchチップMOS 1/2使用
FET FDS4935A 30V7A
赤外線LED[5mm] 3個使用
[940nm][55mW/sr]
OSI5LA5113A
◆順方向電圧(VF):1.35V(標準)(@100mA)
◆順方向電流(IF):標準50mA
最大定格電流 DC:100mA
◆放射強度:55mW/sr(@50mA)
◆ピーク波長:940nm(標準)(@50mA)
今回はブレッドボード配線では接続が不安なので片面ガラス・ユニバーサル基板(ブレッドボード配線パターンタイプ)を使って半田付けしました。
回路設計図
AVRマイコンATtiny2313Aの端子が16入力1出力になります。(送信機)
受信機側のAVRマイコンATtiny2313Aの設定は1入力16出力と逆なのでプログラム
をフラッシュメモリに書き込む時や装着時に間違うとダメになる恐れがあります。
ハイサイドSW デュアルPchチップMOSを取り付けないでテスト。赤色LEDは赤外線は見えないので仮接続で確認。赤色LEDを赤外線LED OSI5LA5113Aに替えて100Ω位の抵抗直列でATtiny2313Aの PortB-3に繋いでも1~2mならリモコン信号を送れます。
一応完成プログラムと動作確認。
クリスマス用プログラマブルイルミネーションLED 124個のイルミネーションLEDをコントロールしてみた。
RC5のリモコン信号BASCOM-AVRプログラムと動画は次回
受信は、流星LED光の滴イルミネーションやクリスマス用プログラマブルイルミネーションLEDの回路図に付けていた赤外線リモコン受信機の赤外線モジュールを使います。プログラムは未対応。
アトメルのAVR410:RC5赤外リモコン受信器、AVR415:RC5赤外リモコン送信機を参考に
BASCOM-AVRに用意されているRC5規格の赤外線リモコン用を使用しました。
ヨーロッパ規格のPhilipsのフィリップステレビ、フィリップスDVDを所有の方は誤動作
する恐れがあるけど日本での使用は大丈夫でしょう。
BASCOM-AVRのBASICコンパイラ(有償版)でプログラムしました。
仕様書 DEVICEコード(Address)が5ビット アドレス(Add)(0 ~ 31)
COMMANDが6ビット(Command)が6ビット コマンド(Com)(0 ~ 63)
アドレス(Add)(0 ~ 31)とコマンド(Com)(0 ~ 63)の組み合わせで32x64=2048通りの
リモコン信号を送れます。
トグルビット。 (0 or 32)は、リモコン信号を一回送るたびに反転します。
設定 8個のタクトスィッチと基板用DIPスイッチ 8Pの組み合わせで設定します。
8個のタクトスィッチには直ぐに押して動作用ボタンSWで、DIPスイッチ 8Pはパターン
設定、アドレス設定に使用。
出力端子 AVRマイコンATtiny2313Aの端子接続 PortB-3(OC1A)
36KHz赤外線リモコン信号発信
ハイサイドSW
デュアルPchチップMOS 1/2使用
FET FDS4935A 30V7A
赤外線LED[5mm] 3個使用
[940nm][55mW/sr]
OSI5LA5113A
◆順方向電圧(VF):1.35V(標準)(@100mA)
◆順方向電流(IF):標準50mA
最大定格電流 DC:100mA
◆放射強度:55mW/sr(@50mA)
◆ピーク波長:940nm(標準)(@50mA)
今回はブレッドボード配線では接続が不安なので片面ガラス・ユニバーサル基板(ブレッドボード配線パターンタイプ)を使って半田付けしました。
回路設計図
AVRマイコンATtiny2313Aの端子が16入力1出力になります。(送信機)
受信機側のAVRマイコンATtiny2313Aの設定は1入力16出力と逆なのでプログラム
をフラッシュメモリに書き込む時や装着時に間違うとダメになる恐れがあります。
ハイサイドSW デュアルPchチップMOSを取り付けないでテスト。赤色LEDは赤外線は見えないので仮接続で確認。赤色LEDを赤外線LED OSI5LA5113Aに替えて100Ω位の抵抗直列でATtiny2313Aの PortB-3に繋いでも1~2mならリモコン信号を送れます。
一応完成プログラムと動作確認。
クリスマス用プログラマブルイルミネーションLED 124個のイルミネーションLEDをコントロールしてみた。
RC5のリモコン信号BASCOM-AVRプログラムと動画は次回
流星LED・光の滴LEDイルミネーション①
2年前に依頼を受けて創った流星LEDの資料を無くしてしまった。YouTube動画は残っているんだけど。
もう一度、ブレッドボードでマイコンATtiny2313を使い作り直してみる。
もう一度前みたいに、プログラムはアッセンブラで作る気力ないのでC言語か、BASICで
作ってみる事にする。
8X8=64LEDダイナミック点灯回路・
ハイサイドSW
デュアルPchチップMOS
FET FDS4935A 30V7A
■ID:最大-7A
■RDS:19mΩ(ID=-7A,VGS=-10V)
■ゲート・ソースプロテクションダイオード内蔵
4個使用
ローサイドSW
8ch NPN トランジスタアレイ TD62083
超高輝度LED白色3mm OSWT3166B 1500~2180mcd 64個
◆外形3mm
◆発光色:白色
◆順方向電圧(VF):3.4V(標準)(@20mA)
◆輝度:1500mcd(標準)(@20mA)
◆逆耐圧:5.0V
◆半減角:60°(広角)
プログラムと動画は次回掲載予定。
もう一度、ブレッドボードでマイコンATtiny2313を使い作り直してみる。
もう一度前みたいに、プログラムはアッセンブラで作る気力ないのでC言語か、BASICで
作ってみる事にする。
8X8=64LEDダイナミック点灯回路・
ハイサイドSW
デュアルPchチップMOS
FET FDS4935A 30V7A
■ID:最大-7A
■RDS:19mΩ(ID=-7A,VGS=-10V)
■ゲート・ソースプロテクションダイオード内蔵
4個使用
ローサイドSW
8ch NPN トランジスタアレイ TD62083
超高輝度LED白色3mm OSWT3166B 1500~2180mcd 64個
◆外形3mm
◆発光色:白色
◆順方向電圧(VF):3.4V(標準)(@20mA)
◆輝度:1500mcd(標準)(@20mA)
◆逆耐圧:5.0V
◆半減角:60°(広角)
プログラムと動画は次回掲載予定。
クリスマス用プログラマブルイルミネーションLED②
クリスマス用プログラマブルイルミネーションLED②
クリスマスツリーのイルミネーション用に出来るだけ沢山のカラーLEDをコントロールする事を考えてみた。ハイサイドSW8chローサイドSW8chで64個の個別制御。
テストはブレッドボードに載せれるだけイルミネーションLEDを点けて見た。
(回路は8x8=64個の設計)
5mmRGB7色自動変化ゆっくりタイプIC内蔵を40個
出来るだけ簡単な配線でRGBイルミネーションLED出来るように考えてみた。
YouTube動画は機材を一新してハイビジョン撮影してみた。
マイコンATtiny2313でプログラムは使い慣れたBASCOMーAVRのBASICで
ブレッドボードイルミネーションLED配線回路図
ハイサイドSW
デュアルPchチップMOS
FET FDS4935A 30V7A
■ID:最大-7A
■RDS:19mΩ(ID=-7A,VGS=-10V)
■ゲート・ソースプロテクションダイオード内蔵
4個使用
ブレッドボードには、最大5mmRGB7色自動変化ゆっくりタイプIC内蔵が40個しか乗らないので
動画は40個。
使用材料
ローサイドSW
8ch NPN トランジスタアレイ TD62083
マイコン ATtiny2313
BASCOMーAVRのBASICプログラム
クリスマスツリーのイルミネーション用に出来るだけ沢山のカラーLEDをコントロールする事を考えてみた。ハイサイドSW8chローサイドSW8chで64個の個別制御。
テストはブレッドボードに載せれるだけイルミネーションLEDを点けて見た。
(回路は8x8=64個の設計)
5mmRGB7色自動変化ゆっくりタイプIC内蔵を40個
出来るだけ簡単な配線でRGBイルミネーションLED出来るように考えてみた。
YouTube動画は機材を一新してハイビジョン撮影してみた。
マイコンATtiny2313でプログラムは使い慣れたBASCOMーAVRのBASICで
ブレッドボードイルミネーションLED配線回路図
ハイサイドSW
デュアルPchチップMOS
FET FDS4935A 30V7A
■ID:最大-7A
■RDS:19mΩ(ID=-7A,VGS=-10V)
■ゲート・ソースプロテクションダイオード内蔵
4個使用
ブレッドボードには、最大5mmRGB7色自動変化ゆっくりタイプIC内蔵が40個しか乗らないので
動画は40個。
使用材料
ローサイドSW
8ch NPN トランジスタアレイ TD62083
マイコン ATtiny2313
BASCOMーAVRのBASICプログラム
クリスマス用プログラマブルイルミネーションLED
5mmRGB7色自動変化ゆっくりタイプIC内蔵を15個とマイコンATtiny2313
を使ってクリスマス用小物のプログラマブルイルミネーションLEDを創ってみた。
小型のクリスマスツリーやクリスマスリース等の飾り付けに最適かな。
ブレッドボードATtiny2313iイルミネーションLED回路
ブレッドボードATtiny2313iイルミネーションLED回路図
AVR ATtiny2313 端子
ブレッドボードATtiny2313AVRISPmk2 書込み図
5mmRGB7色自動変化ゆっくりタイプ
IC内蔵で自動的にゆっくり7色に変化します。
とても綺麗な発色
動作電圧 3.5-5.0V
点灯周期 34秒/1サイクル(Vdd4.5V時)
RED 800mcd 620-635nm
GREEN 1500mcd 515-530nm
BLUE 1000mcd 460-475nm
http://www.led-paradise.com/product/295
ブレッドボード 極性間違わない様に+側赤、-側黒にマジックインキで表示
開発環境は、Atmel Studio 6.0 / AVRISPmk2
プログラマブルイルミネーションLEDのプログラム
右から順番に500m秒間隔で順次点灯。
25秒間RGB7色自動変化が右から流れる。
一斉消灯100m秒
色をそろえて赤色から25秒間RGB一斉点灯。
一斉消灯100m秒
左から順番に500m秒間隔で順次点灯。
25秒間RGB7色自動変化が右から流れる。
一斉消灯100m秒
色をそろえて赤色から25秒間RGB一斉点灯。
の繰り返し。
この内容を なれないC言語で作成 BASCOMーAVRのBASICなら簡単だけど。
portAを出力に指定してるけど5mmRGB7色自動変化ゆっくりタイプIC内蔵を17個まで対応
できる。リセット端子も出力に指定すれば17個まで対応可能だけど書き替え出来なくなる
おそれが有りますね。
/*
* GccApplication6.c
*
* Created: 2012/11/24 12:59:05
* Author: LEDeco
*/
#include
#include//点灯時間の指定に使います
int main (void) {
DDRA=0b00000011; //portAを出力に指定
DDRB=0b11111111; //portBを出力に指定
DDRD=0b11111111; //portDを出力に指定
PORTA=0b00000000;
PORTB=0b00000000;
PORTD=0b00000000;
_delay_ms(2000);
PORTA=0b00000011;
PORTB=0b11111111;
PORTD=0b01111111;
_delay_ms(2000);
for(;;){//無限繰り返しです
//発光パターン指定
//維持時間指定1000
PORTB=0b11111110;
_delay_ms(500);
PORTB=0b11111100;
_delay_ms(500);
PORTB=0b11111000;
_delay_ms(500);
PORTB=0b11110000;
_delay_ms(500);
PORTB=0b11100000;
_delay_ms(500);
PORTB=0b11000000;
_delay_ms(500);
PORTB=0b10000000;
_delay_ms(500);
PORTB=0b00000000;
_delay_ms(500);
PORTD=0b01111110;
_delay_ms(500);
PORTD=0b01111100;
_delay_ms(500);
PORTD=0b01111000;
_delay_ms(500);
PORTD=0b01110000;
_delay_ms(500);
PORTD=0b01100000;
_delay_ms(500);
PORTD=0b01000000;
_delay_ms(500);
PORTD=0b00000000;
_delay_ms(500);
PORTA=0b00000001;
_delay_ms(500);
PORTA=0b00000000;
_delay_ms(500);
_delay_ms(25000);
PORTA=0b00000011;
PORTB=0b11111111;
PORTD=0b01111111;
_delay_ms(100);
PORTA=0b00000000;
PORTB=0b00000000;
PORTD=0b00000000;
_delay_ms(25000);
PORTA=0b00000011;
PORTB=0b11111111;
PORTD=0b01111111;
_delay_ms(100);
PORTD=0b00111111;
_delay_ms(500);
PORTD=0b00011111;
_delay_ms(500);
PORTD=0b00001111;
_delay_ms(500);
PORTD=0b00000111;
_delay_ms(500);
PORTD=0b00000011;
_delay_ms(500);
PORTD=0b00000001;
_delay_ms(500);
PORTD=0b00000000;
_delay_ms(500);
PORTB=0b01111111;
_delay_ms(500);
PORTB=0b00111111;
_delay_ms(500);
PORTB=0b00011111;
_delay_ms(500);
PORTB=0b00001111;
_delay_ms(500);
PORTB=0b00000111;
_delay_ms(500);
PORTB=0b00000011;
_delay_ms(500);
PORTB=0b00000001;
_delay_ms(500);
PORTB=0b00000000;
_delay_ms(500);
PORTA=0b00000001;
_delay_ms(500);
PORTA=0b00000000;
_delay_ms(500);
_delay_ms(20000);
PORTA=0b00000011;
PORTB=0b11111111;
PORTD=0b01111111;
_delay_ms(100);
PORTA=0b00000000;
PORTB=0b00000000;
PORTD=0b00000000;
_delay_ms(25000);
PORTA=0b00000011;
PORTB=0b11111111;
PORTD=0b01111111;
_delay_ms(500);
}
return 0;
}
を使ってクリスマス用小物のプログラマブルイルミネーションLEDを創ってみた。
小型のクリスマスツリーやクリスマスリース等の飾り付けに最適かな。
ブレッドボードATtiny2313iイルミネーションLED回路
ブレッドボードATtiny2313iイルミネーションLED回路図
AVR ATtiny2313 端子
ブレッドボードATtiny2313AVRISPmk2 書込み図
5mmRGB7色自動変化ゆっくりタイプ
IC内蔵で自動的にゆっくり7色に変化します。
とても綺麗な発色
動作電圧 3.5-5.0V
点灯周期 34秒/1サイクル(Vdd4.5V時)
RED 800mcd 620-635nm
GREEN 1500mcd 515-530nm
BLUE 1000mcd 460-475nm
http://www.led-paradise.com/product/295
ブレッドボード 極性間違わない様に+側赤、-側黒にマジックインキで表示
開発環境は、Atmel Studio 6.0 / AVRISPmk2
プログラマブルイルミネーションLEDのプログラム
右から順番に500m秒間隔で順次点灯。
25秒間RGB7色自動変化が右から流れる。
一斉消灯100m秒
色をそろえて赤色から25秒間RGB一斉点灯。
一斉消灯100m秒
左から順番に500m秒間隔で順次点灯。
25秒間RGB7色自動変化が右から流れる。
一斉消灯100m秒
色をそろえて赤色から25秒間RGB一斉点灯。
の繰り返し。
この内容を なれないC言語で作成 BASCOMーAVRのBASICなら簡単だけど。
portAを出力に指定してるけど5mmRGB7色自動変化ゆっくりタイプIC内蔵を17個まで対応
できる。リセット端子も出力に指定すれば17個まで対応可能だけど書き替え出来なくなる
おそれが有りますね。
/*
* GccApplication6.c
*
* Created: 2012/11/24 12:59:05
* Author: LEDeco
*/
#include
#include
int main (void) {
DDRA=0b00000011; //portAを出力に指定
DDRB=0b11111111; //portBを出力に指定
DDRD=0b11111111; //portDを出力に指定
PORTA=0b00000000;
PORTB=0b00000000;
PORTD=0b00000000;
_delay_ms(2000);
PORTA=0b00000011;
PORTB=0b11111111;
PORTD=0b01111111;
_delay_ms(2000);
for(;;){//無限繰り返しです
//発光パターン指定
//維持時間指定1000
PORTB=0b11111110;
_delay_ms(500);
PORTB=0b11111100;
_delay_ms(500);
PORTB=0b11111000;
_delay_ms(500);
PORTB=0b11110000;
_delay_ms(500);
PORTB=0b11100000;
_delay_ms(500);
PORTB=0b11000000;
_delay_ms(500);
PORTB=0b10000000;
_delay_ms(500);
PORTB=0b00000000;
_delay_ms(500);
PORTD=0b01111110;
_delay_ms(500);
PORTD=0b01111100;
_delay_ms(500);
PORTD=0b01111000;
_delay_ms(500);
PORTD=0b01110000;
_delay_ms(500);
PORTD=0b01100000;
_delay_ms(500);
PORTD=0b01000000;
_delay_ms(500);
PORTD=0b00000000;
_delay_ms(500);
PORTA=0b00000001;
_delay_ms(500);
PORTA=0b00000000;
_delay_ms(500);
_delay_ms(25000);
PORTA=0b00000011;
PORTB=0b11111111;
PORTD=0b01111111;
_delay_ms(100);
PORTA=0b00000000;
PORTB=0b00000000;
PORTD=0b00000000;
_delay_ms(25000);
PORTA=0b00000011;
PORTB=0b11111111;
PORTD=0b01111111;
_delay_ms(100);
PORTD=0b00111111;
_delay_ms(500);
PORTD=0b00011111;
_delay_ms(500);
PORTD=0b00001111;
_delay_ms(500);
PORTD=0b00000111;
_delay_ms(500);
PORTD=0b00000011;
_delay_ms(500);
PORTD=0b00000001;
_delay_ms(500);
PORTD=0b00000000;
_delay_ms(500);
PORTB=0b01111111;
_delay_ms(500);
PORTB=0b00111111;
_delay_ms(500);
PORTB=0b00011111;
_delay_ms(500);
PORTB=0b00001111;
_delay_ms(500);
PORTB=0b00000111;
_delay_ms(500);
PORTB=0b00000011;
_delay_ms(500);
PORTB=0b00000001;
_delay_ms(500);
PORTB=0b00000000;
_delay_ms(500);
PORTA=0b00000001;
_delay_ms(500);
PORTA=0b00000000;
_delay_ms(500);
_delay_ms(20000);
PORTA=0b00000011;
PORTB=0b11111111;
PORTD=0b01111111;
_delay_ms(100);
PORTA=0b00000000;
PORTB=0b00000000;
PORTD=0b00000000;
_delay_ms(25000);
PORTA=0b00000011;
PORTB=0b11111111;
PORTD=0b01111111;
_delay_ms(500);
}
return 0;
}
プログラマブルイルミネーションLED③
なんかマイコン使って工作する気が失せる商品 5mmRGB7色自動変化イルミネーションフルカラーLED(IC内蔵7色自動変化)をシュミレーションしたプログラマブルイルミネーションLED ATtiny10 のプログラムを変えてイルミネーションフルカラーLEDを3個コントロールしてみた。
イルミネーションフルカラーLED(IC内蔵7色自動変化)
5mmRGB7色自動変化速めタイプ
IC内蔵で自動的に7色に変化します。
変化の速いタイプで賑やかな感じです。
とても綺麗な発色
動作電圧 3.5-5.0V
点灯周期 15秒/1サイクル(Vdd4.5V時)
RED 800mcd 645nm
GREEN 1500mcd 520nm
BLUE 1000mcd 470nm
Angle:15°(typ)
http://www.led-paradise.com/product/296
5mmRGB7色自動変化ゆっくりタイプ
IC内蔵で自動的にゆっくり7色に変化します。
とても綺麗な発色
動作電圧 3.5-5.0V
点灯周期 34秒/1サイクル(Vdd4.5V時)
RED 800mcd 620-635nm
GREEN 1500mcd 515-530nm
BLUE 1000mcd 460-475nm
http://www.led-paradise.com/product/295
エルパラで仕入れた5mmRGB7色自動変化イルミネーションフルカラーLED(IC内蔵7色自動変化)
Atmel Studio 6.0/ AVRISPmk2でコンパイルしたhexファイルを ATtiny10 にTPIで書き込む方法。
Atmel Studio 6.0を立ち上げてAVRISPmk2の配線して電源入れてからUSBを差し込む
Toolsから Device Programmingを選択
Applyバーをクリックして Device signature バーをクリックして電圧 target Voltageバーをクリックして、チップの型番が解る。
Tool innfomation
Device innfomation
Erase now Flash(1KB) の所をチェックして書き込むHexファイルを指定する。
Programming バーをクリックすると書き込み開始。直ぐに終了する。
ヒューズビットの書き替えは、そのままで1MHzの状態。これから勉強します。
イルミネーションフルカラーLED(IC内蔵7色自動変化)
5mmRGB7色自動変化速めタイプ
IC内蔵で自動的に7色に変化します。
変化の速いタイプで賑やかな感じです。
とても綺麗な発色
動作電圧 3.5-5.0V
点灯周期 15秒/1サイクル(Vdd4.5V時)
RED 800mcd 645nm
GREEN 1500mcd 520nm
BLUE 1000mcd 470nm
Angle:15°(typ)
http://www.led-paradise.com/product/296
5mmRGB7色自動変化ゆっくりタイプ
IC内蔵で自動的にゆっくり7色に変化します。
とても綺麗な発色
動作電圧 3.5-5.0V
点灯周期 34秒/1サイクル(Vdd4.5V時)
RED 800mcd 620-635nm
GREEN 1500mcd 515-530nm
BLUE 1000mcd 460-475nm
http://www.led-paradise.com/product/295
エルパラで仕入れた5mmRGB7色自動変化イルミネーションフルカラーLED(IC内蔵7色自動変化)
Atmel Studio 6.0/ AVRISPmk2でコンパイルしたhexファイルを ATtiny10 にTPIで書き込む方法。
Atmel Studio 6.0を立ち上げてAVRISPmk2の配線して電源入れてからUSBを差し込む
Toolsから Device Programmingを選択
Applyバーをクリックして Device signature バーをクリックして電圧 target Voltageバーをクリックして、チップの型番が解る。
Tool innfomation
Device innfomation
Erase now Flash(1KB) の所をチェックして書き込むHexファイルを指定する。
Programming バーをクリックすると書き込み開始。直ぐに終了する。
ヒューズビットの書き替えは、そのままで1MHzの状態。これから勉強します。
プログラマブルイルミネーションLED①
米粒AVRでLチカしてみました。
Atmel Studio 6/AVRISPmk2 統合開発環境 (IDE)を使ってATtiny10とチップ型フルカラーLEDで
プログラマブルイルミネーションLEDを創ってみました。
100均小物によくあるカラーイルミネーションLEDのシュミレーションです。
箱だけ大そうなAtmel純正AVRISPmk2
Atmel純正AVRISPmk2 秋月で3000円で購入
米粒AVR ATtiny10書込回路図
米粒AVR ATtiny10書込
ブレッドボードに米粒AVR ATtiny10を載せてでAtmel純正AVRISPmk2で書き込み。
ブレッドボード結線して Atmel Studio 6 統合開発環境 (IDE) を起動する。
立ち上がるまで結構時間が掛かる。AVRISPmk2内部プログラムは最新の物に更新しておく。
工高卒の還暦おっさんがC言語やC++言語なんて良く解らんけどTRY。
米粒AVR ATtiny10 を選択
最初からヘッダーは用意されてる。WEBで還暦の手習いで英語がよく解らんのに勉強しながらC言語でプログラム。米粒AVRでLチカをアレンジしてみました。
Build succeeded.
========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ==========
って出たらコンパイル完了。
プログラマーはAVRISPmk2を選択
hex ファイルがデバイスに書き込める機械語ファイル
Atmel Studio 6/AVRISPmk2 統合開発環境 (IDE)を使ってATtiny10とチップ型フルカラーLEDで
プログラマブルイルミネーションLEDを創ってみました。
100均小物によくあるカラーイルミネーションLEDのシュミレーションです。
箱だけ大そうなAtmel純正AVRISPmk2
Atmel純正AVRISPmk2 秋月で3000円で購入
米粒AVR ATtiny10書込回路図
米粒AVR ATtiny10書込
ブレッドボードに米粒AVR ATtiny10を載せてでAtmel純正AVRISPmk2で書き込み。
ブレッドボード結線して Atmel Studio 6 統合開発環境 (IDE) を起動する。
立ち上がるまで結構時間が掛かる。AVRISPmk2内部プログラムは最新の物に更新しておく。
工高卒の還暦おっさんがC言語やC++言語なんて良く解らんけどTRY。
米粒AVR ATtiny10 を選択
最初からヘッダーは用意されてる。WEBで還暦の手習いで英語がよく解らんのに勉強しながらC言語でプログラム。米粒AVRでLチカをアレンジしてみました。
Build succeeded.
========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ==========
って出たらコンパイル完了。
プログラマーはAVRISPmk2を選択
hex ファイルがデバイスに書き込める機械語ファイル
































































