2017-03-01から1ヶ月間の記事一覧

Arduino(Master)とmbed(Slave)でI2C通信する

注意点は、 Arduino はスレーブアドレスを7ビットで指定 mbedはスレーブアドレスを8ビットで指定 するというところ。 https://developer.mbed.org/questions/3712/KL46z-as-I2C-Slave/ (Arduinoで指定するアドレス) = (mbedで指定するアドレス) ÷ 2 にな…

2台のmbedでI2C通信する

master mbed LPC1769 #include "mbed.h" #define sda p28 #define scl p27 #define addr 0x0a i2c master(sda, scl); serial pc(usbtx,usbrx); int main() { char buff[2]; while(1) { master.read(addr,buff,2); pc.printf("%d, ",buff[0]); pc.printf("%d …

2台のArduinoでI2C通信する

https://www.arduino.cc/en/Tutorial/MasterReadermaster #include <Wire.h> int bytes; uint8_t hbyte; uint8_t lbyte; void setup() { Wire.begin(); Serial.begin(9600); } void loop() { Wire.requestFrom(8, 6); if (!Wire.available()) { } hbyte = Wire.read(</wire.h>…

VimのquickrunでClojureを設定する

let g:quickrun_config.clojure = { \ 'command': 'lein', \ 'exec': ['%c exec %s'], \}

Clojureスクリプトをターミナルで実行する

ここを参考に http://stackoverflow.com/questions/12064339/how-to-run-clj-file-as-a-script-using-leningenlein-exec プラグインを使う https://github.com/kumarshantanu/lein-exec~/.lein/profiles.clj に記載 {:user {:plugins [[lein-exec "0.3.6"]]}…

Androidで着信があった電話番号を補足する

http://stackoverflow.com/questions/13154445/how-to-get-phone-number-from-an-incoming-call

lighttableのショートカット設定

カルマンフィルタで定常ノイズを除去する

import matplotlib.pyplot as plt import math sigmaxs_hat_bar = [] # a priori sigmaxs_hat = [] # a posteriori sigmax_0 = 37.0 sigmaz_list = [10.0,50.0,100.0,1000.0] sigmaz = sigmaz_list[1] ks = [] # fin = open("master.csv").readlines() fin =…

カルマンフィルタの模式図

mbedでADCで取得した値をSPIでArduinoに送る

SPI Slave mbed LPC1114FN28 #include "mbed.h" SPISlave device(dp2,dp1,dp6,dp25); // mosi, miso, sclk, ssel Serial pc(USBTX, USBRX); AnalogIn ain(dp4); int main() { device.format(8,0); device.frequency(1000000); // uint8_t hbyte = 7; // uin…

LPC1114FN28のAD変換値をSPIでmbed LPC1768に送信する

0-5Vのスケールで計測したいが、mbedのADCでは3.3Vまでしか測れない5V->3.3Vの分圧抵抗をはさむ http://make.bcde.jp/circuit/5vから3-3vに変換する/ Slave #include "mbed.h" SPISlave device(dp2,dp1,dp6,dp25); // mosi, miso, sclk, ssel Serial pc(USBT…

mbed LPC1768とNucleoF401REでSPI通信する

master mbed LPC1768 #include "mbed.h" SPI spi(p5, p6, p7); // mosi, miso, sclk DigitalOut cs(p8); Serial pc(USBTX, USBRX); DigitalOut led(LED1); #define DTIME 0.005 int main() { cs = 1; spi.format(8,0); spi.frequency(1000000); led = 0; whi…

LPC1114FN28でSPI Slave動作

以下によれば、SSピンはdp25に設定する SPI SlaveではCSが内部SPIブロックで決められていることが分かりました。 具体的には、CSをdp25に割り当てるということ。 http://small-diy-life.blogspot.jp/2016/12/mbed-enable-lpc1114-fdh28fn28spi.htmlSPISlave…

2台のmbedでSPI通信する

master mbed LPC1768 #include "mbed.h" SPI spi(p5, p6, p7); // mosi, miso, sclk DigitalOut cs(p8); Serial pc(USBTX, USBRX); DigitalOut led(LED1); #define DTIME 0.005 int main() { cs = 1; spi.format(8,0); spi.frequency(1000000); led = 0; whi…

