dsPIC(XC16)でFreeRTOS。xprintfを導入しfloatを扱う

カテゴリー: PIC

dsPIC33CKでFreeRTOSを使うの続編です。RTOSでsprintfを使いたいですが、標準入出力のprintf/scanfは共通ヒープメモリを使うのでRTOSではうまくない、とのことです。実際sprintfではうまくなかったです。そこでCHaN氏作「xprintf」の登場です。

「xprintf」はすでにPSoC5LPでFreeRTOSでも使っています。使いたい関数は、文字列に対する「xsprintf」で、今回はfloatを扱ってみます。

なお、試していませんが、一文字出力ルーチンに出力のポインタを指定すれば、LCDやUARTに直接出力することもできるらしいです。う~ん、これは凄い!

環境はMPLAB Xv5.45 XC16 v1.6です

続きを読む…

メーラー引っ越しその後。

カテゴリー: メーラー

EdMaxからThunderbirdへ移行記事「さらばEdMax・・・メーラー引っ越し」のその後の続編です。Thinderbirdは使いながら覚えればいい・・と簡単に考えていましたが、なかなかどうして奥が深い。

続きを読む…

Scilab/XCOS 「RFILE_f」ブロックの使い方

カテゴリー: PID制御,ソフトウェア

「RFILE_f(Read from input file)」は、XCOSで任意波形を出力するために必須のブロックですが今一つ使い方が不明確で、毎回適当にやってなんとか動いたところでおしまいにしていたので情報の蓄積がゼロでした。

今回掘り下げてみたので、覚書として書き留めておきます。

続きを読む…

VS2019で旧バージョンのプロジェクトを読込むと(非互換)と表示され、開けない問題が解決

カテゴリー: ソフトウェア

VC#2010で作成したアプリをベースにVisual Studio community 2019(以降VS2019)で開発しようとしたところ、読込んだプロジェクトが(非互換)と表示され、中身が開けない現象で作業が止まっていました。VS2017では開けるので何とかなるのですが、新機能の多いVS2019で一本化したいので試行していました。

ソリューションエクスプローラーに’(非互換)’と表示され開けない

続きを読む…

dsPIC33CKでFreeRTOSを実装

カテゴリー: PIC

以前PSoC5LPとPSoC Creater4.2にFreeRTOSを実装した記事「FreeRTOSをPSoC5LPで使う」と同様に、MPLAB XでdsPIC33CK256MP503にFreeRTOSを実装した覚書です。

使用アイテムは現時点で最新版、FreeRTOSV202012.00(カーネルはV10.4.3)、MPLAB X5.45です。 続きを読む…

板金用ハンダごてはビッグサイズだった!

カテゴリー: 電子回路全般

熱伝導の良い材料をはんだ付けする機会があったので、手持ちの100Wで実験すると、できるにはできたが時間がかかるし、時間をかけると全体が加熱され保持が難しい。20か所以上はんだ付けするのでちょっと大変です。

そこで、「板金用」の300Wはんだゴテを購入しました。 続きを読む…

Salome-Meca起動しないトラブル・・・Agent.exeが原因

カテゴリー: ソフトウェア

数週間前からFEMソフト「Salome-Meca Windows2018」が起動しなくなった。やっと原因究明にこぎつけた。

Salome-Meca起動直後で内部空きポートが探索出来ない

Salome-Mecaは複数のアプリを内部サーバで連携している(内部プロキシというのか?私はそこまで詳しくない(:_;))。そのための空きポートが探索できないらしい。ネットで調べたhostsファイルの書き換えでは効果なし。Windowsセーフモードでは起動できたので、スタートアップを一つずつ無効にしては再起動しながら調査した。時間と手間かかる~! 続きを読む…

ショートショート「おーい、でてこい」

カテゴリー: ホビーその他

ショートショート「おーい、でてこい」

星新一氏のSF小説「ボッコちゃん」より。昭和46(1971年初版)当時は「ショートショート」と分類され夢中で読んだ小説です。

正月に本を整理している中で見つけました。当時感銘を受けた小説で、思わず読みふけってしまいました。先見の明の極致、たった6ページの短編ですが、ブラックユーモアの最高峰です。おもわずの投稿です。 続きを読む…

FreeRTOSをPSoC5LPで使う。既存のプロジェクトに適用する

カテゴリー: PSoC,ソフトウェア

HOS V4以来のRTOSです。RTOSといっても、キャラクタLCDにリアルタイム表示させる、バックグラウンドで何かやらせる、程度で使うのみでした。

今回はメモリに多少余裕のあるPSoC5LP(CY8C5868LTI-038)で、アクチュエータ動作中にもUP/DOWNキーによるスピード設定をしたいので、既存のベアメタルファームに後からFreeRTOSを導入し、メインと設定タスクを分けてみました。FreeRTOSはPSoC5LP用のデモを公開しているので、OSのコンフィギュレーションはそれをコピーするだけでも導入はできます。

続きを読む…

CNCのX,Y軸モータードライブの速度フィルタ設定を大きくしたら、円弧補間がおかしくなった。

カテゴリー: CNC

何度加工しても円弧補間だけおかしい

速度フィルタをいじった日時やその時の記憶は明確にありますが、それがこんなトラブルを招くとは思いもよらず、解決するのに丸一日費やしてしまいました。 続きを読む…