Quantcast
Channel: Sahara's WebLog
Viewing all 2178 articles
Browse latest View live

追加投資たったの100円でPICのプログラマを作ってみる。 – R8C/M12AでPIC24FJ64GB002をプログラムする。 –

$
0
0

追加投資たったの100円でPICのプログラマを作ってみる。」のPIC24FJ64GB002バージョンだ。

使うパーツはPIC以外は前回と同じだ。
今回は、使う分だけの価格を計算してみたら、934円だった。

R8C/M12Aマイコン 100円(秋月)
USBシリアル変換モジュール 207円(eBay)
ブレッドボード BB-801 200円(秋月)
ブレッドボード・ジャンパーコード(オス-オス)(10cm) 6本 54円(秋月)
カーボン抵抗(炭素皮膜抵抗)1/2W 300Ω 4本 4円(秋月)
カーボン抵抗(炭素皮膜抵抗)1/2W 10kΩ 4本 4円(秋月)
絶縁ラジアルリード型積層セラミックコンデンサー 0.1μF 50V 2.54mm 1個 10円(秋月)
高輝度5mm赤色LED 1個 15円(秋月)
PICマイコン PIC24FJ64GB002-I/P 340円(秋月)

秋月で買うとバラでは買えないので、これより割高(1477円)になるが、他店でバラで買うより安い場合の方が多い。
USBシリアル変換モジュールだけはeBayで買った。
確実に安いので、eBayの利用を強くお勧めする。
なお、全部秋月で調達すると、送料別1930円になる。
r8c_m12a_pic_programmer_20160916_02
タイトルの「たったの100円で」というのは、電子工作を趣味でやるとして、どうせ持ってて損は無いものの分は除くという意味だ。
私の場合で言えば、このために新しく買い、これ以外にはたぶん使わないのは、R8C/M12A 100円 だけということになる。
r8c_m12a_pic_programmer_20160916_01
前回は、ベリファイに失敗したけどちゃんと書き込めてるようだ、というあいまいな終わり方だったが、今回のPIC24FJ64GB002では、エラー無く終了している。
なお、参考にさせていただいたサイトからもらってきた devicelist.txt に PIC24FJ64GB002 は含まれないので、最後に、

PIC24FJ64GB002,  4207,        8000,   200,    40,           0,      0,     0

を追加する。
変更点はこれと、回路図の抵抗の値を手持ちに合わせて変えたことだけだ。

このエントリーをはてなブックマークに追加

eBayで買った接点数170のブレッドボード。

$
0
0

eBayで買った接点数170のブレッドボード。
20160917195722
送料込み1個50円。
一般的なブレッドボードにある電源用のラインが無いので、ミスをなくすためにこんな風にして色を付け、端の2列を電源用に使う。
20160918014100
20160918014116
例えば、ESP-WROOM-02用の配線はこんな感じだ。
ちなみに、このブレッドボードは、今日買ったヤツではなく、だいぶ前に他で買った物。
色味が若干違うだけで、それ以外に区別の方法が無いくらい同じだ。
20160918020705
本当は、ESP-WROOM-02を左端の電源ラインに近い側に挿す方が良い。
しかし、そうすると電源のコネクタと基板が微妙に当たる。
結果、必要以上にジャンパー線が長くなっている。
20160918020805
20160918020841
そこそこ配線が混んでいて、パズルのようで楽しめる。
これで、リセットスイッチも、プログラム書き込み用のスイッチもちゃんと載っているし、LEDと圧電ブザーも載って、いっぱしの役には立つ。
さすがに、USBシリアル変換モジュールとの接続には、ジャンパケーブルを使うことになる。
もちろん、試作用なわけだが、ESP-WROOM-02の実装をどうしようかと迷っているうちにプリント基板の作成が面倒になって来て、だいぶ長いことこのまま使っている。

このエントリーをはてなブックマークに追加

Macrium Reflect Free

$
0
0

Macrium Reflect Freeは、バックアップソフトだ。
Windows10 Pro 64BITの環境でシステム・ドライブのバックアップ、リストアを試してみる。

もらってきたファイルそのものは、インストーラではなくダウンローダだ。
実行後、保存先を指定して[Download]をクリックする。
macrium_reflect_01
WinPEをダウンロードする確認窓が出る。
Windows PEは最低機能のWindowsのことらしく、起動用のディスクやUSBの作成に必要らしいので、[はい]をクリックする。
macrium_reflect_02
macrium_reflect_03
macrium_reflect_04
macrium_reflect_05
macrium_reflect_06
レジストするか尋ねられるが、Noでもいいようだ。
macrium_reflect_07
macrium_reflect_08
macrium_reflect_09
macrium_reflect_10
macrium_reflect_11
また聞かれるが[Do not remind me]をクリックする。
macrium_reflect_12
起動用のディスクを作るか尋ねてくるが、後にしたいので、チェックを入れずに[No]をクリックする。
macrium_reflect_13
ここでは、システムのバックアップをしたいので、[Backup]>[Backup Windows…]とたどる。
macrium_reflect_14
保存先を決め、独自の名前を付けたいのでチェックを外して、名前を入力する。
macrium_reflect_15
macrium_reflect_16
macrium_reflect_17
オプションの設定ファイルを保存するか尋ねられる。
特に設定もしていないが、一応保存した。
macrium_reflect_18
バックアップ・イメージの作成中。
macrium_reflect_19
完了。
macrium_reflect_20