mbed LPC1114FN28のファームウェアのアップグレード

http://mag.switch-science.com/2014/05/26/update_firmware_on_lpc1114fn28/

NucleoF401REがMacでUSBシリアル通信できない問題

serialのダンプ結果が見れない https://developer.mbed.org/questions/61232/Problem-with-Nucleo-USBSerial-on-Mac-OS-/ しょうがないのでWindowsのTera termで確認する(追記1) Nucleoファームウェアのバージョンをアップグレードしたら通信できるように…

NucleoF401RE(Slave)のADC結果をSPIでArduino(Master)に送信する

まだ動いていない Nucleoのコード // Reply to a SPI master as slave #include "mbed.h" SPISlave device(PA_7, PA_6, PA_5, PA_4); // mosi, miso, sclk, ssel Serial pc(SERIAL_TX, SERIAL_RX); int main() { device.reply(0x03); // Prime SPI with firs…

2台のArduino MegaでSlaveのAD変換値をSPIでMasterに送信する

master #include <SPI.h> const byte btn = 12; // Master button digital I/O pin. const byte led = 13; // Master LED digital I/O pin. const byte cmdADC = 3; unsigned long nextMillis = 0; // Next millis() for master LED update. void setup() { Serial.</spi.h>…

2台のArduinoでSPI通信する

SPI.begin()はマスターにしか使えない。 スレーブは SPCR = (1 http://forum.arduino.cc/index.php?topic=184527.0 master #include <SPI.h> const byte btn = 12; // Master button digital I/O pin. const byte led = 13; // Master LED digital I/O pin. const b</spi.h>…

Clojureの利点

けっこういい感じ・REPL環境 インタプリタがある ・パッケージ依存解決のLeiningenがある ・LISP マクロが使える ・JVMで動く ・JITコンパイラで高速化 ・Swing GUIが使える ・Javaとの連携 ・マルチプラットフォーム ・Processingとの連携 ・Incanter(R的な…

ClojureからProcessingを使う

めちゃくちゃ面白い http://data-sorcery.org/2009/08/30/processing-intro/

ClojureでR-likeなグラフを描画する

Incanterがよい https://github.com/incanter/incanter

ANDをClojureで実装する

def AND(x1,x2): w1,w2,theta = 0.5,0.5,0.7 tmp = w1*x1+w2*x2 if tmp <= theta: return 0 else: return 1 (defn ADD [x1 x2] (let [w1 0.5 w2 0.5 theta 0.7 tmp (+ (* x1 w1) (* x2 w2))] (if (<= tmp theta) 0 1)))

IOモナド

Haskell IOモナド 超入門 http://qiita.com/7shi/items/d3d3492ddd90d47160f2

Haskellのメモ

http://qiita.com/7shi/items/1ce76bde464b4a55c143型(:型コンストラクタ) コンストラクタ(:データコンストラクタ) 型クラス data Color = Blue | Red | Green | White deriving Show main = do print Blue Colorが型 Blueがコンストラクタ Showが…

uArmをG-codeで操作する

適当なG-codeシリアル送信用フロントエンドがなかったので、これを作って使った https://github.com/shohei/MacRMLSenderbaudrateは115200G-codeのフォーマットが多少違うので注意 ・G1ではなくG0を使う ・頭に#1みたいに行番号をつける ・デフォル…

XbeeでArduinoとRaspberry piを通信させる

http://qiita.com/simukappu/items/7a7262736e3f80e389f2http://gist.github.com/shohei/5430972407822ab89ccbcf75615df1f5 #include <DHT.h> #include <DHT_U.h> #include <XBee.h> #include "DHT.h" #define DHTPIN 2 #define DHTTYPE DHT11 // Initialize XBee ZB client XBee xbe</xbee.h></dht_u.h></dht.h>…

ROSの基礎

Topic - rostopic Service - rosservice, rossrv Parameter - rosparamがある

Ubuntuのターミナルをカスケードで開く

http://askubuntu.com/questions/142128/open-windows-in-center-of-screenCompiz config settings managerをインストール sudo apt-get install compizconfig-settings-manager Window Management > Place Windows, enable it, and in "Placement Mode" => …

Marlinのキャリブレーションの自由度

9自由度ある https://github.com/MarlinFirmware/Marlin/issues/2159