組み込み技術を向上したい!!

でも組み込み以外にも手を出し始めました・・・

OpenCv Android Studio3.5 超個人的なメモ

Opencv4.1.1はAndroid Studio3.5では使えなかった。 4.1.0にすると取り敢えず画像表示とかは上手くできた。 4.x.xからはインポートというかプロジェクトの設定が簡単になっているようで、jni系の.soファイルとかはプロジェクトに入れなくて良くなったみたい…

GPS座標をGoogle先生に合わせる方法

GPSモジュールをいただいたので、適当に動かしてみた。いろいろ調べてみると、GPSモジュールはuartで、NMEA形式でデータを出力するやつやった。 1秒毎にいろいろデータを吐き出してくれるみたいで、必要な部分を任意に抜き取って利用する感じ。 RMCの情報を…

mbed uart はシステムが安定してから

単体のマイコンや、電源が安定している場合はあんまり関係ないかもやけど、Serial uartとかは、グローバルでは、ポインタで宣言して、安定してからnewした方が正常に動作するっぽい。 Serial seri(PC_4, PC_5); ってヘッダインクルードした直後にするんじゃ…

mbed rtc 消費電流とか

STMicroのNucleoシリーズ本当に安いね。趣味の電子工作に最適過ぎて、昔のコーディング環境(ハードウェア含む)とか高価で不親切でゴタゴタしてて代理店とか面倒くさくて闇しかなかったきもするし・・・。 NucleoのF072でrtcのバックアップ電流どれくらいか測…

SD1602HULBとかで、カーソル使うときの注意

秋月電子とかで売ってるSD1602HULBみたいなの液晶使うときに、カーソルを表示させたり、消したりしてたら、思った通りに表示されないことがあった。 SD1602HULBは4bit接続と8bit接続できるけど、今回は信号線減らしたいので、4bit接続をした。というか4bit接…

STマイクロがAtollicを買収していた

いつの間にやらSTマイクロがAtollicを買収していた。 AtollicはARMコア向けのIDE TrueSTUDIOを展開している。 無料版でしか試したことはないが、それなりに使えるツールだったと記憶している。 久しぶりに使ってみると、NUCLEOやDISCOなどのSTマイクロ系の開…

I2C_PullUp

I2C 組み込み系でハードウェア、ソフトウェアをいじっているとI2C通信は避けて通れない。少ない信号線で複数のICへ複雑な命令を送れるからだ。 信号線は基本的に2本で、それプラス電源の2本といった感じがスタンダード。 おそらくI2Cに慣れておくと一通りの…

回路図の書き方

わかりやすい回路が好き!! ものすごく個人的意見なのだが、回路図はブロック毎にわかりやすく書くべきだと思う。そのために重要になってくるのがGNDやVDDなどをひとつの線でつながず、シンボル(ラベル)で区切ることだと思う。 アナログでどうしてもGNDパ…

mbed-nucleo-flashwrite

mbed を使って,NUCLEO-F303ZEのフラッシュメモリにデータ保存する方法 基本的には HALを使えばうまくいくんですが,注意すべきことがあります.具体的にどこまでOKか調べたわけではありませんが,フラッシュメモリの領域は最後の方から使った方がよさそうで…

Unity の基本codeメモ

Sceneの中からGameObject見つけたいとき GameObject obj = GameObject.Find("obj_name"); GameObjectのComponentにアクセスしたいとき 例えば、オブジェクトのテキストを変更するなら GameObject obj = GameObject.Find("obj_name"); obj.GetComponent<Text>().tex</text>…

I2C 注意点

I2CはSCLとSDAの二本線で通信ができる(電源とGNDはいるから4本かな?)便利な規格だけど、少しだけ注意することがあるので、メモ。 信号線のプルアップ SCLとSDAの信号線は基本的にプルアップ必要。できれば、マスター側とスレーブ側で信号線の電圧ドロップが…

mbed+sd+fat