起動用のディスクを作成する。
さっき、チェックを外したので、次の起動時に尋ねてくるはずだが、手動で[Other Tasks] > [Create Rescue Media]とたどれば作成できる。
macrium_reflect_21
macrium_reflect_22
macrium_reflect_23
macrium_reflect_24
macrium_reflect_25
メディアを指定して[Finish]をクリックすると、
macrium_reflect_26
作成が開始される。
macrium_reflect_27
完了。
macrium_reflect_28

ここで作成したメディアからブートでき、Macrium Reflectが起動することは確認した。
バックアップ・イメージも作成した。
リストアはまだ試していない。
関連記事
Macrium Reflect Free でバックアップしたイメージをリストアしてみた。
Macrium Reflect で起動用USBメモリ作成時にエラーが出たときやったこと。

このエントリーをはてなブックマークに追加

Macrium Reflect で起動用USBメモリ作成時にエラーが出たときやったこと。

$
0
0

関連記事「Macrium Reflect Free

Transcendの2GBのUSBメモリーが、使い道も無く放置状態だったので、Macrium Reflect用のブート・メディアとして使うことにした。
こういうエラーが出た。
macrium_reflect_usb_01
MiniTool Partition Wizardというのを使って、USB 内のパーティションをすべて[Delete]し、FAT32 で[Format]し、さらに[Rebuild MBR]した。
macrium_reflect_usb_02
macrium_reflect_usb_03
が、エラーは無くならなかった。
よく見ると、メッセージの下にOnline Helpへのリンクがあるので行ってみる。
さらにその先のSee: Preparing a USB stick for Windows PEへ行ってみると、コマンド・プロンプトからの修復方法が書いてあるので、その通りにしてみた。
スタートボタンを右クリックからの[コマンド プロンプト(管理者)]をクリックする。
macrium_reflect_usb_04
diskpart を起動して list disk と入力する。
macrium_reflect_usb_05
対象とするメディアの番号をしっかり確認する。
この例では 5 だ。
この番号を指定してディスクの初期化を行うので、番号を間違えるとすべてが消えてしまうから注意が必要だ。
select disk # と入力する。
# はディスクの番号、この例では 5 だ。
macrium_reflect_usb_06
くれぐれも正しいメディアが選択されていることを確認してから clean と入力する。
これで、すべてのデータが消去される
続けて、
create par primary
active
format FS=FAT32 LABEL=”Macrium” QUICK
の3つのコマンドを実行する。
macrium_reflect_usb_07
最後に exit で diskpart から抜ける。
もう一度 exit でコマンド・プロンプトも終了する。
以上を行ってから、再度 Macrium Reflect で Create Rescue Media を実行すれば、今度はエラー無くブート用のUSBメモリが作成される。
macrium_reflect_usb_08
ちゃんと起動するか必ず確認しておく。

追記
上の例は Transcend 2GB USB Momory TS2GJFV30 での話だが、Trenscend USB 3.0 Card Reader RDF5 + 無印 2GB Micro SD カードでも全く同様になった。
スマホに入っていた2GBのMicro SD カードとか、大容量のものと交換した後使ってないのが何枚かあるので、みんなブート・メディアにしておいた。

このエントリーをはてなブックマークに追加

Macrium Reflect Free でバックアップしたイメージをリストアしてみた。

$
0
0

環境
OS : Windows 10 Pro 64BIT
CPU : Celeron G540 2.5GHz
RAM : 8GB
Mother Board : ASUS P8B75-M
System Drive : KINGSTON SV300S37A 120G
Data Drive : WesternDigital WD30EZRX
Boot media : Transcend 2GB USB Momory TS2GJFV30
Macrium Reflect Free v6.2.1549

USBメモリから起動して、道なりにリストアしようとしたが、時間が掛かっているのか、フリーズしているのか分からない状況で、うんともすんとも言わなかった。
20160921173837
このまま待ってればよかった可能性も捨てきれないが、強制終了して、以下のチェックを入れてやり直したら、今度は動き出した。
20160921192100
20160921181455
56分はちょと時間が掛かり過ぎな気はするが、とりあえず無事完了して、ちゃんと起動した。
20160921191016

このエントリーをはてなブックマークに追加

モジュールをはんだ付け無しでブレッドボードに載せる。

$
0
0

