2014/11/16

[nrf51]core_cm0.hはincludeしないほうがよい

eclipseでエラー扱いされないようにincludeを変更したが、ついでに順番も整理していた。
整理と言っても、「bleとs110だったら、bleが上にあった方がいいよね」「common系はその上がよさそう」くらいなものだ。

が、コンパイルエラーになった。
整理する際に、core_cm0.hを読込むようにして、それを一番上に配置したのだが、それがよくないようだ。
doxygenでつくったincludeグラフを見てみよう。

core__cm0_8h__dep__incl

core_cm0.hはnrf51.hとnrf51_bitfields.hだけがincludeしていて、普通の人はnrf51.hをincludeするもののようだ。

nrf51.hをざっと見てみたが、割込の定義みたいなnRF51系の固有設定はこのファイルに書かれているから、勝手にcore_cm0.hをincludeしてしまうと未定義でエラーになるのだった。

 

じゃあ、どこまでincludeを整理できるか、とやってみたら、こんな感じになった。
まあ、こういうのに正解はないんだろうけど、とりあえずね。
https://github.com/hirokuma/nrf51822_templete

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。

注: コメントを投稿できるのは、このブログのメンバーだけです。