記事一覧

正確に1Hzをクロックする

2013年06月11日(火)22時05分

33MHzのクロックから正確に1Hzをつくります。(分周)

クロックは負論理なので、立下りエッジをとっています。

クロックが33MHzということなので、33,000,000 / 2 = 16,500,000回ごとに0,1を交互に出力します。

したがって、立下りエッジが 16,500,000 - 1 = 16,499,999 になったときに出力を反転すればよいことになります。

ちなみに、(16499999)10*1 = (111110111100010100011111)2*2 で24bitです。

-- Divider 33MHz -> 1Hz
-- CLOCK: falling_edge 

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity DIVIDER1HZ is
    port(
        CLK : in  std_logic;
        DIV_CLK : out std_logic
    );
end DIVIDER1HZ;

architecture RTL of DIVIDER1HZ is
    signal DIV_COUNTER : std_logic_vector(23 downto 0);
    signal DIV_CLK_TMP : std_logic;

begin

    process(CLK)
    begin
    if (CLK'event and CLK = '0') then
        if (DIV_COUNTER = "111110111100010100011111") then -- 33M/2 - 1
            DIV_COUNTER <= (others => '0');
            DIV_CLK_TMP <= not DIV_CLK_TMP;
        else
            DIV_COUNTER <= DIV_COUNTER + 1;
        end if;
    end if;
    end process;
    
    DIV_CLK <= DIV_CLK_TMP;
    
end RTL;

*1:10進法の16499999という意味です。
*2:同様に2進法の111110111100010100011111です。

Ubuntu の Emacs で Google の日本語入力を使う

2012年09月12日(水)22時33分

Ubuntu に Google の日本語入力(Mozc)をインストールしたら、Emacs でも使用できるようにしてみます。

1.ibus.elのインストール

EmacsでiBus経由で日本語を入力できるようにするためにibus.elをインストールします。

パッケージがあるので、利用します。

$ sudo add-apt-repository ppa:irie/elisp
$ sudo apt-get update
$ sudo apt-get install ibus-el

2. ibus-modeを有効にする
XIMを無効化してキーイベントを横取りされないようにします。

そこで、Emacsをターミナルから起動する場合、
shell の設定ファイル(~/.bashrc)に以下を設定します。

XMODIFIERS=@im=none emacs

ランチャからEmacsを起動する場合は、
~/.Xresources
に以下を設定します。

Emacs*useXIM: false

設定を有効にするには、

xrdb ~/.Xresources

を実行するか、
一旦ログアウトしてXサーバを再起動します。

3. Emacs の初期化ファイルの設定
~/.emacs.d/init.el*1
に以下を設定します。

ポイントは、

  • Ctrl+SPACE が Emacs の Mark Set と競合している。
  • Ctrl+/ が Emacs の Undo と競合している。

ので、それぞれ競合を解除するのと、

  • カーソルの色を変化させること

です。

;; ibus-mode
(setq load-path 
      (append '("/usr/share/emacs/site-lisp/ibus")
      load-path))

(require 'ibus)
;; Turn on ibus-mode automatically after loading .emacs
(add-hook 'after-init-hook 'ibus-mode-on)
;; Use C-SPC for Set Mark command
(ibus-define-common-key ?\C-\s nil)
;; Use C-/ for Undo command
(ibus-define-common-key ?\C-/ nil)
;; Change cursor color depending on IBus status
(setq ibus-cursor-color '("limegreen" "red" "red"))
;; 日本語入力の切替 C-x C-j で切り替えます
(global-set-key "\C-x\C-j" 'ibus-toggle)

*1:Emacs21 までは初期設定ファイルが ~/.emacs または ~/.emacs.el でしたが、Emacs22 以降 ~/.emacs.d/init.el になりました。

Ubuntu に Google日本語入力(Mozc)をインストール

2012年09月12日(水)15時54分

Ubuntu では ibus を通して日本語入力を行うので、
ibus-mozc
をインストールする。

$ sudo aptitude update
$ sudo aptitude install ibus-mozc

Mozcの設定

ibus-mozc をインストールしたあと ibus を再起動して Mozc を利用できるようにする

$ killall ibus-daemon
$ ibus-daemon  -d -x &
$ ibus-setup

ここで、

「インプットメソッド」→「インプットメソッドの選択」→「日本語」→「Mozc」

を追加し
ファイル 78-1.png

Mozc を一番上にする
ファイル 78-2.png

Ubuntu に インストールした Emacs の設定:フォント

2012年09月12日(水)15時28分

Ubuntu の日本語標準フォントは、Takaoフォントだそうです。
そこで、Emacs を monospace(Takaoゴシックの別名)で表示してみます。

;; フォントの設定
(cond
 (window-system
  (set-default-font "monospace")
  (set-fontset-font (frame-parameter nil 'font)
    'japanese-jisx0208
    '("monospace" . "unicode-bmp"))))

Ubuntu に Emacs をインストール

2012年09月12日(水)14時16分

Ubuntu に Emacs をインストールします。
Emacs の最新バージョンは 24 ですが、Ubuntu のパッケージ化されているのは 23 です。

パッケージ化されているものをインストールする方が簡単なので、
Emacs23 をインストールします。

$ sudo aptitude update
$ sudo aptitude install emacs23

Ubuntu を最新の状態にする

2012年09月12日(水)13時57分

Ubuntu にインストールされているプログラム等を最新にしておきましょう。

GUI で行う方法ではなく、端末(termial)上でやってみます。

$ sudo apt-get update
$ sudo apt-get upgrade

apt-get は aptitude に置き換えるよう推奨されているそうなので、aptitude をインストールしておきましょう。

$ sudo apt-get update
$ sudo apt-get install aptitude

*注意:インストールする前に update するようにしましょう。

Virtual Box の フルスクリーンモード Guest Additions のインストールに失敗した場合

2012年09月12日(水)00時31分

Virtual Box のフルスクリーンモードを利用するには、Guest Additions をインストールしますが、インストールに失敗する場合、

Virtual Box のメニューから
「デバイス」→「CD/DVDデバイス」→「仮想ドライブからディスクを除去」してから Guest Additions をインストールします。
ファイル 74-1.png

Virtual Box の Ubuntu をフルスクリーンモードで表示する

2012年09月12日(水)00時00分

Virtual Box のフルスクリーンモード(右Ctrlキー+f )で Ubuntu を表示するには、Virtual Box に Guest Additions をインストールします。

Virtual Box から Ubuntu にログインしておいてから、
Virtual Box のメニューから
「デバイス」→「Guest Additionsのインストール」を選択します。
ファイル 73-1.png

「強制マウント解除」をクリックします。
ファイル 73-2.png

「実行する」
ファイル 73-3.png

すると、Ubuntu の terminal が立ち上がりインストールが始まります。
ファイル 73-4.png
「Press Return co close this window...」でリターンを押して終了です。
Ubuntu を再起動すると有効になります。

フルスクリーンモードにするには、右Ctrlキー+f です。

Virtual Box に Ubuntu をインストール

2012年09月11日(火)12時53分

Windows 環境を壊すことなく Ubuntu をインストールしてみます。

実行環境のインストール
PCに直接インストールしてもいいですが、手軽に環境を作成できる Virtual Box 上に Ubuntu をインストールしてみます。

1.Virtual Box をインストール
下記のリンクからホストOSに合ったファイルをダンロードしてインストールします。

https://www.virtualbox.org/wiki/Downloads

2.Ubuntu のインストールイメージのダウンロード
下記のリンクから Ubuntu のインストールイメージをダウンロードします。
また、Virtual Box に Ubuntu をインストールする方法が簡単に記載されていますので、参考にして下さい。

http://www.ubuntulinux.jp/download/ja-remix-vhd

3.Vrtual Box の設定
Ubuntu がとりあえずインストールできたら、ゲストOSの実行環境の設定をします。
ホストOSからどれだけリソースを利用するかです。

Virtual Box を起動して、
「設定」→「システム」→「マザーボード」のメインメモリを割り当てます。

ファイル 72-1.png

「設定」→「ディスプレイ」→「ビデオ」のビデオメモリを割り当てます。
また、「3Dアクセラレーションを有効」にチェックを入れておきます。

ファイル 72-2.png

c-mode のインデント幅(style)を変更する

2010年03月23日(火)21時53分

c-mode のインデント幅は デフォルトではスペース2個分で、
タブの替わりにスペースが入力されます。

C言語ではこの記法は好きではないので、
スペース4個分タブが入力されるようにします。

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; c-mode のインデントをスペース4個分のタブにする
(add-hook 'c-mode-common-hook
          '(lambda ()
             (c-set-style "k&r")
     (setq c-basic-offset 4)
     (setq indent-tabs-mode t)
     (setq tab-width 4)))