gombeのブログ

マイコンの電子工作系PIC32/KiCad/C/C++/3D/

2016-01-01から1年間の記事一覧

MachiKaniaで日本語表示

[caption id="attachment_4051" align="alignnone" width="800"] 日本語表示テスト[/caption] 日本語表示テストをしました。上の写真のソースコードはこちらから https://github.com/elect-gombe/fontx2machikania FONTX2の説明を書いたことがなかったので載…

MachiKaniaのSDカード読み出しの高速化

WAVの読み出しするときに気がついたんですがSDカードの読み出し遅すぎまあなんというかmicrochip のライブラリを使っているのでしょうがないのかな?とは一瞬思ったのですがオーバーヘッドが大きいのとコードサイズが大きいですね。FatFSだとコードサイズは…

最近の活動について

更新頻度が落ちていますが、活動自体は活発にやっています。(多分) で、私の居場所は今はGithubになってたりします。 最近ではMachiKaniaでVideo再生をやったりしました https://git.io/v15u8 詳しいことはそちらで。

MachiKaniaでPCMの再生

次期作で乗る予定だったらしいですがもう試しに乗せてみました。まあ、みればわかるとおもいます。解説はほとんど不要だと思います。 2016/12/11追記 YouTubeに変更しました で、PCMなんですが容量が一気に増えますんでFlashには入りません。(数秒まで) とい…

MachiKaniaでの音楽の再生

MachiKaniaはマイコンの限界まで詰め込んだビデオゲームシステムですが、ビデオは素晴らしいのですが音楽がチープだったのでそれを改善するためのプロジェクト。 まず元々のプロジェクトでは音声出力はOC(OutCompare)を使ってコンペアマッチイベントでピンを…

CubeMX コードジェネレータチュートリアルもどき

CubeMXはST社のコードジェネレータです。このジェネレータはライブラリとその設定(初期化)、クロックの設定、RTOSなどのミドルウェアを生成します。そのことについてメモメモ。

マイコンのDMAでの断続的な転送

DMA 単一のアドレス空間上にはFlashやペリフェラル(周辺機器)のレジスタ、RAMメモリがある。この空間の間は通常CPUなどがアクセスしてメモリ間転送している。 これはCPUにやらせてもいいのだがCPUはリソースを取られるし一定時間内で転送しなければならない…

久しぶりのオルゴールについて

今回は減衰について説明しましょうかね。 オルゴールでは大抵音が鳴り始めたら減衰します。この音の減衰にあたる部分まで演算して求めようという考え方です。 人間の聴覚では音の大きさはdBで表されることが多いですね。音が相対的に大きさが触れられるのも…

時計の設計Elecrow基板発注

Elecrowに基板発注しました。しばらくして写真が送られて来ました。これからどのくらいで届くかな?楽しみですね。 2016/11/12追記 到着しました。 はい。まあまあですね。シルクが少しずれているところがありました。でもFusionPCBよりかは綺麗です。ユニク…

宇宙展行く

幕張の宇宙展に行ってきました 撮影スポットはここだけであとは見るだけでした。 内容は様々でしたが月の石も見れました。軽石にゴマがたくさんくっついているみたいな感じです。貸し出しもなかなかしてくれないレア物なので見れてよかったです。 人は休日に…

時計の完成(ハード側)

