LPC1769を使う3
mbedやLPCxpresso,Arduino等の圧倒的な利点というのは、ベースとなる
ハードウエアが共通かつ基礎的なアプリケーションフレームワークが
おぜん立てされているという点で、他の方が作られたすぐれたアプリ
ケーションを手元で誰でも簡単にすぐに追実験できるということに尽きる
と思います。
1年前はまだまだ秘境だったARMの分野の裾野を一気に広げたというのは
賞賛すべきことだと思いました!一方、情(に)弱(い)ねむいさんは足しか
出ていないような中華LPC1769基板をひたすらどうにかしていた…。
超高速なIOを利用して件のSPI接続可能でQVGAな液晶をSoft-SPIで…。
SPIバス接続してさらにDMAでぶん投げられたらもっと早くなるでしょう。
さて、先日NxPのサイトにてLPC17xx用のペリフェラルライブラリがアップデート
されました。
こちらを元にテスト段階のLPC1769の環境も固めていきたいとおもいます。
このライブラリはGCC向けにはCodeSourceryG++の使用を前提としてスタート
アップ・リンカスクリプト・etcが用意されています。LPC13xx,LPC11xx系は
ほぼ自前でこさえましたがせっかくなのでLPC17xx系は豊富なメモリ資産が
あるのでCodeSourcery提供のものを積極的に使用していきます。
で、注意しなければならないのがそのスタートアップ等なのですが、そっくり
そのまま使う人はべつにどうということはないのですが私のようにCRPの記述入れて
たりChecksumValitdateを直打ちな人は不整合が起こらないようにしなければ
なりません。あと見落としづらいのがdataやbss領いk(iruka氏が分かりやすく解説してくれてますので省略)
んでもってaudin氏に尋ねられた浮動小数点演算でハングする件をちょっと試して
みました。冒頭のカワウソ画像に見える浮動小数点演算の結果はsprintf(書式は%f)
+FONTXドライバの文字表示で表示していますが、NxPのLPC17xxのライブラリのGCC
向けで使用されているCodeSourceryのスタートアップ(CodeSourcery Common Start-up Code Sequence (CS3))
を使うとsyscalls.cというかsbrkを作り込まなくてもふつーにsprintf関数とか
使えました。しらんかった…。
ということで私の環境では浮動小数点演算OKでした。
そろそろベースも固まってきたことですからLPC1769用のとっかかりプログラムも
更新するつもりです。
またaudin氏がOpenOCD+Insightから利用できるIOビュー画面機能を実現する方法
を公開されていますのでこちらもありがたく使わせてもらいます!
今日はもう一件、どちらかというとこっちの方が重要な事柄なんですけどVersaloon
で使用できるSWD接続なOpenOCDデバッグがまだ制限付きですがLPC11xx,LPC13xx系
でようやく出来るようになっています!
LPC1114,LPC1343はJTAG接続が存在せず、SWDでしか接続できません。
OpenOCDが0.5.0に上がるのを機にSWD接続も対応になるとのことですがそれに
先立って公開されていたパッチを適用してデバッグを試してみました。
↓フェイクじゃなくてマジもんです。SWD接続に使用したデバイスはもちろんVersaloon。
キャプ画像見てもらったら分かるともいますが、audin氏のIOView機能をLPC11xx系に
適用して、ビット単位でGPIOのポートを見れるようにしています。コレめちゃくちゃ
便利すね…!もうLPC-LinkとかLPCXpressoのIDEとか必要ですらないです
…これで勝つる!!1!
…と言いたいところですがデバッグは問題ないですがOpenOCDからのフラッシュメモリ
操作がまだLPC11xx系には完全対応しておらず(LPC13xx系は普通に使えること確認
しました!)、eraseしかできません。
まぁvsprogがあるので書き込みはこっち使っておいて正式対応までちょっと我慢です。
↑おまけ。LPC1114の基板に改造加えてEtherPodっぽくしてみました
-
免責・連絡先は↑のリンクを
↓SNSもやってます↓
powered by まめわざ- ARM/STM32 (116)
- OpenOCD (27)
- ARM/NxP (34)
- ARM/Cypress (5)
- ARM/Others (3)
- ARM/Raspi (1)
- AVR (13)
- FPGA (4)
- GPS/GNSS (19)
- MISC (81)
- STM8 (2)
- Wirelessなアレ (16)
- おきぱ (1)
- ブラウザベンチマーク (28)
- 日本の自然歩道 (25)
- STM32U0はぢめました
⇒ ねむい (08/07) - STM32U0はぢめました
⇒ ひかわ (07/28) - STM32H5を使ってみる3 -待ち受ける初見殺しの罠たち-
⇒ ねむい (05/17) - STM32H5を使ってみる3 -待ち受ける初見殺しの罠たち-
⇒ どじょりん (05/16) - STM32H5を使ってみる3 -待ち受ける初見殺しの罠たち-
⇒ どじょりん (05/16) - いろいろ試す61(と今年の反省会)
⇒ ねむい (01/02) - いろいろ試す61(と今年の反省会)
⇒ ひかわ (01/02) - いろいろ試す61(と今年の反省会)
⇒ ひかわ (01/01) - STM32H5を使ってみる3 -待ち受ける初見殺しの罠たち-
⇒ ねむい (12/31) - STM32H5を使ってみる3 -待ち受ける初見殺しの罠たち-
⇒ ひかわ (12/31)
- October 2024 (1)
- September 2024 (1)
- August 2024 (1)
- July 2024 (1)
- June 2024 (1)
- May 2024 (1)
- April 2024 (1)
- March 2024 (1)
- February 2024 (2)
- January 2024 (1)
- December 2023 (4)
- November 2023 (2)
- October 2023 (2)
- September 2023 (1)
- August 2023 (2)
- July 2023 (1)
- June 2023 (2)
- May 2023 (3)
- April 2023 (1)
- March 2023 (1)
- February 2023 (1)
- January 2023 (1)
- December 2022 (2)
- November 2022 (1)
- October 2022 (1)
- September 2022 (1)
- August 2022 (1)
- July 2022 (1)
- June 2022 (1)
- May 2022 (1)
- April 2022 (1)
- March 2022 (1)
- February 2022 (1)
- January 2022 (1)
- December 2021 (2)
- November 2021 (2)
- October 2021 (1)
- September 2021 (1)
- August 2021 (1)
- July 2021 (1)
- June 2021 (1)
- May 2021 (1)
- April 2021 (1)
- March 2021 (1)
- February 2021 (1)
- January 2021 (1)
- December 2020 (3)
- November 2020 (1)
- October 2020 (1)
- September 2020 (1)
- August 2020 (1)
- July 2020 (1)
- June 2020 (2)
- May 2020 (1)
- April 2020 (1)
- March 2020 (1)
- February 2020 (1)
- January 2020 (1)
- December 2019 (3)
- November 2019 (1)
- October 2019 (1)
- September 2019 (2)
- August 2019 (1)
- July 2019 (1)
- June 2019 (1)
- May 2019 (1)
- April 2019 (1)
- March 2019 (1)
- February 2019 (1)
- January 2019 (1)
- December 2018 (3)
- November 2018 (2)
- October 2018 (1)
- September 2018 (1)
- August 2018 (1)
- July 2018 (1)
- June 2018 (1)
- May 2018 (1)
- April 2018 (2)
- March 2018 (1)
- February 2018 (1)
- January 2018 (1)
- December 2017 (2)
- November 2017 (2)
- October 2017 (1)
- September 2017 (1)
- August 2017 (1)
- July 2017 (1)
- June 2017 (1)
- May 2017 (1)
- April 2017 (1)
- March 2017 (2)
- February 2017 (2)
- January 2017 (2)
- December 2016 (7)
- November 2016 (2)
- October 2016 (2)
- September 2016 (1)
- August 2016 (1)
- July 2016 (1)
- June 2016 (1)
- May 2016 (2)
- April 2016 (1)
- March 2016 (2)
- February 2016 (1)
- January 2016 (1)
- December 2015 (3)
- November 2015 (1)
- October 2015 (3)
- September 2015 (2)
- August 2015 (2)
- July 2015 (3)
- June 2015 (3)
- May 2015 (4)
- April 2015 (2)
- March 2015 (4)
- February 2015 (1)
- January 2015 (3)
- December 2014 (3)
- November 2014 (2)
- October 2014 (1)
- September 2014 (2)
- August 2014 (2)
- July 2014 (3)
- June 2014 (2)
- May 2014 (1)
- April 2014 (1)
- March 2014 (4)
- February 2014 (4)
- January 2014 (3)
- December 2013 (5)
- November 2013 (4)
- October 2013 (3)
- September 2013 (2)
- August 2013 (2)
- July 2013 (2)
- June 2013 (3)
- May 2013 (2)
- April 2013 (2)
- March 2013 (2)
- February 2013 (2)
- January 2013 (3)
- December 2012 (4)
- November 2012 (2)
- October 2012 (2)
- September 2012 (4)
- August 2012 (1)
- July 2012 (3)
- June 2012 (2)
- May 2012 (3)
- April 2012 (3)
- March 2012 (2)
- February 2012 (3)
- January 2012 (3)
- December 2011 (5)
- November 2011 (3)
- October 2011 (2)
- September 2011 (2)
- August 2011 (2)
- July 2011 (2)
- June 2011 (2)
- May 2011 (2)
- April 2011 (2)
- March 2011 (2)
- February 2011 (2)
- January 2011 (3)
- December 2010 (7)
- November 2010 (1)
- October 2010 (1)
- September 2010 (1)
- August 2010 (3)
- July 2010 (4)
- May 2010 (1)
- April 2010 (2)
- March 2010 (2)
- February 2010 (2)
- January 2010 (3)
- December 2009 (3)
- November 2009 (8)
- October 2009 (7)
- September 2009 (5)
- August 2009 (4)
- July 2009 (6)
- June 2009 (6)
- May 2009 (14)
- January 1970 (1)
Copyright(C) B-Blog project All rights reserved.
Comments
こんにちわ audinです。
sprintf試していただいてありがとうございます。
ようやく原因が分かりました。
OpenOCDの「soft_reset_halt」コマンドが抜けていたようです。
詳細はブログに追記、修正しました。
スタートアップライブラリ「CS3」も試してみましたがOKでした。少し使ってみます。
ねむいです。おはようございます。
そちらも上手くいったようでなによりです。
OpenOCDからLPC17xxを確実に叩く方法もある程度固まってきましたね〜
私のブログでも何度か述べていますが、NxP系ARMマイコンは、
CheckSumValidationがあるので良く知らなかった頃は私も面食らいました。
それと割り込みベクタの飛び先は固定しておかないと、ソース編集して
ビルドするたんびに計算しなおしとかなってしまいますのですこし
考えてスタートアップ組む必要性があります。ご注意ください。
Post a Comment