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

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

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'),…

Unity Playmaker (2)

transform.Translate 前回、Playmakerの Move Objectを使って Objectを移動させてみたが、コードで似たような動作をさせるにはこんな感じのスクリプトをCubeに入れてやればいい。 using UnityEngine; using System.Collections; public class TranslateCtrl …

Unity Playmaker (1)

Unity マルチプラットフォームのアプリを開発可能な環境で、スプラッシュスクリーン(アプリ起動時に表示されるロゴみたいなやつ)や、内部のコードアクセスなど細かいことを気にしなければ、無料で使える環境だ。 少し前まで180000円くらいで買い切りできる環…

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が熱くなること。いろいろ電源ラインが…

Visual Studio で python 使えるらしい。Djangoってみた。

Visual Studioで pythonが使えるらしい ということで、Visual Studio Communityを使って python をいじってみる。 www.visualstudio.com 必要なものはVisual Studioが教えてくれるからインストールしてね。 DjangoやFlaskのテンプレートがあるが、簡単に使い…

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()の引数が割り当て…

if文でのバグをほんの少し減らすかもしれない方法 @C言語

プログラムの基礎はわかってるつもりです。それでも一人で何万行、何十万行と書いていると思いもよらないバグに遭遇してしまいます。まぁ、ひとりじゃなくてもなるんでしょうけど。 そのバグを少しでも減らそうと日々努力しております。 もうご存知の方も居…

Ac6 System Workbench for STM32を使ってみた

Ac6 System Workbench for STM32というIDEがあって、文字通りSTM32向けの開発環境で、なんとコードサイズ無制限!! これは試さない手は無いと思い、軽く使ってみた。 結論からすると、いろいろ自分でできる人には使えるけど、これから始めようと思う人には不…

Web 素人が Ruby on Rails4 をいじってみた

何かWeb系に詳しくなりたい、というか作りたいもの作れるようになりたいと思ったので、Rails始めてみた。 主に、 railstutorial.jp にしたがってやっていこうと思う。 早速、問題となったのが、インストール。個別にRubyとRailsをダウンロードしてインストー…