eBayで買った Arduino Nano 互換機をはんだ付け無しでブレッドボードに載せて試す。
使うのは秋月で買ったリードフレームだ。
自作のプリント基板に穴をあけずにピンを取り付け、しかも自動的に両面の導通も取れるという優れものだ。
本来は基板にハンダ付けするわけだが、クリップになっている部分が結構しっかり基板をとらえるので、ハンダ付け無しでも導通が保たれそうだと踏んだ。
なぜこんなことをするかと言えば、最終的にどの形態で組み込むか、まだ決めかねているからだ。
万が一外れたときにばらばらになって面倒なので、マスキングテープで一応一体化しておく。
20160922055712
ハンダ付けはしないで、基板に挟み込み、そのままブレッドボードに挿し込んで使う。
20160922055747
にしても、このコンパクトさはいいねえ。
20160922055819

このエントリーをはてなブックマークに追加

Windows10をクリーン・インストールする。(インストール用のメディアの作成)

$
0
0

Windows 10 のダウンロードへ行ってMediaCreationToolをもらってくる。
w10_clean_inte_01
ダウンロードした「MediaCreationTool.exe」を実行する。
w10_clean_inte_03
w10_clean_inte_05
w10_clean_inte_06
w10_clean_inte_07
今回はDVDから起動するインストーラを作成する。
w10_clean_inte_08
ダウンロード中。
w10_clean_inte_09
ダウンロードが済んでメディアの作成中。
w10_clean_inte_10
「DVD 書き込み用ドライブを開く」をクリックする。
w10_clean_inte_11
「Windows ディスク イメージ書き込みツール」が開くので、DVDに書き込む。
w10_clean_inte_12
以上で、Windows10のインストール用のメディアの作成が完了する。

このエントリーをはてなブックマークに追加

Windows10でタスクバーに色を付ける。

$
0
0

初期のバージョンでは設定できなかったらしい。

Windows10 Pro 64BIT
バージョン 1607
OS ビルド 14393.0

アプリケーションをアクティブにしても、タスクバーが白くて見にくかったのに色を付ける。

スタートボタンから設定へ。
win10_taskbar_color_01
win10_taskbar_color_02
win10_taskbar_color_03
設定前
win10_taskbar_color_04
設定後
win10_taskbar_color_05

このエントリーをはてなブックマークに追加

Windows10をクリーン・インストールする。(インストール)

$
0
0

Windows7からWindows10にアップグレードしてあり。
その際はWindows7に戻れるような設定で行った。
その状況のPCにWindows10をクリーン・インストールしてみた。
Windows10をクリーン・インストールする。(インストール用のメディアの作成)」で作成したDVDメディアからPCを起動する。
w10_clean_install_01
w10_clean_install_02
再インストールなので「プロダクトキーがありません」をクリックする。
w10_clean_install_03
w10_clean_install_04
w10_clean_install_05
クリーン・インストールなので、下を選択する。
w10_clean_install_06
w10_clean_install_07
w10_clean_install_08
w10_clean_install_09
w10_clean_install_10
w10_clean_install_11
「簡単設定を使う」にすると、個人情報が送信されまくりのようなので、「カスタマイズ」を選ぶ。
w10_clean_install_12
これがすべてではないが、なるべく送信されないような設定にしていく。
もちろん、後でも設定できる。
w10_clean_install_13
w10_clean_install_14
Microsoftとしては、ユーザとつながりたいようだが、こっちはまっぴら御免なので、「この手順をスキップする」をクリックする。
w10_clean_install_15
w10_clean_install_16
そばにいられても気持ち悪いので、「後で設定する」をクリックする。
あとで、無効にする。
w10_clean_install_17
いくつか表示が出る。
w10_clean_install_18
一応、インストールが完了した。
w10_clean_install_19

このエントリーをはてなブックマークに追加

Windows10 視覚効果の設定を変える

PIC32MX250F128B MPLABX XC32 Harmony でLチカしてみた。- 内蔵クロックで駆動 –

$
0
0

PIC32MX250F128B MPLABX XC32 Harmony でLチカしてみた。
PIC32MX250F128B MPLABX XC32 Harmony でLチカしてみた。- Interrupt –
PIC32MX250F128B MPLABX XC32 Harmony でLチカしてみた。- Timerを追加 –
のつづき。
3か月も経って、もうだいぶ忘れているが、思い出しながら再挑戦だ。
前回までは、外付けのクロックを使っていたが、面倒なので内部クロックを使う。
その分回路はシンプルになる。
20160924143510
クロックの設定の前回までとの違いは赤枠の部分だ。
pic32mx250f128b_inclock_01

このエントリーをはてなブックマークに追加

PIC32MX250F128B MPLABX XC32 Harmony でLチカしてみた。(改めて見直し)

$
0
0

PIC32MX250F128B MPLABX XC32 Harmony でLチカしてみた。」を眺めていたら、ちょっと疑問点が出てきたので、見直している。
そもそも、ここを参考にして書いた記事だが、そのまま鵜呑みにしてコピーしただけなので細かいところまでは見ていなかった。

例えば、TMR_ID_2を指定しているのに、
picture13
Timer1を使っている。
picture221
HarmonyのHelpによれば、TMR_ID_2はTimer2だ。
harmony_help_tmr_module_id

そう思いながらコードを見直すと、T1CON = 0x8030 となっていて、Harmonyで設定したはずのPrescalerをもう一度設定していたりする。

