「PIC AVR 工作室」サイトの日記的なブログです。
サイトに挙げなかった他愛ないことを日記的に書き残してます。
PIC AVR 工作室 ブログ
CALENDAR
2014年5月
日
月
火
水
木
金
土
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
前月
翌月
Entry Archive
2024年11月
2024年10月
2024年09月
2024年08月
2024年07月
2024年06月
2024年05月
2024年04月
2024年03月
2024年02月
2024年01月
2023年12月
2023年11月
2023年10月
2023年09月
2023年08月
2023年07月
2023年06月
2023年05月
2023年04月
2023年03月
2023年02月
2023年01月
2022年12月
2022年11月
2022年10月
2022年09月
2022年08月
2022年07月
2022年06月
2022年05月
2022年04月
2022年03月
2022年02月
2022年01月
2021年12月
2021年11月
2021年10月
2021年09月
2021年08月
2021年07月
2021年06月
2021年05月
2021年04月
2021年03月
2021年02月
2021年01月
2020年12月
2020年11月
2020年10月
2020年09月
2020年08月
2020年07月
2020年06月
2020年05月
2020年04月
2020年03月
2020年02月
2020年01月
2019年12月
2019年11月
2019年10月
2019年09月
2019年08月
2019年07月
2019年06月
2019年05月
2019年04月
2019年03月
2019年02月
2019年01月
2018年12月
2018年11月
2018年10月
2018年09月
2018年08月
2018年07月
2018年06月
2018年05月
2018年04月
2018年03月
2018年02月
2018年01月
2017年12月
2017年11月
2017年10月
2017年09月
2017年08月
2017年07月
2017年06月
2017年05月
2017年04月
2017年03月
2017年02月
2017年01月
2016年12月
2016年11月
2016年10月
2016年09月
2016年08月
2016年07月
2016年06月
2016年05月
2016年04月
2016年03月
2016年02月
2016年01月
2015年12月
2015年11月
2015年10月
2015年09月
2015年08月
2015年07月
2015年06月
2015年05月
2015年04月
2015年03月
2015年02月
2015年01月
2014年12月
2014年11月
2014年10月
2014年09月
2014年08月
2014年07月
2014年06月
2014年05月
2014年04月
2014年03月
2014年02月
2014年01月
2013年12月
2013年11月
2013年10月
2013年09月
2013年08月
2013年07月
2013年06月
2013年05月
2013年04月
2013年03月
2013年02月
2013年01月
2012年12月
2012年11月
2012年10月
2012年09月
2012年08月
2012年07月
2012年06月
2012年05月
2012年04月
2012年03月
2012年02月
2012年01月
2011年12月
2011年11月
2011年10月
2011年09月
2011年08月
2011年07月
2011年06月
2011年05月
2011年04月
2011年03月
2011年02月
2011年01月
2010年12月
2010年11月
2010年10月
2010年09月
2010年08月
2010年07月
2010年06月
2010年05月
2010年04月
2010年03月
2010年02月
2010年01月
2009年12月
2009年11月
2009年10月
2009年09月
2009年08月
2009年07月
2009年06月
2009年05月
2009年04月
2009年03月
2009年02月
2009年01月
2008年12月
2008年11月
2008年10月
2008年09月
2008年08月
2008年07月
2008年06月
2008年05月
2008年04月
2008年03月
2008年02月
2008年01月
2007年12月
2007年11月
Recent Entry
こないだのロボット
ロボット行ってきた
こないだのくれじークライマー全国大会2024予選
マウス修理した
訃報
ミカド行ってきた
LANケーブル交換した
MFT2024行ってきた
こないだのロボット
ロボット行ってきた
Recent Comment
nekosan/
JYRUSSやってきたメモ
フルタニアン/
JYRUSSやってきたメモ
nekosan/
JYRUSSやってきたメモ
フルタニアン/
JYRUSSやってきたメモ
nekosan/
こないだのロボット
フルタニアン/
こないだのロボット
nekosan/
こないだのロボット
フルタニアン/
こないだのロボット
nekosan0/
レジ袋ホルダーを考える
フルタニアン/
レジ袋ホルダーを考える
Category
ノンジャンル
(2850)
PIC
(47)
AVR
(341)
Arduino
(446)
Raspberry Pi
(193)
mbed
(41)
ARM
(30)
ESP32
(15)
Android
(10)
OPアンプ
(125)
VHDL
(57)
PSoC
(4)
アナログ回路
(110)
クルマ
(127)
rails
(51)
本
(42)
導電塗料
(3)
Fritzing
(41)
Edison
(2)
FFT
(34)
写真
(158)
MIDI
(24)
その他日記
(11)
Python
(57)
3Dプリンタ
(124)
Bookmark
最初はgoo
goo blogトップ
スタッフブログ
My Profile
ブログID
nekosan0
自己紹介
Search
このブログ内で
ウェブ全て
digitalWriteのクロック数
Arduino
/
2014年05月09日
相変わらず、ちょこっとずつ、Arduinoでオシロ
の作戦の続き。
LCDやOLEDディスプレーをSPIでアレコレ制御する
のが、結構遅いので、なんとか出来るものなのか
算段を立てたいところ。
line表示とか、ドットで描画する関係の処理が
とにかく遅い。
http://blog.galileo-7.com/?eid=86932
galileo7さんのサイトによると、digitalWriteは
44クロック必要、とある。
んで、じゃぁ今回のSPI制御のロジックで、1ドット
あたり何回のSPI通信を行っているのかを元に、
例えば画面全体を1ドットずつ塗りつぶしたら、
digitalWriteと直接ポート叩くのでは、どのくらい
短縮できるのかを試算してみる。
…思ったほど速くならない? ホント?
と思って、実際にどのくらいのクロック数が掛かって
いるのか、ちょい実験。
SSD1306チップ搭載の、今回実験に使ってるOLED
を元にすると、128×64ドットなので、ドット数は
画面全体で8192ドット。これを、1ドットずつforの
ループで描画していくと、およそ8秒程度。
for文でどのくらいのオーバーヘッドがあるのかを
実験で求めてみると…瞬間的に処理が終わる。
もちろん、最適化で無効処理にならないように配慮
して、その状態だから、実質、入出力周りで8秒ほど
掛かっている計算。
んで、このディスプレー宛に、1ドットあたりでは
コマンドorデータを4回出力してて、その4回ごとに
8ビットデータをdigitalWrite関数で上げ下げして
るんだけど、それぞれdigitalWriteを27回使って
いるのが、現状の内部処理。(3+8×4)
8秒という値は、8Mhz化してあるArduinoでの計測時間
なので、それを元にクロック数を計算してみると…
8秒÷8192÷4÷27÷(1/8000000)≒72クロック
と出てくる。
うーーーーーん。微妙に長い。
タイマ割り込み関係を禁止してないので、Arduinoの
コア機能が使ってるタイマ機能あたりがオーバーヘッド
になっているのか?
それとも、オイラの書いたドット描画以外の処理で
食ってるのか?
と思って、タイマ割り込み禁止にしたり、digitalWrite
だけを10個とか100個とかforループに組み込んで、
100万個分の処理で何秒かかるのかとか試してみた
んだけど、やっぱり70くらいっていう数値。
ドット描画以外の処理は、鼻くそほどの処理時間
しか掛かって無いみたい。
計測条件が異なるからなのか、44クロックと
72クロック。なんかこの差が微妙に縮められ
なかった…。
まぁ、桁が違うとかいう差じゃないから、この
辺りにコタエがあると考えておこう…
んで、もし、このSPI関係処理をdigitalWriteから、
直接ポートを操作するように変更したら、この
「大部分」を占める70クロックが、一気に数クロック
まで、一桁ダイエット出来るわけだから、かなり速く
なるんだじゃいかな、と思うんだけどな。
でも、後々ピン配置を色々流動的に弄りたいって
キモチもあるから、今はあまり弄りたくないん
だよな。速度の実験用だけでも、テストのスケッチ
書いて、試してみようかな。
http://brown.ap.teacup.com/nekosan0/2189.html
この間、たまたま触れていた、千葉テレの「ハロー
ジャガー」のジャガーさん。
http://sankei.jp.msn.com/life/news/140505/trd14050512000012-n1.htm
なんか、取り上げられてた。
個人でテレビの枠を買ってたので、なんとも不思議な
人だなぁと思ってたんだけど、当時友人に聞いた
話では、実業家で資産家で、ものすごい金を持って
いるから、個人で枠買って、やりたいことやってた
みたいなこと言ってたけど、どうやら本当のこと
だったらしい。
最近は、ustreamで活動してるのか。お元気で
なにより。
http://mamesoku.com/archives/3517189.html
ニッポンの妖怪。どれも良くできたイラストだな。
どうやって描いてるんだろう?最後の大天狗、
かっちょいい。
http://www.123dapp.com/Project/Raspberry-Pi/2346978
Raspberry Piの外側の枠を、新しいMACっぽく。
これなかなか良いな。
MACにこだわる必要もないんだけど、ネイキッド
のままのRaspberry Piより、やっぱこういう
外枠があった方がコンピュータって感じするなぁ。
オイラなら、出来ればPC-8001かPC-8001mkIIっぽい、
一体型がいいな。っていうか、どちらかの機種の
筐体が欲しいな。2/3スケールくらいで。
キートップは、Let'sノートくらいのピッチで
いいから、こじんまりと。
とか言いつつ、クラムシェルも捨てがたいな。
Raspberry Piベースで、初代98noteみたいな
クラムシェル型、作れないかな…
http://headlines.yahoo.co.jp/hl?a=20140508-00000068-reut-bus_all
Nintendoは、新興国機を検討してるのか。
オイラは、ゲーム機のハードスペックって、
初代プレステくらいでもうお腹いっぱいに
なってるんだよな。
あの位のを、安く、小さく、長時間遊べるような
マシンにして、日本でも売ってくれたらいい
のにな…とか思っちゃうんだよな。
http://jp.techcrunch.com/2014/05/08/20140507hover-adds-gestures-and-touch-to-your-diy-electronics/
Arduinoで、ジェスチャー操作ができちゃう
のは、なかなか面白いかも。
コメント (
0
)
goo ブログ
ブログの作成・編集
gooおすすめリンク
おすすめブログ
【コメント募集中】スタッフの気になったニュース
@goo_blog
【お知らせ】
ブログを読むだけ。毎月の訪問日数に応じてポイント進呈
【コメント募集中】goo blogスタッフの気になったニュース
gooブロガーの今日のひとこと
訪問者数に応じてdポイント最大1,000pt当たる!