Vol.950 4.Sep.2026

HDD低レベルフォーマットツール マジックルーペ CLB)7segLEDダイナミック表示

H HDD低レベルフォーマットツール  〜HDD_Low_Level_Format_Tool

by fjk

 HDD Low Level Format Toolは、ハードディスク(HDD)やSSD、SDカード、USB メモリーなどの様々なディスクを口ーレベルフォーマット(物理フォーマット)できるソフトです。ディスクが物理的に壊れていなければ、ディスクを元通りにアクセスできるようになることがあります。ただし、記録データは全て失われる!。
 ローレベルフォーマットはディスクの全てのセクタにゼロ(00)などを書き込むので、OSの管理エリアやMBR、GPTも初期化できます。これらの部分がウィルス感染など何らかの理由で壊れてしまったときは、ローレベルフォーマットが有効です。また、ディスクの廃棄処分時にも有効です。
 本ソフトは個人や家庭での利用に限り無料で使うことができますが、最大で50MB/秒、718GB/時というフォーマット時の書込み速度制限があります。この制限の解除は、3.3ドル(個人)、27ドル(商用)。

【主な特徴】
○ HDD /SSD/ USB メモリー/ SD カードなどを低レベルでフォーマット・初期化。
○ ストレージの Trim 操作や読み取り検証やSMART情報の表示も可能。
● 日本語には非対応。
 
【リンク】
HDD Low Level Format Tool(HDDGURU)
HDD Low Level Format Tool(フリーラボ)
ストレージをフォーマット・初期化(お手軽ふりーなもの探検記)
 
★ 32GB超のUSB外付けドライブをFAT32/FAT/NTFS形式でフォーマットできるソフトもあります。
USB Disk Storage Format Tool(フリーラボ)


M マジックルーペ  〜3R-MJ01

by fjk

 ルーペは幾つも持っているが、「拡大倍率が合わない」、「暗くて見えない」、「焦点が合わない」、など細かなところで不満があった。
 そこで、JustShopから3R-MJ01(充電式、最長70分)を会員割引価格で購入。

<特徴>
  • ポケット等からサッと出してすぐ拡大
  • ボタンを押すだけの簡単操作
  • 倍率5、9、14倍と3段階の切り替え
  • LED・UVライト、2つのライトを搭載
  • カメラ画像を液晶ディスプレィ表示
  • 焦点距離は8〜12mm
  • 消し忘れ自動電源オフ(5分)
  • USB充電ケーブル、専用ケース付


P PIC16F13145 (7)   〜CLBによる7segLEDのダイナミック表示

by fjk

 前報(abc949)まで、7セグメントLED表示の動作を確認できたので、CLBを使って複数桁の7セグメントLEDのダイナミック点灯を試みた。
 ところが、ここで問題。7セグメントLEDをダイナミック点灯させるには、LEDパターンとして8ポートと桁ドライブ用に数ポートが必要である。しかし、PIC18F13145(20pin)のCLB出力は最大8ポート(入力は最大4ポート)しか利用出来ない。
 そこで、7セグメントの小数点表示を諦め、LEDパターン用に7ポート(RC0〜6)、桁ドライブ用に1ポート(RB4)、を使うことにし、小型の3桁7セグメントLED(OSL30301-LRA、赤色)を用いて、その下位2桁のみを表示することにした。

【ハード】
・3桁7セグメントLED:
OSL30301-LRA(カソードコモン、秋月#114725、@70)
・ブレッドボード:
EIC-801(秋月#100315、@450)+ジャンパーワイヤー
・超小型USB変換Mj:
AE-FT234X(秋月#108461、@780)
・抵抗入りTr(NPN):
DTC123EL(秋月#112468、@10)
・抵抗入りTr(PNP):
DTA123EL(秋月#112465、@10)
・その他:
スイッチ(今回未使用)など


桁ドライブに DTC123E/DTA123E(100mA、ベース抵抗:2.2kΩ)を使用。(PNP使用法は正しくないが・・)
もし、電流が不足なら 2SC1815/2SA1015 (150mA)+ベース抵抗。
 
【ソフト】

MCC:System (clock=32MHz)、TMR0 (Period=8mS)

CLB Synthesizer  ▼abc950-7seg2-DM.clb(zip)

テストベンチ



/*********************************(abc950.c)*****
 * Dynamic display of 2x7-segment LED using CLB
 ************************************************/
#include "mcc_generated_files/system/system.h"

//====== main ================
int main(void){
    uint8_t cnt = 0;
    SYSTEM_Initialize();
    
    while(1) {
         CLB1_SWIN_Write8(cnt++);
         __delay_ms(500);
    }    
}

 JK-FFのデータが不定と、シミュレーションは上手くいっていないようだが、PICに書き込んでみると、チャンと7segLEDのダイナミック表示ができている。
 CLBとTMR0だけの構成で、回路図には未使用のスイッチも接続しているが、使用できるピンにまだ余裕があるので、他の機能の追加も容易。
 CLBを使用すると、7segLEDのダイナミック点灯制御(時間管理)が不要となるので、プログラムに余裕ができる


【おまけ】
 「小型2桁赤色7セグメントLED表示器」(#108900)が秋月で販売終了となっていたので、同サイズのOSL30301-LRAを使ったが、Amazonで同サイズで小数点付2桁7segLED(LG3622AH、@110)を入手できたので、CLB+CLC+TMR0で、小数点付2桁7セグメントLEDのダイナミック表示を行った。
 2桁表示のみなら、ピン配置がOSL30301-LRAとほぼ同じなので、MCCやプログラムはそのままで、前記の回路でデバイスを差し替えるだけ。[7segLEDのPin2(Dp)の配線なし]

≪小数点も表示する場合≫
 小数点表示を行うため、CLB出力は全てLEDパターン用とし、桁ドライブ信号はTMR0とCLCで作製。


小数点(Dp)用にRC7配線を追加、RA2のSWをVRに変更

MCC(clock=32MHz)、TMR0(Period=8mS)

CLB Synthesizer  ▼abc950-7seg2B-DM.clb(zip)
  • 桁ドライブ信号のデユーティ比を1:1にするためにCLCを用いたが、CLC1_OUTではなくTMR0_overflowを桁信号用として用いてもOK(この場合CLCは不使用)。
  • 小数点表示配線はPPS_OUT7(RC7)を使用(各配線は使用するハードに合わせてPPSで変更可能)
  • 小数点表示はCLBSWINの14-15の2ビットで指定
      桁0の小数点: CLBSWIN_b14(1で表示)
      桁1の小数点: CLBSWIN_b15(1で表示)
  • カウンターは表示を速くするため、0.1S単位で増加。
  • CLB1_SWINの書込は、16bit用CLB1_SWIN_Write16()と8bit用CLB_SWIN_Write8()を用いた。
  • カウンタは0〜0xFFまでカウントし、その後小数点を順に点灯させている。

CLC1

/************************************
 * MAIN Generated Driver File
 *================================*/

#include "mcc_generated_files/system/system.h"

//===== Main application ============

int main(void){ 
    uint8_t cnt = 0;
    uint16_t dp = 0;

    SYSTEM_Initialize();

    while(1){
        CLB1_SWIN_Write16(dp);
        do{
            CLB1_SWIN_Write8(cnt++);
            __delay_ms(100);
        }while(cnt != 0);
        dp += 0x4000;
    }    
}

※ 小数点表示位置が変わります


※ 本レポートの参考・利用は、あくまでも自己責任でお願いします。


HDD低レベルフォーマットツール マジックルーペ CLB)7segLEDダイナミック表示