したがって、正しくは以下のようにする。
pic32mx250f128b_harmony_led_blink_01_corr_01
pic32mx250f128b_harmony_led_blink_01_corr_02

このエントリーをはてなブックマークに追加

MPLAB Code Configurator – Install –

$
0
0

mcc_inst_01
mcc_inst_02

mcc_inst_03

mcc_inst_04

mcc_inst_05
mcc_inst_06
mcc_inst_07

PIC32MX250F128Bで試そうかとと思ったら、サポートされてなかった。
いまのところ、PIC32MXでサポートされているのは以下のもののみ(2016/09/24)。

PIC32MX110F016B
PIC32MX110F016C
PIC32MX110F016D
PIC32MX120F032B(※)
PIC32MX120F032C
PIC32MX120F032D
PIC32MX130F064B
PIC32MX130F064C
PIC32MX130F064D
PIC32MX130F256B
PIC32MX130F256D
PIC32MX150F128B
PIC32MX150F128C
PIC32MX150F128D
PIC32MX170F256B
PIC32MX170F256D
PIC32MX330F064H
PIC32MX330F064L
PIC32MX350F128H
PIC32MX350F128L
PIC32MX350F256H
PIC32MX350F256L
PIC32MX370F512H
PIC32MX370F512L

やる気なくした。
青字は秋月にあるもので※は手持ちのもの。
思い直してPIC32MX120F032Bでやるかあ。

ちなみに、往年の名チップPIC16F1827はサポートされている。

ついでに、16BITのチップのサポートリスト(2016/09/24)

