2015年9月29日 星期二

Raspberry Pi 顯示可用 SD 空間

在命令列下:
df -h

如下:

pi@raspberrypi:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
rootfs          7.2G  2.8G  4.1G  41% /
/dev/root       7.2G  2.8G  4.1G  41% /
devtmpfs        428M     0  428M   0% /dev
tmpfs            87M  404K   86M   1% /run
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           173M     0  173M   0% /run/shm
/dev/mmcblk0p1   56M   15M   42M  27% /boot



如果使用 8G SD 卡, 安裝後但只用了一半的空間:

pi@raspberrypi:~$ df -h
Filesystem      Size  Used Avail Use% Mounted on
rootfs          3.6G  2.8G  541M  85% /
/dev/root       3.6G  2.8G  541M  85% /
devtmpfs        428M     0  428M   0% /dev
tmpfs            87M  408K   86M   1% /run
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           173M     0  173M   0% /run/shm
/dev/mmcblk0p1   56M   15M   42M  27% /boot


可使用 sudo raspi-config ,選擇 "Expand FileSystem", 後重開機即可使用到 8G 的容量.


Energia : using hardware UART

Using LaunchPad MSP-EXP430G2
MCU: M430G2553

problem:
Serial Monitor can't get the data from LaunchPad

Solution:
  Connecting to the USB2.0 hub port instead of connecting to USB3.0 port. If it still not works, trying another USB2.0 hub port.


使用 LaunchPad 時, Serial Monitor 一直無法看到 UART 傳來的資料.
後來使用 USB2.0 hub 連接 LaunchPad , Serial Monitor 就可收到 UART 的資料.

2015年9月18日 星期五

ATMEGA328 port 的操作

原因: 使用 arduino 的 digitalWrite() 及 digitalRead() 的速度不夠快, 直接對 register 控制.
用到的 register:
   PORTD: set data output
   DDRD  : set input/output mode
   PIND    : read data input . if write 1 , the port will toggle.

方法:

-- 找出對應的 pin 腳 --
input pin:
  digital pin 6, PORTD6

output pin:
  digital pin 2, PORTD2

-- 設定 --
 output mode:
    DDRD |= (0x04);    // 1: output, 0:input
  
 input mode:
   DDRD &= (~0x40)
   PORTD |= (0x40);  // input pull-high

-- 讀值 --
   Data = PIND;     // read PORTD input data

ex: // 反向輸出
..
noInterrupts();
while(1){
    
    if(PIND & 0x04){
        PORTD &= (~0x40);
    }
    else{
        PORTD |= (0x40);
    }
}