読者です 読者をやめる 読者になる 読者になる

PC買い替えたい

ブログ移行したにもかかわらず、全く更新してなかったのでネタを。

今使っている PC ですが、どれも5年近く (5年以上) 立っていてそろそろ買い替えたいです。スペック上は特に困ってない(というか、学生時代に比べて触る頻度がめっきり落ちた)のですが、パーツには寿命と言うものがあって、それに引っかかってこないかが不安要素になっています。

買い替えたいパーツは何個もあるのですが、まずは
1. MacBookPro Mid 2012
2. 自作PC (2011~)
の2つを変えたいですね。

自作PC自体は、ほぼ録画サーバ兼ストレージサーバ用途で、HDD さえ潤沢に積んでおけばある意味なんでも良いのですが、問題は Mac の方です。

かつて iMac '27 と MacBookAir '11 を使ってた時期があって、その時が一番便利だったなと思っているので、その頃に倣って2台体制に戻したいなと考えてます。

とはいえ、今は部屋が狭いので iMac '27 は置くのが厳しい。とはいっても今の Mac Mini はあまり買いたいとも思えないのでデスクトップ側が悩みどころです(流石に MacPro は予算オーバー)。

ラップトップは MacBook でいいかなと思ってます。気になるのは USB-C 1本しか無いところですが、用途としては特に困らないかなと思います。使用用途としては写真整理ですが、写真自体はカメラの Wifi 機能で転送してしまえば良いので。

置く場所とかの問題よりもっと致命的な話があって、PC 買い換える予算を作ってないってところもあるんですけどね。来年度こそは買い替えたいので予算を準備します(あと引っ越したい)。

今日はこのくらいで。

納車一年経ちました

納車から1年経ちました。

 

車を買ってよかった点がたくさんありまして、中でも特に大きいのが

行動範囲が比べものにならないほど広がった点があります。

よく「交通網が発達してるから車なんて入らない」言いますが、そんな物は嘘だと思ってます。
住んでるところが発達してても出かけたい場所がそうで無かったら、結局行かないですよね。
また、知らない街の交通網事情なんて調べないと分からないので、行き当たりばったりで
出かけるのは勇気がいると思います。

車ならとりあえずナビセットして行ってしまえばダイヤ気にせずどんどん進めちゃいますね。
(駐車場があるかどうかはちゃんと考えないとダメですが)

IMG_1020.jpg
IMG_8602.jpg
IMG_1081.jpg
IMG_8330_2.jpg

#気がつけば周りは ND ばかりに。。。いいなぁ。。。

 

また買った車がオープンカーな事も良かった点のひとつです。天気が良い時や、さらに星空が見えてるときに屋根を開けてドライブしてるときのあの開放感は一度経験するとやめられないです。気分が沈んでるときも一瞬で忘れてしまいます。

1年でおよそ 14000km だったので、月平均で見ると 1150km でしょうか。
最近仕事が忙しくなかなか帰してくれなくて、仕事終わりのドライブが無く
なってしまったり、休日も何かとどうでもいい理由付けて出かけなくなったり
で少しずつ乗る距離が減ってきてしまってます。。。
車に乗る・乗らないは別として、積極的におでかけしたいですね。とはいえ漫画・
アニメや、プログラム・電子工作にあてる時間もとりたいので中々悩みどころで
はあります。

納車時の目標は年間 15000km だったので、少し届きませんでした。2年目はこれを

再度目指してドライブしたいです (自転車も乗りたいのでバランス良く)

 

ちなみに、年間で車にかかった費用は、

  • 駐車場代 16万円
  • 保険 12万円
  • ガソリン 8万円
  • 高速代 10万円
  • 雑費 4万円

※ 軽自動車、燃費 20km/L(レギュラー)
とおよそ年間50万円くらいかかる計算です。
これを高く見るか安く見るかは皆さんのご判断で

年明け+ブログ引っ越しました

日記

今年もよろしくお願いします。


もうはてなダイアリーは古いかなぁと思っていたので、引っ越して
はてなブログに移行しました。

ダイアリーから記事をインポートしましたが、プログラムのソース
コードが入ってる記事が見にくい感じになってるので今後は貼り付
け方を変えようと思います。
#プログラミング系の記事書く書かないを含めて検討