PIC24EP128GP202
PIC24EP128GP204
PIC24EP128GP206 
PIC24EP128MC202
PIC24EP128MC204
PIC24EP128MC206
PIC24EP256GP202
PIC24EP256GP204
PIC24EP256GP206
PIC24EP256MC202
PIC24EP256MC204
PIC24EP256MC206
PIC24EP32GP202
PIC24EP32GP203
PIC24EP32GP204
PIC24EP32MC202
PIC24EP32MC203
PIC24EP32MC204
PIC24EP512GP202
PIC24EP512GP204
PIC24EP512GP206
PIC24EP512MC202
PIC24EP512MC204
PIC24EP512MC206
PIC24EP64GP202
PIC24EP64GP203
PIC24EP64GP204
PIC24EP64GP206
PIC24EP64MC202
PIC24EP64MC203
PIC24EP64MC204
PIC24EP64MC206
PIC24F08KA101
PIC24F08KA102
PIC24F08KM101
PIC24F08KM102
PIC24F08KM202
PIC24F08KM204
PIC24F16KA101
PIC24F16KA102
PIC24F16KA301
PIC24F16KA302
PIC24F16KA304
PIC24F16KM102
PIC24F16KM104
PIC24F16KM202
PIC24F16KM204
PIC24F32KA301
PIC24F32KA302
PIC24F32KA304
PIC24FJ1024GA606
PIC24FJ1024GA610
PIC24FJ1024GB606
PIC24FJ1024GB610
PIC24FJ128DA106
PIC24FJ128DA110
PIC24FJ128DA206
PIC24FJ128DA210
PIC24FJ128GA006
PIC24FJ128GA008
PIC24FJ128GA010
PIC24FJ128GA106
PIC24FJ128GA108
PIC24FJ128GA110
PIC24FJ128GA202
PIC24FJ128GA204
PIC24FJ128GA306
PIC24FJ128GA308
PIC24FJ128GA310
PIC24FJ128GA406
PIC24FJ128GA410
PIC24FJ128GA412
PIC24FJ128GA606
PIC24FJ128GA610
PIC24FJ128GB106
PIC24FJ128GB108
PIC24FJ128GB110
PIC24FJ128GB202
PIC24FJ128GB204
PIC24FJ128GB206
PIC24FJ128GB210
PIC24FJ128GB406
PIC24FJ128GB410
PIC24FJ128GB412
PIC24FJ128GB606
PIC24FJ128GB610
PIC24FJ128GC006
PIC24FJ128GC010
PIC24FJ16GA002
PIC24FJ16GA004
PIC24FJ192GA106
PIC24FJ192GA108
PIC24FJ192GA110
PIC24FJ192GB106
PIC24FJ192GB108
PIC24FJ192GB110
PIC24FJ256DA106
PIC24FJ256DA110
PIC24FJ256DA206
PIC24FJ256DA210
PIC24FJ256GA106
PIC24FJ256GA108
PIC24FJ256GA110
PIC24FJ256GA406
PIC24FJ256GA410
PIC24FJ256GA412
PIC24FJ256GA606
PIC24FJ256GA610
PIC24FJ256GB106
PIC24FJ256GB108
PIC24FJ256GB110
PIC24FJ256GB206
PIC24FJ256GB210
PIC24FJ256GB406
PIC24FJ256GB410
PIC24FJ256GB412
PIC24FJ256GB606
PIC24FJ256GB610
PIC24FJ32GA002
PIC24FJ32GA004
PIC24FJ32GA102
PIC24FJ32GA104
PIC24FJ32GB002
PIC24FJ32GB004
PIC24FJ48GA002
PIC24FJ48GA004
PIC24FJ512GA606
PIC24FJ512GA610
PIC24FJ512GB606
PIC24FJ512GB610
PIC24FJ64GA002
PIC24FJ64GA004
PIC24FJ64GA006
PIC24FJ64GA008
PIC24FJ64GA010
PIC24FJ64GA102
PIC24FJ64GA104
PIC24FJ64GA106
PIC24FJ64GA108
PIC24FJ64GA110
PIC24FJ64GA202
PIC24FJ64GA204
PIC24FJ64GA306
PIC24FJ64GA308
PIC24FJ64GA310
PIC24FJ64GA406
PIC24FJ64GA410
PIC24FJ64GA412
PIC24FJ64GB002
PIC24FJ64GB004
PIC24FJ64GB106
PIC24FJ64GB108
PIC24FJ64GB110
PIC24FJ64GB202
PIC24FJ64GB204
PIC24FJ64GB406
PIC24FJ64GB410
PIC24FJ64GB412
PIC24FJ64GC006
PIC24FJ64GC010
PIC24FJ96GA006
PIC24FJ96GA008
PIC24FJ96GA010
PIC24FV08KM101
PIC24FV08KM102
PIC24FV08KM202
PIC24FV08KM204
PIC24FV16KA301
PIC24FV16KA302
PIC24FV16KA304
PIC24FV16KM102
PIC24FV16KM104
PIC24FV16KM202
PIC24FV16KM204
PIC24FV32KA301
PIC24FV32KA302
PIC24FV32KA304
PIC32MM0016GPL020
PIC32MM0016GPL028
PIC32MM0016GPL036
PIC32MM0032GPL020
PIC32MM0032GPL028
PIC32MM0032GPL036
PIC32MM0064GPL020
PIC32MM0064GPL028
PIC32MM0064GPL036
dsPIC33EP128GP502
dsPIC33EP128GP504
dsPIC33EP128GP506
dsPIC33EP128MC202
dsPIC33EP128MC204
dsPIC33EP128MC206
dsPIC33EP128MC502
dsPIC33EP128MC504
dsPIC33EP128MC506
dsPIC33EP256GP502
dsPIC33EP256GP504
dsPIC33EP256GP506
dsPIC33EP256MC202
dsPIC33EP256MC204
dsPIC33EP256MC206
dsPIC33EP256MC502
dsPIC33EP256MC504
dsPIC33EP256MC506
dsPIC33EP32GP502
dsPIC33EP32GP503
dsPIC33EP32GP504
dsPIC33EP32MC202
dsPIC33EP32MC203
dsPIC33EP32MC204
dsPIC33EP32MC502
dsPIC33EP32MC503
dsPIC33EP32MC504
dsPIC33EP512GP502
dsPIC33EP512GP504
dsPIC33EP512GP506
dsPIC33EP512MC202
dsPIC33EP512MC204
dsPIC33EP512MC206
dsPIC33EP512MC502
dsPIC33EP512MC504
dsPIC33EP512MC506
dsPIC33EP64GP502
dsPIC33EP64GP503
dsPIC33EP64GP504
dsPIC33EP64GP506
dsPIC33EP64MC202
dsPIC33EP64MC203
dsPIC33EP64MC204
dsPIC33EP64MC206
dsPIC33EP64MC502
dsPIC33EP64MC503
dsPIC33EP64MC504
dsPIC33EP64MC506

8BITのチップのサポートリスト(2016/09/24)

