« 2020年1月 | トップページ | 2020年3月 »

2020年2月

2020年2月26日 (水)

Arduinoもモールスを打ち始めた(デバック文)

AVRマイコン用のソースをArduinoに移植してみました。

一部改造したものの、ほとんど流用できました。互換性は高いですね。

詳細な仕様はAVRの方を参照してください。

https://ji1pvv.cocolog-nifty.com/blog/2020/02/post-85a767.html

 

(Arduinoのソース)

ダウンロード - ard_cwdbg.txt

(Arduinoのスケッチ)

ダウンロード - cwdbg.ino

■変更点

①出力をpin13にすることでオンボードのLEDも同時に光ります。

圧電スピーカーはpin13と隣のGNDに指します。

②tone()使っているので、ディレイは音の長さプラス無音の長さになります。

void dot(){
tone(pin,784,T_DLY) ;
delay(T_DLY * 2) ;
}

void dash(){
tone(pin,784,T_DLY*3) ;
delay(T_DLY *4) ;
}

 

2020年2月22日 (土)

AVRマイコンがモールスを打ち始めた(デバック文)

Cwa

LCDやデバッカーが付いてない無い状のマイコンで変数の値を知りたくなることがある。

そんなとき、値をCWに変換してはと思いつき簡単なソースを書いてみた。

サンプルソース

今回は、LEDと音(PWM)で実装したが、電子ブザーでも良い。ソースも簡単なので、ライブラリ化せずソースをそのまま公開。

このソースはjh4vaj/1さんの「AFSS01 – AVR最初の一歩セット」用に作成されています。

http://www.jh4vaj.com/afss01_01

※自由に改造・流用していただいて結構。(無保証)

ダウンロード - cwdbg.c

概要説明

【宣言】


#define F_CPU 1000000UL // 1MHz
#define T_DLY 100 // ドットの長さ

#include <avr/io.h>
#include <stdio.h>
#include <string.h>
#include <util/delay.h>

// 関数
void cw(unsigned int dat ); // 0 - 4294967295
void cwh(unsigned int dat ); // 0x0 - 0xffffffff
void cwa(char *ch ); // 0-9 a-z .,:?/@- ※半角小文字
void ccw(char ch); // 0-9 a-z .,:?/@- ※半角小文字を1文字だけ。文字間無し。
void dot();
void dash();

【関数一覧】

関数名 仕様 使用例
void cw(unsigned int dat )

datの値を10進に変換して、CW出力
文字と文字の間は、短点3個分、
出力が終わると短点7個分の時間を空ける。


unsigned int dat;
dat = 10;
cw(dat);
・---- ----- 

void cwh(unsigned int dat ) datの値をHEX変換して、CW出力
データの前に”0x”が自動で付加される。
先頭の0埋めなし。
例、”0xa” ”0xff” ”0x1cd”
文字と文字の間は、短点3個分空ける。
出力が終わると短点7個分の時間を空ける。

unsigned int dat;
dat = 10;
cwh(dat);    //0xa
----- -・・- ・-

void cwa(char *ch );

chに文字列の先頭ポインタを渡すとCW出力文字は半角英数小文字と.,:?/@-およびスペースであること。
それ以外の文字は無視される。
文字と文字の間は、短点3個分空ける。
出力が終わると短点7個分の時間を空ける。


cwa("hello cw.");
・・・・ ・ ・-・・ ・-・・ ---
-・-・ ・-- ・-・-・

void ccw(char c );

cにキャラクタ文字をセットするとCW出力
使用できるキャラクターはcwa()を参照。
文字と文字の間隔を調整しないため、組み合わせによっては、HHやARなど特殊な文字をCW出力できる。


ccw('h');ccw('h');  //HH
・・・・・・・・

ccw('a');ccw('r');  //AR
・-・-・

void dot();