一昨年の年末から zaim と、garmin connect でのアクティビ
ティトラッキングを始めていて、家計簿と運動(主に自転車)のト
ラッキングが出来るかぁなという感じです。
家計簿の方は食費がどうとか、旅行しすぎたとか、あるいは漫画・
BD 買いすぎたとかが一目で分かるようになったのでどこを切り詰
めないと行けないかなどの課題の洗い出しが容易になりました。
また一昨年車を買いましたが、それのおかげで家計には相当ストレス
がかかってます。それは別の記事で書こうと思います。

自転車は去年は 555.61km しか乗れてないようです。年間2000km
くらいは乗りたいなと思っていたのですが、1/4しか達成できてませ
んね。これはひどい
そろそろ garmin connect からワークアウトを設定して毎週自転
車に乗らざるを得ないような状況を作っておこうかなと思います。
そうでもしないと運動すらしなくなってしまいそうなので。


去年は良いこと以上に悪いことが多かった気がするので、
今年は悪いことが減って欲しいですね。
とはいえ仕事の方も暗雲が立ちこめてるのでしばらくは
良くないことが起きそうなので我慢が続きそうです。

 

適宜ガス抜きしながらやっていきたいと思います。

PSoC で C++ を使う その2

PSoC

前回の続きです。
PSoC5LP では C++ がわかったので、ラッパクラスが作れないか見てみました。

方針としては
1. PSoC Creator が自動生成する関数を struct でまとめる
2. ラッパクラスに (1) を登録して宣言する
3. read(), write() など、よく使うと思われる関数のみ対応
といったところです。
(割り込みは今のところ使う予定が無いので後回しです)

struct の宣言が面倒なのでマクロもあわせて作ってます。

#include <stdint.h>

/* --------------------------------------------------------------------------
 * PSoC SPIM Wrapper Class
 * --------------------------------------------------------------------------
 *
 *  Usage
 *
 *  pdev_spi_t dev = CREATE_PDEV_SPI_T(INSTANCE_NAME);
 *  PSoC_SPIM  spi(&dev);
 *
 *  spi.write(0xXX);
 *  while(!(spi.dev->ReadTxStatus() & spi.STS_BYTE_COMPLETE));
 *  spi.read();
 */

typedef struct {
  void    (*Start)(void);
  uint8_t (*ReadTxStatus)(void);
  uint8_t (*ReadRxStatus)(void);
  void    (*WriteTxData)(uint8_t);
  uint8_t (*ReadRxData)(void);
} pdev_spi_t;

#define CREATE_PDEV_SPI_T(instance_name) { \
  .Start        = instance_name ## _Start, \
  .ReadTxStatus = instance_name ## _ReadTxStatus, \
  .ReadRxStatus = instance_name ## _ReadRxStatus, \
  .WriteTxData  = instance_name ## _WriteTxData, \
  .ReadRxData   = instance_name ## _ReadRxData \
}

class PSoC_SPIM {
  public:
    const pdev_spi_t * const dev;
    static const uint8_t STS_SPI_DONE           = 0x01;
    static const uint8_t STS_TX_FIFO_EMPTY      = 0x02;
    static const uint8_t STS_TX_FIFO_NOT_FULL   = 0x04;
    static const uint8_t STS_BYTE_COMPLETE      = 0x08;
    static const uint8_t STS_SPI_IDLE           = 0x10;
    static const uint8_t STS_RX_FIFO_FULL       = 0x10;
    static const uint8_t STS_RX_FIFO_NOT_EMPTY  = 0x20;
    static const uint8_t STS_RX_FIFO_OVERRUN    = 0x40;

    PSoC_SPIM(pdev_spi_t * _dev) : dev(_dev)
    {
      if(dev->Start) dev->Start();
    }

    inline void    write(uint8_t data) { dev->WriteTxData(data);   }
    inline uint8_t read(void)          { return dev->ReadRxData(); }
};

PSoC で C++ を使う

PSoC

PSoCC++ が使えないか1年前からいろいろ模索していたのですが、最近の PSoC Creator (3.3) は特に気にせずとも C++ が使えると言うことが分かりました。そのメモを残しておきます。