PIC12F1501
PIC12F1571
PIC12F1572
PIC12F1612
PIC12F1822
PIC12F1840
PIC12F752
PIC12HV752
PIC12LF1501
PIC12LF1552
PIC12LF1571
PIC12LF1572
PIC12LF1612
PIC12LF1822
PIC12LF1840
PIC16F1454
PIC16F1455
PIC16F1459
PIC16F1503
PIC16F1507
PIC16F1508
PIC16F1509
PIC16F1512
PIC16F1513
PIC16F1516
PIC16F1517
PIC16F1518
PIC16F1519
PIC16F1526
PIC16F1527
PIC16F1574
PIC16F1575
PIC16F1578
PIC16F1579
PIC16F1613
PIC16F1614
PIC16F1615
PIC16F1618
PIC16F1619
PIC16F1703
PIC16F1704
PIC16F1705
PIC16F1707
PIC16F1708
PIC16F1709
PIC16F1713
PIC16F1716
PIC16F1717
PIC16F1718
PIC16F1719
PIC16F1764
PIC16F1765
PIC16F1768
PIC16F1769
PIC16F1773
PIC16F1776
PIC16F1777
PIC16F1778
PIC16F1779
PIC16F1782
PIC16F1783
PIC16F1784
PIC16F1786
PIC16F1787
PIC16F1788
PIC16F1789
PIC16F1823
PIC16F1824
PIC16F1825
PIC16F1826
PIC16F1827
PIC16F1828
PIC16F1829
PIC16F18313
PIC16F18323
PIC16F18324
PIC16F18325
PIC16F18326
PIC16F18344
PIC16F18345
PIC16F18346
PIC16F1847
PIC16F18854
PIC16F18855
PIC16F18856
PIC16F18856
PIC16F18857
PIC16F18857
PIC16F18875
PIC16F18876
PIC16F18876
PIC16F18877
PIC16F18877
PIC16F1933
PIC16F1934
PIC16F1936
PIC16F1937
PIC16F1938
PIC16F1939
PIC16F1946
PIC16F1947
PIC16F753
PIC16HV753
PIC16LF1454
PIC16LF1455
PIC16LF1459
PIC16LF1503
PIC16LF1507
PIC16LF1508
PIC16LF1509
PIC16LF1512
PIC16LF1513
PIC16LF1516
PIC16LF1517
PIC16LF1518
PIC16LF1519
PIC16LF1526
PIC16LF1527
PIC16LF1554
PIC16LF1559
PIC16LF1566
PIC16LF1567
PIC16LF1574
PIC16LF1575
PIC16LF1578
PIC16LF1579
PIC16LF1613
PIC16LF1614
PIC16LF1615
PIC16LF1618
PIC16LF1619
PIC16LF1703
PIC16LF1704
PIC16LF1705
PIC16LF1707
PIC16LF1708
PIC16LF1709
PIC16LF1713
PIC16LF1716
PIC16LF1717
PIC16LF1718
PIC16LF1719
PIC16LF1764
PIC16LF1765
PIC16LF1768
PIC16LF1769
PIC16LF1773
PIC16LF1776
PIC16LF1777
PIC16LF1778
PIC16LF1779
PIC16LF1782
PIC16LF1783
PIC16LF1784
PIC16LF1786
PIC16LF1787
PIC16LF1788
PIC16LF1789
PIC16LF1823
PIC16LF1824
PIC16LF1825
PIC16LF1826
PIC16LF1827
PIC16LF1828
PIC16LF1829
PIC16LF18313
PIC16LF18323
PIC16LF18324
PIC16LF18325
PIC16LF18326
PIC16LF18344
PIC16LF18345
PIC16LF18346
PIC16LF1847
PIC16LF18854
PIC16LF18855
PIC16LF18875
PIC16LF1902
PIC16LF1903
PIC16LF1904
PIC16LF1906
PIC16LF1907
PIC16LF1933
PIC16LF1934
PIC16LF1936
PIC16LF1937
PIC16LF1938
PIC16LF1939
PIC16LF1946
PIC16LF1947
PIC18F13K22
PIC18F14K22
PIC18F23K20
PIC18F23K22
PIC18F24K20
PIC18F24K22
PIC18F24K50
PIC18F25K20
PIC18F25K22
PIC18F25K50
PIC18F25K80
PIC18F26K20
PIC18F26K22
PIC18F26K40
PIC18F26K80
PIC18F43K20
PIC18F43K22
PIC18F44K20
PIC18F44K22
PIC18F45K20
PIC18F45K22
PIC18F45K40
PIC18F45K50
PIC18F45K80
PIC18F46K20
PIC18F46K22
PIC18F46K40
PIC18F46K80
PIC18F65K22
PIC18F65K80
PIC18F65K90
PIC18F66K22
PIC18F66K80
PIC18F66K90
PIC18F67K22
PIC18F67K90
PIC18F85K22
PIC18F85K90
PIC18F86K22
PIC18F86K90
PIC18F87K22
PIC18F87K90
PIC18LF13K22
PIC18LF14K22
PIC18LF23K22
PIC18LF24K22
PIC18LF24K50
PIC18LF25K22
PIC18LF25K40
PIC18LF25K50
PIC18LF25K80
PIC18LF26K22
PIC18LF26K40
PIC18LF26K80
PIC18LF43K22
PIC18LF44K22
PIC18LF45K22
PIC18LF45K40
PIC18LF45K50
PIC18LF45K80
PIC18LF46K22
PIC18LF46K40
PIC18LF46K80
PIC18LF65K80
PIC18LF66K80

気を取り直してやってみた。
MPLAB Code Configurator – PIC32MX120F032B でTimer1のInterruptでLチカを試す –

このエントリーをはてなブックマークに追加

MPLAB Code Configurator – PIC32MX120F032B でTimer1のInterruptでLチカを試す –

$
0
0

