2014/10/28

16F628A XC8開発例 - LED点滅回路

概要

PIC16F628AとMPLAB XC8 C Compilerを使用した開発例として,LED点滅回路のプログラムを紹介します. 開発環境は下記のとおりです.

PIC PIC16F628A-I/P
MPLAB X IDE MPLAB X IDE v2.15
MPLAB XC8 MPLAB XC8 C Compiler v1.32
PICkit 2 MPLAB X IDEを使用して書込み
回路
回路図

回路構成はシンプルです. 電源はPICkit 2から5.0Vを供給しています. また,外部発振子としてセラロック 10MHzを使用しています. RB0には,電流制限用抵抗 330Ωを経由してLEDが接続されています.


回路図
回路部品

下表は使用部品表です.

番号 部品名 型番 数量 参考単価
U1 PICマイコン Microchip PIC16F628A-I/P 1 180円
X1 セラロック 村田製作所 10MHz 1 30円
LED1 LED 各社 各色 1 10円
R1 炭素皮膜抵抗 各社 1/4W 10kΩ 1 1円
R2 炭素皮膜抵抗 各社 1/4W 330Ω 1 1円
その他 リード線など 適量
プログラム
main.c

下記はソースファイル「main.c」です.参考になれば幸いです.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <xc.h>
 
// 16F628A
// CONFIG
#pragma config FOSC = HS
#pragma config WDTE = OFF
#pragma config PWRTE = ON
#pragma config MCLRE = ON
#pragma config BOREN = ON
#pragma config LVP = OFF
#pragma config CPD = OFF
#pragma config CP = OFF
 
#define _XTAL_FREQ 10000000 // 10MHz
 
void main(void)
{
    PORTA = 0x00;   // PORTAを初期化
    PORTB = 0x00;   // PORTBを初期化
    TRISA = 0x00;   // PORTAの入出力設定
    TRISB = 0x00;   // PORTBの入出力設定
 
    while(1){       // 無限ループ
        PORTB ^= 0x01;      // RB0をビット反転
        __delay_ms(500);    // 500ミリ秒の待ち時間
    }
}
2014/10/17

【鉄コレ】阪急電鉄 新1000系の動力化

今年も,日比谷公園で開催された「第21回 鉄道フェステイバル」で阪急電鉄の鉄道コレクションが先行発売されました. 今年は新1000系です.

Railfan Hankyu | 鉄道コレクション 阪急 新1000系 2両セット

先頭車1両と中間車1両の2両セットで3000円でした. この販売形態,購入者にとって良い点がないように感じます.なんとか改善して欲しいですね…. 2セット購入して4両編成を組成し,早速Nゲージ化(動力化)したので,作業記録をメモしておきます.

この動画は,動力ユニット組込みとカプラー交換を行った後に撮影したものです. パンタグラフは動画撮影後に購入し,交換しました.

動力車

動力は,中間車の1500形にメーカー指定のTM-12R(19m級A)を組込みました. 床下スペーサーは,動力ユニットに付属している床下スペーサーLを使用しました.

車両セットやTM-12Rには,阪急新3000系の台車に対応する台車枠が付属していません. 動力化にともなって不要となるトレーラー台車を加工し,動力台車の側面に貼付けることも出来ます. 私は加工技術に自信がないので,昨年購入した京阪3000系と同様に,TM-12Rに付属していたFS369(グレー)の台車枠で代用しました. 走らせて楽しむ分には,あまり気になりません.

製品紹介
鉄道コレクション TM-12R 鉄コレ動力19m級A
トミーテック (2014-04-27)
売り上げランキング: 61,854
トレーラー車

メーカー指定のNゲージ走行用パーツセット,TT-04R(グレー)を購入し,金属車輪に交換しました. 付属のウエイトも組込んでいます.

動力化しない1500形は,屋根パーツを車両セットに付属しているものと交換し,パンタグラフのない中間車(1600形,1050形,1150形または1650形タイプ)にしました. 屋根パーツの交換方法は,車両セットのパッケージに記載されています.


屋根パーツを交換した中間車(奥)
製品紹介
先頭車 運転台側のカプラー

先頭車の1000形は,TNカプラーに交換せず,付属のダミーカプラーのままです. <0337> 密連形TNカプラーなどに交換する場合は,TNカプラーやスカートの加工が必要になると考えられます.実車は併結運転をしないので,TNカプラーに交換する必要性は低いと判断しました.