1. main.c を main.cpp に rename
2. #include を extern "C" {} で囲む
サンプルコードはこんな感じです(Lチカ)。

#ifdef __cplusplus
extern "C" {
#endif
#include <project.h>
#ifdef __cplusplus
}
#endif

class DigitalOut {
  private:
    uint8 (*read)(void);
    void (*write)(uint8);
  public:
    DigitalOut(uint8 (*_read)(void), void (*_write)(uint8)) {
      read  = _read;
      write = _write;
    }
    operator uint8() { return (*read)(); }
    void operator =(uint8 _data) { (*write)(_data); }
};

int main()
{

    DigitalOut po(POUT_Read, POUT_Write);
    CyGlobalIntEnable; /* Enable global interrupts. */

    /* Place your initialization/startup code here (e.g. MyInst_Start()) */

    for(;;)
    {
        uint32 i;
        /* Place your application code here. */
        for (i=0; i<1000000; i++);
        po = ~po;
    }
}

/* [] END OF FILE */

後は普通にコンパイルして書き込めば動きました。

おそらく libstd++ は同梱されていないと思うので new やら delete は普通には使えないと思います(未確認)。
これで HOGE_Init() や HOGE_Write() といった関数から別れることが出来そうです。
組み込みとは言え、mbed の様にペリフェラル群もクラスで扱いたかったので、これで上手く隠蔽できるかなと。

納車

日記

ちょうど2ヶ月前に車を買いました。
ダイハツ コペン セロです。

以前から車欲しいと思いつつも、貯金も貯まって無かったりホントに乗りたい車も決め切れていなかった中、
ふらっとダイハツのディーラーにコペンローブが止まってるのを見かけて、よってみました。

内装見て、オープンになるところを見て、それで十分でした。
結局試乗しないまま成約しました。それが8月末の話。
納車まで3ヶ月待って、12月頭に納車でした。

当初は BRZ などのクーペを考えてましたが、値段と軽の割りによく走りそうな印象(試乗すべき)で完全にノックアウト。
納車後初運転となりましたが、期待を超えたフィーリングです。おまけにオープンカー。やっぱり乗ってて楽しい車が良いですね。

自転車でのサイクリングも良いですが、それ以上に行動範囲が広がる車でのドライブも良い物です。
これまでは自転車で行けないところは電車・飛行機などでしたが、電車のあまり走っていない所でも
気軽に行けるようになったのでじゃんじゃん走って見たいですね。

冬は(スタッドレスを履いているとは言え)運転がちょっと怖いので控え気味ですが、春頃になったらもっと遠いところへ行ってみたい物です。

しまなみ海道ツーリング

日記 ロードバイク

GWツーリングシリーズ第3弾です。


しまなみ海道+αを走ってきました。しまなみ海道自体も
以前走ったことがあって、今回で2回目だったりします。
しまなみ海道 2015/05/05-07 | Flickr


飛行機で輪行するのは初めてだったのでどうすれば良いのか
調べてみましたが、基本的には(電車とか)普通の輪行と一緒
の様です。貨物スペースも与圧されている様なので空気を抜
く必要はありません。ただ、リアディレイラーはちゃんと保
護すべきでした(ちょっと調節ネジが曲がっちゃった)。


今回は2泊3日(ツーリングは2日間だけ)の旅程で、広島空港か
らスタートして、2日で松山空港周辺まで向かうコースでした。
初日は広島空港-竹原-尾道、2日目は尾道-しまなみ海道-今治-
はまかぜ海道-松山、最終日はレンタカーで宇和島紫電改
示館まで行ったり。2日目は123kmくらい自転車で走ることになっ
たのでちょっと大変でした。


しまなみ海道は基本的に平坦な所が多く、登り(ほとんどは橋
の直前)も平均3%なのでそんなにきつくは無いです。道も自転
車専用通路があるので走りやすいです。ただし距離は75kmく
らいあります。今治・道後はまかぜ海道は道路があまり良くな
く、もう走りたくないかもです…。

IMGP7573
IMGP7858
IMGP7939



> 箱根湯本: 65km
> 伊豆大島: 70km
> しまなみ海道: 190km
> total: 325km

GW中に300km超走れました。一番辛かったのはスピードについて
行けなかった箱根湯本ツーリングでした。