普通にプロジェクトを作成してから、MPLAB Code Configulator(以下MCC)を起動する。
mcc_pic32mx120f032b_t1inte_01
まずはSystem Moduleの設定だが、順番に設定していけば迷うこともなく済む。
mcc_pic32mx120f032b_t1inte_02
続いて、Pin ModulはPin Managerで以下のようにした。
RB15は、設定はしたが使ってない。
mcc_pic32mx120f032b_t1inte_03
Analogの設定になっていたので、チェックを外す。
mcc_pic32mx120f032b_t1inte_04
Device ResourcesからTimerのTMR1を開く。
mcc_pic32mx120f032b_t1inte_05
下のように設定した。
mcc_pic32mx120f032b_t1inte_06
[Generate]をクリックするとコードを生成する。
tmr1.cからTMR1_Start();をmain()に追加する。
mcc_pic32mx120f032b_t1inte_08
tmr1.cのTMR1_CallBack()に、以下のLチカの1行を追加する。
mcc_pic32mx120f032b_t1inte_09
あとはチップに書き込めば完了だ。
コードとして打ち込んだのはPORTAbits.と^=1;だけか。

実は、Harmonyでも同じものを作ってみた。
MCCの方がわかりやすい。
Harmonyは参考にしたサイトと比べながらだったが、MCCでは全く何も見ないでコードが組めた。
いったい、この2つの使い分け、棲み分けはどうなっているんだろう。
Harmonyは32BITだけが対象のようだが。

このエントリーをはてなブックマークに追加

Windows10のエクスプローラーで余分なフォルダを表示しないようにする。

$
0
0

エクスプローラーで「ダウンロード, デスクトップ, ドキュメント, ピクチャ, ビデオ, ミュージック」 の6つを非表示にする。
確か、以前はフォルダの表示オプションで、表示・非表示を選べた気がする。
探し方が悪いのか、以前と同じところには設定項目がなかった。

検索したらレジストリを編集すれば消せることが分かった。
ファイル名を指定して実行から regedit を実行し、
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace]

{088e3905-0323-4b02-9826-5d99428e115f}
{24ad3ad4-a569-4530-98e1-ab02f9417aa8}
{3dfdf296-dbec-4fb4-81d1-6a3438bcf4de}
{B4BFCC3A-DB2C-424C-B029-7FE99A87C641}
{d3162b92-9365-467a-956b-92703aca08af}
{f86fa3ab-70d2-4fc7-9c99-fcbf05467f3a}
を削除する。

このエントリーをはてなブックマークに追加

PIC32MX120F032B – PWMをやってみる –

$
0
0

例によって、まずは人様のコードをいただいてきて試す。
ここからもらってきた。
コピペしていきなりコンパイルすると、以下の2行でエラーが出た。
軽く検索したが、よくわからない。
コメントアウトして再度コンパイルしたら、エラーが出ずに完了して、書き込んだら動いた。
pic32mx120f032b_pwm_test_01

PIC32MX120F32Bを使って、基本の回路を組む。
16ピンに抵抗とLEDを接続しただけだ。
LEDの場所以外は「PIC32MX250F128B MPLABX XC32 Harmony でLチカしてみた。- 内蔵クロックで駆動 –」の写真と同じだ。

つないだLEDが暗めに点灯するので、確かにPWMで駆動しているようだ。
ロジアナで拾ってみると、周期が約2kHzとなって、16kHzだと書かれているのと食い違いがある。
pic32mx120f032b_pwm_test_02
ただ、デューティー比は合っているので、クロックがらみで違いがあるのだろう。
コメントアウトした部分で何を呼んでいるのかわからないので何とも言えないが、クロック関連をちょっと調べてみる。
以下のようなことがわかる。

PIC32MXではPripheral Bus Clock(PBCLK)によってタイマーがカウントされている。
システム・クロック(SYSCLK)の後にPBDIVで設定されるPrescalorが入ってPBCLKが作られている。
PBDIVの初期値が1:8のようだ。

今回のSYSCLKは40MHzに設定してあって、明示的にPBDIVを設定していないので、PBCLKは5MHzになっている。
というわけで、16kHzのはずが2kHzとなった。

こうやって、謎を解くと、Output Compare(OC)とTimerからPWMを作り出す仕組みもなんとなく理解できる。
今のところの理解では以下のような感じ。

周期はTimer2のPR2の値で決める。
同時にOCのOCxRSの値によってデューティー比も決まるというわけだ。
データシートのこの図がわかりやすい。
pic32mx120f032b_pwm_test_03
OC1とTimer2の例で書く。
(1)TMR2がクリアされ、デューティー比用の値がOC1RSからOC1Rにロードされる。
(2)PBCLKをカウントして、TMR2の値がOC1Rになると、OC1ピンの出力がLowになる。
(3)PBCLKのカウントを続けて、TMR2がPR2を超えると、再びデューティー比用の値がOC1RSからOC1Rにロードされ、OC1の出力がHighになる。
(4)(1)へ。

このエントリーをはてなブックマークに追加

PIC32MX120F032B – HarmonyでPWMをやってみる –

$
0
0

