0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

CH32X035で充電器をPPS制御する

Posted at

経緯

 「前回」CH32X035でPD制御を行い、充電器から5V以上の電圧を取り出した。
 しかし、PD制御では充電器が有する固定電圧しか指定できない。
 そこで、次なる方法として自由に電圧指定出来るPPS制御を試みる事にした。
 ◆◆◆ 折角買ったんだから、試してみよう ◆◆◆
 アリエ〇の充電器も、誇大広告が多いと思うな。

推進方法

 PPS制御の実例は何点か有るが、制御の資料は見つけられなかった。
 そこで、実例の解析を試みたが、プログラムが長く良く判らん。
 そこで、取敢えず実例のコンパイルから始める事にした。
  ※今回は実例から不要な部分を削ぎ落し、多少色を付けただけ。
  ※ソース公開に感謝します。

 「CH32X035-USB-PD-Adapter(Github)

必要なハード

 ◇CH32X035のチップが乗った基板
  CH32X035F8U6 Mini Core Board。
  アリエクで1200円/5個程度で販売していた。
  日本のアマゾ〇では売ってないようだ。
board.jpg

 ◇開発装置
  WCH-LinkE
  同様に500-1000円程度で販売している。日本でも売られている。
wch-linke.jpg

接続

 下記6本を、基板とWCH-LinkE間で接続。下記2本はプログラム内で使用。
  基板   WCH-LinkE
  3V3  3V3   電源
  GND  GND   グランド
  DCK  SWCLK デバッククロック
  DIO  SWDIO デバック信号
  A2   RX    シリアル送信
  A3   TX    シリアル受信

開発環境

 ◇コンパイラ
  実例のコンパイルには、LINUX環境が必要でありこの準備をする。
  と言っても、当方はWindows環境なので「WSL」を使う。
   ※WSL: Windows Subsystem for Linux WindowsのサブシステムとしてLINUXが動作。
  「マイクロソフトのサイト」に詳しく書かれてている。
   ※ディフォルトではubuntuがインストールされる。
    当方の環境ではubuntuでは環境が構築できず、追加でDebianを導入した。
  次はツールチェーンを導入するのでLINUXを起動し、コンソール画面で下記コマンドを入力。
   sudo apt-get install gcc-multilib gcc-riscv64-unknown-elf
  下記コマンドで導入の確認が出来と思う。
   /usr/bin/riscv64-unknown-elf-gcc --version
  下記の様な表示が出れば導入成功。
   riscv64-unknown-elf-gcc (12.2.0-14+11+b1) 12.2.0
   Copyright (C) 2022 Free Software Foundation, Inc.
    ※ch32v003funの導入は不要のようだ。
    ※LINUXには詳しく無いので、同じやり方で上手く行くとも限らない。
     ダメな場合は、自分で探してバンバンしてくれ。
 ◇ダウンローダー
  WCH-LinkUtility
  「WCH社」より、WCH-LinkUtility.ZIPを落す。

  必要ならドライバーを入れ、デバイスマネージャーで確認する。
   ※Interface-WCHLinkEと、WCH-Link SERIAL(COMx)が追加されている。
  WCH-LinkUtility.ZIPを適当なディレクトリに解凍。WCH-LinkUtility.exeを起動。
  画面のCore:をRISC-Vに、Series:をCH32X035/34/33に変更。
  基板とWCH-LinkEを接続し、USBに刺す。
  Active WCH-Link Mode : (画面下の方)をWCH-LinkRVに変更し、「Get」「Set」を順に押す。
  Query Chip Info(画面上3個目のアイコン)を実行して、MCU ID等が読み込まれれば接続は正常。
  WSLからWCH-LinkEを操作する方法を(私は)知らないので、TargetFile: として、
  下記例での入力内容を示す。※usrnameは各人の環境に合わせる。
  WSL環境でコンパイルが通ったなら、Execute(画面上4個目のアイコン)を押す。
wch-link.jpg

サンプルソフト(CH32X035_adp)の説明

 「ソフトの格納場所(Github) 」のCH32X035_adpディレクトリに有る。

 本ソフトはCH32X035の動作確認を目的としている。
 チップと基板の動作確認コマンドを、BASICコマンドとして発行する。
 動作確認の為にTINY BASICに下記を追加している。
 ◇PPS 「PPS xxxxx」(xxxxxは電圧、単位はmV)。
 ◇LED 「LED x」(xは1又は0)で、基板上のLEDが明滅。

 BASICが起動したらPPS xxxxxと入力すると、xx.xxxVの電圧が発生する。
  ※起動後に充電器との接続を、一端オンオフする必要が有る。※充電器のリセット方法が判らん。
  ※放置していると数秒で消えるので、継続的にコマンド発行が必要。
 

pps_out19.jpg

感想

 一応動作はしたが、ソフトをWindows環境に持って行きたい。
 ライブラリが異なって居る様で、とんでもない量のエラーが出る。
 なお、上記記載内容は全て無保証であり、各自の責任においてご利用願います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?