うらおブログ(移転しました)スマートフォン用の表示で見るやねうらおブログ(移転しました)この広告は、90日以上更新していないブログに表示しています。2008-08-01PIC16系のUSARTとMPLAB/PICCのこと(1)hardその後、調べわかったことをざっと列挙しておく。Liteの生成されているコードをずいぶん読んだが、当初思っていたほどひどいコード生成ではないとわかった。PIC16シリーズはコンパイラ泣かせのアーキテクチャなのに、ずいぶん頑張っていると思う。Cよりずいぶんマシなコードを生成しているらしい。Liteの生成するコードが間違っているのかと思ってbank切り替えまわりを重点的に調べたが、私が使った限りは間違ったコードは一つも生成されていなかった。STD/PROPICCはLiteではなくSTD/PRO(有償)のほうだと、コードを半分ぐらいに縮めることが出来ると書かれていた。45日評価版(STD)をインストールしてテストした。codeというエラーが出た。RCIF)がエラーになった。RCIFと書かないといけないようだ。);もこのエラーになった。複雑な式もエラーになるようだ。);とすればコンパイルが通った。結果、1505byteが1366byteになった。5割は縮んでいないが、最適化なしに比べれば5割という計算なんだろう。生成されるコードはなかなか上質のコードだと思う。PROのお値段は$1495らしい。PIC10/12/16で量産品の商品開発をしているなら買う価値が十分あるのかも知れない。私がテストしたとき(9.60PL2/STD)では、bank切り替えまわりでbugっていた。Lite×MPLABでifdefを多用しているとMPLABのデバッガがおかしくなって正しい実行行を指せなくなった。(デバッガとして使い物にならない!)・USARTに疑似入力MPLABのシミュレータでUSARTに疑似入力を与えるためのテキストファイルの書式は以下の形式のものでなければならなかった。この形式であれば正しく動作した。Register名での値の表示などが出来るので非常に強力なデバッグが実現できる。チップ自体のエミュレーションもほぼ完璧で、クロックの設定、pinの入力や、USARTのファイルからの入力/ファイルへの出力、ブレークポイントの設定などが出来る。Registerの値が変化したときにブレーク出来て欲しいが、それは出来ないようだ。Memory上で命令を書き換えたり(簡易アセンブラ機能)出来る。ソースに逆アセしたものを同時表示するにはメニューからView→Disassembleを選択。この選択肢は、メニューのDebugのところに表示されていて欲しい気がしないでもない。電子書籍になるに至るまでの話ブログちょっとだけ移転のお知らせ時代はまだゲームセンターあらしに追いつかないのかやねうら王、電王戦バージョン提出しました将棋の神様のレーティングはいくつなのか?月別アーカイブはてなブログをはじめよう!yaneuraoさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。