2018年3月27日 星期二

【Linux Tool】i2c-tools 的使用方法, i2cdetect 、 i2cdump、i2cset

i2c-tools是一套OpenSource,透過這個tools我們可以透過i2c 介面與 IC 去作溝通

我們可以到下面的網站去抓整包的SourceCode,然後再透過你的toolchain去編譯出你板子上可以使用的工具,而編譯的方式我這邊就不贅述,我們這篇著重在tool如何使用

Download Path:
https://i2c.wiki.kernel.org/index.php/I2C_Tools

====================================================================
編譯完成後你應該會有i2cdetect、i2cdump、i2cset 這幾個執行檔

i2cdetect  ===> 會列出 i2c的 Bus上所有的Device
i2cdump   ===> 會列出 Device上所有的 Register值
i2cset       ===> 可寫入到某個 Bus上的某個 Device上的 Register值


以下是實際操作的範例:
#./i2cdetect -l     ===> 列出總共有幾個 i2c Bus












從上圖我們可以知道,這台設備上總共有 0 ~ 8 個 I2C Bus


另外我們也可以使用 i2cdetect 來確認 Bus上有哪些 Device
#./i2cdetect -r -y 1   ===> 列出 Bus 1上的所有Device













從上圖我們可以知道,這台設備的 I2C Bus1上,有4個Device,位置分別在 0x37, 0x4a, 0x4b, 0x50


接著我們來使用i2cdump來把某個 Register的值列出來吧!
#./i2cdump -f -y 1 0x50  ===> 列出 Bus1 的 Device 0x50的 Register值














最後我們使用 i2cset來更改Register的值吧!
#./i2cset -y 1 0x50 0x36 0x05  ===> 寫入 Bus1 的 Device 0x50的 0x36 Register值 寫入 0x05

註: i2cset的用法:
#./i2cset -y <bus> <device> <register> <value>

2018年3月14日 星期三

讓 Ubuntu 可以透過網路 ssh登入

只需要安裝ssh server,安裝指令如下:
#apt-get install openssh-server

之後Ubuntu開機會自己啟動 ssh server ~

安裝完成之後也可以透過netstat 指令來確認 sshd有在port 22啟動
#netstat -tulpn | grep 22

如何讓Ubuntu 16.04 啟動時,直接進入文字模式,不進入X11

很簡單,只需要下面一行指令,他會幫你把link到 lightmd 的link檔案刪除,因此開機就直接進入文字介面
1. sudo systemctl disable display-manager


如果想要恢復,一開機就進入X11 GUI介面:
1. sudo ln -s -f /lib/systemd/system/lightdm.service /etc/systemd/system/display-manager.service


如果在文字模式下,想要暫時回到X11模式,可以先輸入:
1. /usr/sbin/lightmd