PIC32MX120F032B – PWMをやってみる –」で試したPWMを、今度はHarmonyで1からやってみる。
Clockの設定
pic32mx120f032b_pwm_harmony_test_01
Clock Diagram
pic32mx120f032b_pwm_harmony_test_02
ここで、PBCLKは40MHzになっている。
16kHzの周期のPWMにするので、40000000 / 16000 = 2500
Timer2のPR2を2500に設定する。
pic32mx120f032b_pwm_harmony_test_03
デューティー比を10%にするので、OCでPulse Wodthを250にする。
pic32mx120f032b_pwm_harmony_test_04
出力を15ピンのRB6にするには、Pin Diagramでピンをクリックするだけだ。
pic32mx120f032b_pwm_harmony_test_05
データシートを眺めて、
pic32mx120f032b_pwm_harmony_test_06
RPB7Rbits.RPB7R = 0x0005;
を手で打ち込むなんて必要は一切ない。
あとは、system_config¥default¥framework¥driver¥tmr¥src¥drv_tmr_static.c
から
DRV_TMR0_Start();
さらに、
system_config¥default¥framework¥driver¥oc¥src¥drv_oc_static.c
から
DRV_OC0_Start();
をコピーしてきて、main()内に貼り付ければ完成だ。
pic32mx120f032b_pwm_harmony_test_07
pic32mx120f032b_pwm_harmony_test_08

このエントリーをはてなブックマークに追加

PIC32MX120F032B – HarmonyのPWMでLEDを柔らかく点滅させてみる –

$
0
0

PIC32MX120F032B – HarmonyでPWMをやってみる –」で、LEDをPWNで薄暗く点灯させたので、今度は優しく点滅させてみる。
どういうやり方がベストなのか知らないが、とりあえずデューティー比を決めるOC1RSの値を変更して実現する。
こんな、泥臭いコードになる。
pic32mx120f032b_pwm_harmony_delay_01
delayが必要になったので、ついでにタイマーを追加して、Interrupt Flagをチェックする1msの待ち関数を作った。
pic32mx120f032b_pwm_harmony_delay_02
pic32mx120f032b_pwm_harmony_delay_03
こんな感じ。

新たに知ったことは、Timer1だけは特別だということ。
OCにTimer2を使ったので、同じつもりでTimer1を使ったら、いろいろ設定が違って予定通りの時間にならなかった。
そもそもカウント用のクロックのソースが違う。
今回は、Timer3に変えて解決した。()
pic32mx120f032b_pwm_harmony_delay_04

()
後でもう一度試してみたら、今回の使い方では違いがなかった。
クロックも同じものが使えた。
うまくいかなかったのは何だったのか良く分からなくなった。
ただ、Timer1とTimer2以降の2種類が違う機能を持っていることは確かだ。

このエントリーをはてなブックマークに追加

Windows10でエクスプローラーが暴走しまくるのでTablacus Explorerを使ってみる。

$
0
0

クリーン・インストールしたWindows10でエクスプローラがすぐに暴走する。
CPU使用率90%超えとか、いったい何の冗談かと思ってしまう。
win10_exp_freez_02
バージョンは1607でビルドは14393.0だ。
後から知ったことだけど、これすごく評判が悪いんだねえ。
とても、遊び以外にゃ使えないOSを、無料を餌に強制する。
さすがマイクロソフトです。
win10_exp_freez_01
こうなると、タスクマネージャーからエクスプローラを再起動するしかなくなる。
win10_exp_freez_03
これが頻発する。
フォルダをコピーするだけで再現する。
クソOSとしての本領発揮ということか。
Windows7からのアップグレードの状態からUpdateしていない他のPCではこの現象は出ておらず、このPCでも以前は出ていなかった。
win10_exp_freez_04
つまり、新しいビルドをクリーン・インスト-ルしたら逆に状態が悪くなるという、いかにもMicrosoftらしい仕様だ。
いろいろ調べて、対策と思われることは全部やったが一向に改善しない。
まあ、そもそも、ユーザーが対策を探し回らなきゃならないOS自体がゴミなわけだが。
この国で原発ムラ臭のしない電気を使うことが不可能に近いのと同じで、一度巨大化してしまったシェアを背景にごり押ししてくるクズ共を相手にしたら、1ユーザーに出来ることはほとんど無い。

気を取り直して冷静に考えると、そもそもWindowsのエクスプローラほど使い勝手の悪いファイラーは無いというのがデフォだったことを思い出した。
そういえば、ちょっと前までは、フリーのファイラーを使って、エクスプローラなんて使ってなかったような。

というわけで、Tablacus Explorerというのをしばらく使ってみることにした。
追記(2016/09/28)
一日使ってみた。
分割できて、タブが使えて、等々、便利すぎて書ききれない。
tablacus01
エクスプローラーの暴走は一度も起こっていない。
この件以外には、巷で騒がれているような不具合も特に出ていないので、しばらくはこのまま行きますか。

このエントリーをはてなブックマークに追加

LibreOffice 自動URL識別の解除

$
0
0

テキストを入力すると、LibreOfficeはURLである可能性があるものを識別して、ハイパーリンクに置き換える。
余分なことはしてくれなくていい。
解除方法
libreoffice_url_ninnshiki_01
libreoffice_url_ninnshiki_02
ついでながら、この、オートコレクトとかいう機能も全部不要なのでチェックを外しておく。

このエントリーをはてなブックマークに追加
Viewing all 2178 articles
Browse latest View live