mbedでSDFileSystemを使って遊んでみたけど、少しハマった部分があったので、メモ。 mbedのweb上のIDEで インポート->ライブラリ で SDFileSystem で検索すればでてくるFatFileシステムだけど、サンプル上ではインスタンスを関数外で生成している(main関数の…

kivy+popup

kivyでは簡単にpopupを作れるんだが、popup内でyes/noのボタンを作るのにちょっとなやんだのでメモ。 from kivy.uix.popup import Popup でインポートして、公式サイト通りにやれば、 popup = Popup(title='Test popup', content=Label(text='Hello world'),…

mmap (C, Python exchange data)

毎度のことだけど、ほぼ個人的メモなので、もし参考にする人がいたら注意してね!!意外と見てくれている人がいるみたいなので。 Linuxなどまともに触れたことがなく、OSと言ってもFreeRTOS程度のものしかいじったことがなかった。。。 RaspberryPiで遊んで…

kivy Label halignについて

Label kivyでは簡単にtextを表示するLabelが作れる。 self.Label1 = Label(text="label", font_size = "18sp", size_hint=(.1, .1), pos_hint={'center_x': .5, 'center_y': .5}) halignというパラメータ?があって、leftってしたら、pos_hintを参照して、左…

RaspberryPi2 + kivy 日本語表示 とcheckbox

日本語表示できた!! 以前 RaspberryPiでkivyしたときに日本語表示ができないと悩んでいたが、理由が分かった。 とてもシンプルなことだったんだが、 # -*- coding: shift-jis -*- でエンコードを指定してやると良いらしい。 # -*- coding: utf-8 -*- ではダ…

RaspberryPi2 + kivy Slider

kivyに触れた次いでにSliderもやってみた。 まずはシンプルに触れてみる from kivy.base import runTouchApp from kivy.app import App from kivy.uix.button import Label, Button from kivy.uix.slider import Slider from kivy.config import Config from…

RaspberryPi2 + kivy ToggleButton... as RadioButton

先日RaspberryPi2でkivyを触ってみたので、その続き。 前回の内容は↓ sunnydays-k.hatenablog.com ToggleButtonを使ってみる kivyのButtonにはToggle機能を持ったものがあるらしい。ということで実際に使ってみた。 from kivy.base import runTouchApp from …

RaspberryPi2 + kivy

RaspberryPi公認のタッチディスプレイが発売されたので、入手したはいいが、何に使おうか・・・といった状況になっていたので、PythonのGUIフレームワーク?であるkivyに触れてみた。 Pi用kivyイメージを入手 kivypie.mitako.eu から目的にあったkivy Pieを入…

NUCLEO-F303RE

NUCLEO-F303RE 少し、NUCLEO-F303REをいじってみたので、使用感をメモ。 回路図の準備 www.st.com のSchematic Packあたりから回路図をダウンロード。MB1136.pdfというのが回路図。 電源まわりの確認 気になったのがCPUが熱くなること。いろいろ電源ラインが…

mbedからSW4STM32にエクスポートできたけど・・・

F7-Disco利用時のRTOS問題 mbedからSW4STM32にエクスポートできたけど、STM32F7の場合はRTOSを使っている場合は問題が起きる。 おそらくTOOLCHAIN_GCCフォルダ内のHAL_CM4.Sがcortex M4用だからと思う。 rtx->TARGET_CORTEX_MのRTX_Conf_CM.cとかにF7が入っ…

Raspberry Pi 2でOpenElecしてYouTube見まくった

家でラジコンになったり、録音機になったり、監視カメラになったりしていたRaspberry Pi2を最終的に家庭に役立つ形で収束させようと考えていると、結局OpenElecとして利用することで落ち着いた。 エンターテイメントって重要ね。最近子供が「YouTube見たい」…

mbed enable!! mbedが動かなかった理由がわかった!!

mbedアップデートが必要だった どうやらmbedライブラリ?のアップデートが必要だったようだ。mbedのコンパイラの画面上でプロジェクトを右クリックして、全てアップデートをクリックすると、動いてくれた!!STM32F7は比較的新しいからかな?? 「意味わからん…

STM32F746G-DISCOがmbedでうまく使えない!!だからやっぱりSW4stm32

mbedのすばらしさに感動してSTM32F746G-DISCOを衝動買いしてしまったが、mbed上で作ったバイナリファイルがうまく書き込めていないようで正常に動作しない・・・。ST-Linkのファームウェアアップデートなどは正常にできていると思うのだが・・・。 くやしい…

Ac6 System Workbench for STM32 について

以前Ac6の開発環境の設定についてあーだこーだいってしまったが、 sunnydays-k.hatenablog.com 下に貼ってるSTmicroのホームページからSTM32CubeF4とかSTM32CubeF7とかをダウンロードしてその中のサンプルプロジェクトを使ってビルドして勉強すると良さそう…

mbed-rtos(mbed osじゃないよ!)を使って、rtosを学んでみた

今まで組み込みOSはいろんな意味で避けてきたが、mbedのすばらしさに気がついたので、mbed rtosというものでいろいろ実験しながら勉強してみる。 STM32F429I-DISCO用のバイナリをmbedで作って、ST-Link Utilityにて書き込むという手順でやってみる。 >mbed r…

MSP430コードプロテクト

MSP430FR系とかはコードプロテクトがあるらしい。 以前、MSP430にコードプロテクトがないと悲しい気持ちでいたが、それはG2553を使っていたからのようだ。 sunnydays-k.hatenablog.com 今まで知らなかったので、TIさんに申し訳ない。 http://www.ti.com/lit/…

mbedをなめていた

mbedをなめていた。mbed Compilerが吐き出したbinファイルはmbedボード特有のbinだと思ってた。 実際はボードではなく、チップに依存するbinなので、他のボードでもチップ型番が同じなら使えるということだった。実際mbedでSTM32F429Iのbinを作成し、ST-Link…

Googleが人工知能エンジンのソースをpythonで無料公開したとのことで、pythonに触れてみた

Googleが人工知能エンジンのオープンソースをpythonで無料公開したということなので、phytonに少し触れてみようと思った。 よさそうなフレームワークを探していると、Djangoというフレームワークを見つけた。 qiita.com がとても詳しく説明してあるので、こ…

free() で失敗!! C言語

callocとかmallocとかで、メモリを確保して使用した後は解放するために、free()を使うことになるんだけど、 ここで、残念なミスをおかしていたので、メモしとく。 free()の引数はきちんと制御してないとダメ!! 今回やらかした過ちはfree()の引数が割り当て…