先頭車 運転台側のダミーカプラー
妻面のカプラー

贅沢にも,ボディマウント伸縮式の<0337> 密連形TNカプラーを使用しました. この製品は6個入なので,丁度1箱使い切ります(1000形 1個x2両,1500形 2個x1両,パンタグラフのない中間車 2個x1両). トレーラー車については,台車とTNカプラーの一部が干渉するので,台車の一部(アーノルドカプラーのマウント部分)を切断しました.


加工前(左)と加工後(右)のトレーラー台車
製品紹介
TOMIX 0337 密連形TNカプラー (6個・SP・グレー)
トミーテック
売り上げランキング: 5,879
パンタグラフ

実車のパンタグラフはシングルアームで2ホーンタイプです. おそらく,KATO Assyパーツの「4371F モハネ285-201 パンタグラフ」か,GreenMaxの「5808 PT71B」あたりが適合品なのではないでしょうか…. KATO Assy 4371Fは入手が難しそうだったので,今回はGreenMax 5808 PT71Bを使用しました. 不要箇所(ヒューズボックスとも干渉する部分)をニッパで切断し,Gクリヤーで軽く接着しています.

製品紹介
Nゲージ 5808 PT71B (2基) (パンタグラフ)
グリーンマックス
売り上げランキング: 102,791
製品紹介

1500形のパンタグラフ
2014/10/07

Ubuntuにvimをインストール & カラースキーマ「molokai」の適用

Ubuntuにvimをインストールした際にカラースキーマを適用したので,作業手順をメモしておきます. 環境は,Ubuntu 14.04 LTS 32bitです.

  1. vimのインストール
  2. Ubuntuにaptを使用してインストール可能なvimは数種類あるようです.今回はその中でも標準的な(…?)vim-gnomeをインストールすることにしました. 下記コマンドで,既にインストール済みのパッケージをアップグレードしてから,vim-gnomeをインストールしました.

    1
    2
    3
    4
    ~$ sudo apt-get update
    ~$ sudo apt-get upgrade
    ~$ sudo apt-get install vim-gnome
    ~$ vim --version
  3. gitのインストール
  4. 今回はgitを使用してカラースキーマをダウンロードすることにしました.gitをインストールしていない場合は,下記コマンドを実行します.

    1
    2
    ~$ sudo apt-get install git
    ~$ git --version
  5. カラースキーマ「molokai」のダウンロード
  6. vimの表示を見やすくするために,カラースキーマを適用します. 今回は,定評があるらしい「molokai」を使用してみることにしました.

    1
    ~$ git clone https://github.com/tomasr/molokai

    ダウンロードしたファイルを既定のディレクトリにコピーします.

    1
    2
    ~$ mkdir -p ~/.vim/colors
    ~$ cp ./molokai/colors/molokai.vim ~/.vim/colors/
  7. .vimrcの編集
  8. 最後に,vimの設定ファイルである.vimrcを編集します. .vimrcをホームディレクトリに新規作成します.

    1
    ~$ vim .vimrc

    下記は.vimrcの記述例です. カラースキーマに関連する設定は,ハイライトした箇所(16行目および,19-22行目)です.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    "** システム設定 **
    set nocompatible
    set noswapfile                      "swpの作成無効化
    set nobackup                        "~の作成無効化
    set writebackup                     "上書き成功時に~を削除
    set clipboard+=unnamed,autoselect   "クリップボードを共有
     
    "** 文字コード設定 **
    set encoding=utf-8                  "vim
    set fileencoding=utf-8              "保存するファイル
    set fencs=iso-2022-jp,enc-jp,cp932  "開くファイル
     
    "** 表示設定 **
    syntax on                           "ハイライト表示
    set title                           "タイトル
    set number                          "行番号
     
    "** カラースキーマ設定 **
    set t_Co=256
    colorscheme molokai
    let g:molokai_original=1
    set background=dark
     
    set tabstop=4                       "タブ文字幅
    set shiftwidth=4                    "インデント幅
    set noexpandtab                     "挿入モードでタブ文字有効
    set smartindent
    set smarttab
     
    "** ファイル別設定 **
    filetype on
    autocmd FileType c,cpp,perl,html set cindent

    「molokai」適用すると,配色が変更されてソースコードが見やすくなりました.


    「molokai」適用後のvim実行例