短点1個分のONと短点1個分OFFを行う。
短点1個の長さはT_DLYで定義する。(ミリ秒)
#define T_DLY 100 // ドットの長さ

※環境を変える場合は、PORTBとTCCR0Aを自分の環境に合わせて修正してください。

dot();
void dash();

短点3個分のONと短点1個分OFFを行う。
短点1個の長さはT_DLYで定義する。(ミリ秒)
#define T_DLY 100 // ドットの長さ

※環境を変える場合は、PORTBとTCCR0Aを自分の環境に合わせて修正してください。


dash();

 

 

 

 

2020年2月 1日 (土)

ピカロード「ホタル君」の製作方法

Icon

 

Dsc_0182

ピカロード「ホタル君」の製作についてまとめました。

 

【用意するもの】

  • M型コネクター(リデューサー付き5D-2V用またはリデューサー無し8D-2V用)
  • E10型電球 12V0.11A
  • E10型電球ソケット(外ケース無し)
  • スズメッキ線またはハンダメッキ線 0.6mm 10cm程度

Dsc_0171

【電球ソケットの加工】

電球ソケットの外側

①赤い線が、中心に位置になるよう内側45度に折りたたんでください。

②黒い線は使用しないのでニッパーで切り取ってください。

Dsc_0172 

③赤いリード線を2.5cm程度にカットし8~10mm程度外皮を剥いてください。

④赤いリード線がショートしない様、テープ等保護してください。(写真はグルーガン)

Dsc_0173

【心線の加工】

①10cmのメッキ線を1㎝程度折り返してください。

Dsc_0175

②ラジオペンチで端の部分を数mm程度持ってください。

③長い方の線を、らせん状に巻いてください。ハンダが乗りやすいよう、粗く巻くのがコツです。

Dsc_0177

④巻くのは1重で結構です。余った線はニッパーで切り離してください。

Dsc_0178

⑤リード線とメッキ線をハンダで固定します。

Dsc_0179

【M型コネクターの加工】

①加工済のソケットをM型コネクターに差し込みます。

②黒いリード線が有った端子が穴から見える位置にくるように調整します。

③位置が有ったた中心導体(赤いリード線側)、外皮線(黒いリード線が有った端子)の順にハンダ付けします。

中心導体の飛び出している部分はニッパーで切断し、整形してください。

Dsc_0180_20200201205601

④コネクターを後ろ側みて、ガタツキ無い様に2~4カ所程度ハンダ付けで止めてください。
 この時、ハンダがソケットの内側に入ってしまうと電球は入らなくなってしまうので注意してください。

Dsc_0181

【最終確認】

①電球を入れない状態で中心導体と外皮線がショートしていない事を確認してください。

②電球を入れた状態で10~20Ω程度の抵抗がある事をテスターで確認してください。

(テスターの種類によって抵抗値は変わります。)

③無線機の出力を0.1~0.5W程度(HF帯)にして電球は光る事を確認してください。

 電波形式はAM(28MHz帯はFMも可能)またはCW(3アマ以上)が良いですが、パケットモードでも結構です。

 SSBの場合は、音声入力に合わせて光り方が変わります。

 このとき(通過型電力計などで)、SWR計でが1.5以下(SWR計が無い場合は無線機の表示)であることを確認してください。

 ※SWRは異常に高い場合、断線またはショートの可能性があります。直ちに使用を中止し、確認してください。

④異常がなければ、1Wに出力を上げて光り方の違いを確認してください。

【注意事項】

※0.1W以下および1W以上の電力ではお使いいただけません。

※アンテナアナライザー等は送信電力が小さいため、高いSWR値となりますが異常ではありません。

※規定の電力を加えた時に、SWRが下がります。

nanovnaの測定例

 

【頒布について】

 ハムフェア等のイベントにて頒布します。当面、受注の予定はありません。

 

« 2020年1月 | トップページ | 2020年3月 »

無料ブログはココログ
フォト
2025年2月
            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