2023年8月17日 星期四

Reduce Petalinux Boot Time

 Set u-boot delay time to 0

$ petalinux-config -c u-boot

select

(4) delay in seconds before automatically booting

and set value to 0


Remove udhcpc service when boot

remove “ifup -a” in /etc/init.d/networking

after login, use command ifup -a to get IP address



2015年3月27日 星期五

Build and boot a mini os kernel with VirtualBox

Environment: Ubuntu 14.04

1.
Download gcc and binutils source code from GNU (gnu mirror sites)
Also, apt-get install libgmp3-dev libmpfr-dev libmpc-dev texinfo

2.
create directory $HOME/opt and $HOME/opt/cross

export PREFIX="$HOME/opt/cross"
export TARGET=i686-elf
export PATH="$PREFIX/bin:$PATH"

3.
mkdir build-binutils
cd build-binutils
../binutils-x.y.z/configure --target=$TARGET --prefix="$PREFIX" --with-sysroot --disable-nls --disable-werror
make MAKEINFO=true
make install MAKEINFO=true

4.
mkdir build-gcc
cd build-gcc
../gcc-x.y.z/configure --target=$TARGET --prefix="$PREFIX" --disable-nls --enable-languages=c,c++ --without-headers
make all-gcc
make all-target-libgcc
make install-gcc
make install-target-libgcc

Now, we have a i686-elf-as and i686-elf-gcc as cross compiler.

5.
Make a boot.s as multiboot header and make function call to kernel_main at kernel.c


6.
Make a kernel.c to print a "Hello World!" string to the screen

7.
Make a linker.ld to combine boot.o and kernel.o to myos.bin

8.
Make bootable iso image
First, make a grub.cfg file

menuentry "myos" {
multiboot /boot/myos.bin
}

Second, make a directory structure as below
<isodir>/boot/
<isodir>/boot/myos.bin
<isodir>/boot/grub/
<isodir>/boot/grub/grub.cfg

Finally, we use grub-mkrescue to make a myos.iso as below
 grub-mkrescue -o myos.iso isodir

References:
http://wiki.osdev.org/GCC_Cross-Compiler
http://wiki.osdev.org/Bare_Bones

2014年10月13日 星期一

QA – 反覆背誦的輔助程式

軟體名稱


QA

軟體資訊

v1.0 beta 繁體中文版

軟體特色

免費,免安裝,檔案小

開發原因

2008年年底的時候在學日文,因為五十音老是記不住,遮住課本來背,不方便
照順序背可以很流暢但是分開來看,又不認得了,所以才想寫一個可以自動隨機
問我問題的程式來背五十音

ChangeLog
1. 可載入CSV檔
2. 新增PAGE DOWN/UP及ENTER功能鍵方便編輯QA庫
3. 以Notepad印出測驗結果, 統計各題正確率

軟體功能

透過這個軟體你可以製作自己想要做的問題與答案,然後產生QA庫,程式載入QA庫後,
就可以反覆作問答練習。另外簡單寫了一個QA庫交流網頁讓大家可以分享自己的QA檔。

以下簡易的說明使用步驟
1. 編輯自己的QA庫
◎主選單 -> 編輯QA庫 -> 新增QA庫 -> 按『新增』來增加一題,輸入題目(Q),答案(A)及可能需要的提示(Tip)
◎重覆按『新增』來增加題庫,輸入完畢後按『儲存』
◎配合Page Down/Up及Enter鍵快速新增

 
2.開始作答並作答完畢後可以得知自己的正確率
◎主選單->載入QA庫->選取存檔的.qal/.csv檔->開始考我

 
◎按『結束』顯示這次答題的正確率

 

3.CSV檔
◎CSV檔可由Excel產生(目前只測試過Excel 2003)
Excel的第一欄為『問題』,第二欄為『解答』,第三欄為『提示』
存檔時, 選擇』另存新檔』,檔案類型選擇』CSV』格式存檔
◎CSV檔可由『記事本(notepad)』手動產生,其格式如下
a. 以’,'為分隔, 第1欄為『問題』,第2欄為『解答』,第3欄為『提示』
b. CSV檔中第1行第1欄為QA庫名稱
c. 『記事本(notepad)』存檔時,內容有中英文以外文字,請以UTF-8或UNICODE編碼存檔
  
軟體下載


附註

本著作依據 Creative Commons 姓名標示-非商業性-相同方式分享 授權條款為授權
http://creativecommons.org/licenses/by-nc-sa/2.5/tw/


FPGA/STM32 SPI 實驗

本實驗中,Nucleo H753ZI 當作 SPI Master,PYNQ-Z2 當作 SPI Slave。 使用SPI通訊協定傳送及接收8 Bytes。 腳位設定如下: Nucleo H753ZI 功能 PYNZ-Z2 PD14 CS W9 PA5 SCLK...