時計が完成しました。ソフトはまだ調節中です。(時刻調節未実装) 左の6は輝度を示します。CdSで自動的に輝度を変更します。時刻カウントについてはほぼ完璧でした。まあずれても困るしね(w。 アクリル板もレーザーカットしました。裏のパネルに彫刻も入れた…

禁断の比較?!ユニクラフトの基板レビューPCB国内を取り巻く現状〜

お約束の記事です。近年では外国製の安い基板受注生産が盛んとなり高価な国内産はあまり使われなくなりつつあります。FusionPCB、Elecrow、PCBWayなどが主流ですね。最近ではスイッチサイエンスもFusionPCBと連携してPCBサービスを展開しています。¥1000程度…

ユニクラフトに基板発注

ユニクラフトにPCBを発注しました。ElecrowとかFusionPCBとかP板高すぎもみたのですが、とりあえずお試しのユニクラフトで発注することにしました。初めてなのでとても怖いのですがね。 下の写真は基板分割方式を示します。3枚の基盤をパターンとレジスト抜…

銚子までお出かけ

銚子までお出かけしました。 朝は早めに出て朝食を食いました。¥500円から食えるところもまたいいですね。大盛りだとご飯が多いみたいですが朝食としてはそのままでいいと思います。写真には三色丼が写っています。周りの人も三色丼が多かった気がします。¥…

Elecrowのパネライズについて(私家翻訳

http://www.elecrow.com/blog/pcb-panelize/ 私家版翻訳です。いい加減です。 The PCB Panelize is only for the same PCB copies. you can panelize some copies in one PCB. PCBのパネライズは同じPCBにおいてのみです。 For example, If you have a PCB d…

時計の設計(7)(手の動きが。。)

最近寒くなってきました。風邪は要注意ですね。実際布団から出るのがとても大変です。実際に時計を作るようにして基板以外の部品は一式揃えました。部品点数はそんなに多くないのですがLEDの数は結構多いですね。ebayでは青色の0603(mil)サイズがかなり安い…

時計の設計(時刻カウントについて)

時刻のカウントは一般的な製品では多くがRTCを搭載しています。これはリアルタイムクロックと呼ばれていて中身はただのカウンタです。水晶発振子の発振回路が入っている場合が多いです。で、今回のマイコンは入ってません(爆

時計の設計(小さい版)

そろそろ時計掘りたいと思っても私は依頼ができないので友人に頼むしかありません。orz 2016年9月24日写真を入れ替えました。ネジの位置の修正です。 で、チップ部品の練習基板もあったほうがいいかなって思って設計しました。今度は50x50の中に無理やり入れ…

時計の設計(4)受信プログラムを考える

受信プログラム。。。うっ本プロジェクト最難関科目。。。では考えましょう。まずはCdSの特性とその利用です。CdSは反応時間が非常に長く(20-30ms)非常に扱いにくいです。それに加えてLCDは反応時間が同程度あります。なので立ち上がり立ち下がりが非常に遅…

時計の設計(3)

補正ページ 時計の部品を発注しました。あとで基板も発注します。 時刻調節方法について幾つかの案がありました。で、今回はCdS(光検知)を使ってiPhoneやPCなどから補正します。 具体的にはさっきのURLにアクセスし、スマホをかざすだけで補正できることを目…

時計の設計(2

結局ロゴはマークにしました。で、クリスタル発振子を32.768kにしてTMR1でカウントします。これで消費電力が大幅に下がりました。で、あとコンデンサの外形間違えてたので修正しました。これフットプリントがなくて作ったせいでお粗末なものに(ry まあ許…

時計の設計(1)(構想を練る)

[caption id="attachment_2171" align="alignnone" width="474"] 時計の3D表示[/caption] PCBのCADといえばKiCADですよね。うん。で、それ使って5x10(cm)以内で時計を設計したので記録。 KiCADって結構特別な操作感でレンダリングソフトでいうblenderみたい…

FM音源(もどき)dsPIC(続き)

オルゴールです。それっぽい音()が出ました。 いきなり解説ページということです。ハードはPCMPlayerとほぼ同じでモノラルである点だけ異なります。FM音源を2OPかつフィードバックなしで調節もなしというFM音源らしくない音源ですが、同時発音数は20オンを…

STM32 FLASHをEEPROM的に使う(2)

前回の続きです。STMのフラッシュを利用する時はロックを解除し一ページを消去、ブランクチェックの後に書き込みを実行、その後に照合をし、ロックをかけて完了でしたね。 今回はリンカスクリプトの解説をちょっとだけしたいと思います。リンカスクリプトと…

STM32 FLASHをEEPROM的に使う(1)

膨大なフラッシュを持つマイコンが今多くあります。そんなマイコンのフラッシュを使わないわけないですよね。 というわけでフラッシュの使い方を解説します。が、相変わらず雑ですので。まずマイコンはアドレス空間上にRAMやFlashがマッピングされています。…

NINJA

NINJAです。

HALってこう使うものだ(自称

図は汚いです。後の図はもっと綺麗なので。重要なのはどのようにしてHALを叩くのかです。 私はこのような形でHALを触っています。これはHALを直でユーザーが触るのだけは避けています。なぜなら変更があった時などに対応できなくなるからです。が、GPIOだけ…

HALの開発環境(2)

今回はmake,arm-none-eabi-gcc(長い),debugger, gitを入れましょう。Linux系には大抵makeは入ってますが、(gitも)でもコンパイラはないでしょうねでは入れていきましょう。

HALの開発環境

まさかeclipseなんて使うことないよね。今はエディターはemacs一択(宗教戦争ならぬEditor戦争) ということで開発環境についてのメモです。開発環境はエディター一本ですよ。そんなIDEなんて使ってこれどうするんだあれどうするんだプロジェクトぶっ壊れたgit…

STM32F1HALが強かった件について

くせ強すぎ あとあと解説を書こうと思ってたらなかなかペンが動かなかったけどさすがにもう書きます。 HALは(Hardware Absolute Layer だったっけ?)のryで、抽象化してくれます。これを使うことでベンダーに依存しない画期的なプログラムが書ける (^o^)/ 実…