無意味のような生き方

組込みエンジニアが怒りと無念をさえずるブログ。

【組込みOS】数字が表示されないんだよ

11月から本格的にOSを自作し始めたが、年末に忙しさという急ブレーキがかかり、そこから全く進んでいない。しかもずーっと同じところで止まっている。

 

画面に数字が表示されないんだよ!!

 

文字の出力はできるのに、数字の出力だけ何故かできんのじゃ。

Hello World」は表示できるのに、「10」は表示できずに空行が表示される。そのせいで、マイコン→PCに対して数字が送れず、通信が確立できない。よって、肝心のOS転送ができないでいる。むずいねんクソが。

 

  ソースを貼り付ける。技術系の記事を書いたことがないので、こういう時、検索しやすいようにテキストで貼るという慣習を忘れていた。png上等。

 

<putint()で数字を表示したい>

f:id:ikenohotorino:20190304232605p:plain

 

<コマンド表示のための初期化後、ドライバにデータを詰める>

f:id:ikenohotorino:20190304232647p:plain

 

<レジスタに値を代入。これで表示されるはずのやつ>

f:id:ikenohotorino:20190304232659p:plain

 

どうしてもこうなる.png

f:id:ikenohotorino:20190304232710p:plain

 

何故数字だけがうまくいかない??

この状態が2ヶ月くらい続いてストレスを感じるようになった。

 

やってみたこと

①値を直接代入しているから駄目なのでは?

→数字を変数に入れてから出力する。

 

②UW(unsigned short int)を最終的に1バイトのレジスタに代入しているから駄目なのでは?

レジスタに代入する直前でキャストする。

 

やっぱダメ.png

f:id:ikenohotorino:20190304232722p:plain

 

もう諦めろ.png

f:id:ikenohotorino:20190304232734p:plain

 

 うわー。

12ステップで作る組込みOS自作入門

12ステップで作る組込みOS自作入門

 

 サンプルプログラムの参考元。同じはずなのになぜ。