2018年2月23日 星期五

raspberry pi SPI LCM 設定方法

樹莓派其中一種LCM介面是SPI
根據這篇文章指出
https://sudomod.com/forum/viewtopic.php?t=2312
步驟如下:
1.首先開啟樹莓派的SPI介面:使用命令列指令 sudo raspi-config



2.基本上使用  flexfb  跟 fbtft_device 這兩個核心外掛:基本指令如下:

sudo modprobe fbtft_device custom name=fb_ili9341  gpios=reset:25,dc:24,led:18 speed=16000000 bgr=1


3.在 /etc/rc.local 裡面添加三行,要加在 exit 0 這一行之前

sudo modprobe flexfb  width=480  height=320  regwidth=16 init=-1,0xb0,0x0,-1,0x11,-2,250,-1,0x3A,0x55,-1,0xC2,0x44,-1,0xC5,0x00,0x00,0x00,0x00,-1,0xE0,0x0F,0x1F,0x1C,0x0C,0x0F,0x08,0x48,0x98,0x37,0x0A,0x13,0x04,0x11,0x0D,0x00,-1,0xE1,0x0F,0x32,0x2E,0x0B,0x0D,0x05,0x47,0x75,0x37,0x06,0x10,0x03,0x24,0x20,0x00,-1,0xE2,0x0F,0x32,0x2E,0x0B,0x0D,0x05,0x47,0x75,0x37,0x06,0x10,0x03,0x24,0x20,0x00,-1,0x36,0x28,-1,0x11,-1,0x29,-3

sudo modprobe fbtft_device debug=3 rotate=0 name=flexfb speed=40000000 gpios=reset:25,dc:24

/usr/local/bin/fbcp&



第三步是用來執行開機自動執行核心模組掛載的動作
然後背景執行 fbcp 
fbcp 是一個framebuffer複製程式 用來將framebuffer內容複製起來然後透過SPI介面傳送到LCM的程式

fbcp需要下載原始碼並編譯與安裝
方法如下:

sudo apt-get install cmake
git clone https://github.com/tasanakorn/rpi-fbcp
cd rpi-fbcp/
mkdir build
cd build/
cmake ..
make
sudo install fbcp /usr/local/bin/fbcp


2018年2月20日 星期二

關於mbcWJFX的設計哲學

在2003那時候(根據原始碼中的註解)我打造了一個在palm上面運作的app
用途是在palm上面可以編輯與運行圖形化程式
是受到LabVIEW的啟發所做

當時是從一個簡單的palm範例開始
我記得那是一個塗鴉板程式範例
因為塗鴉板程式會運用palm的觸碰輸入與圖形之間的變化互動
因此用來實現這個專案十分洽當

palm os 是一種協調式多工
app主程式進來後有一個迴圈
在程式架構的設計上
不能有無窮迴圈或是等待迴圈在裡面
所有的事情必須切割成一片一片的時間

系統會回呼我們的事件處理副程式
static void AppEventLoop(void)
然後我們把要處理的所有事情安排在事件處理副程式中

這一個專案式我自發性的專案
在課餘時間做的
並且持續了一段時間
當時十分燒腦
而且呈現沉迷狀態

後來出社會工作後發現
這一次的專題訓練奠定了一個重要的基礎
因為後來開發生理監視器的時候
也是一個協調式多工
因此我在工作中引入許多當年累積的經驗與知識

特此為記