2008年1月29日 星期二
2008年1月23日 星期三
錄音程式 Audacity
http://audacity.sourceforge.net/
The Free, Cross-Platform Sound Editor
Audacity is free, open source software for recording and editing sounds.
It is available for Mac OS X, Microsoft Windows, GNU/Linux, and other
operating systems. Learn more about Audacity... Also check our Wiki and
Forum for more information.
The latest release of Audacity is 1.3.4 (beta). Because it is a work in
progress and does not yet come with complete documentation or translations
into foreign languages, it is recommended for more advanced users. See New
Features in 1.3 for more information about the 1.3.x beta series.
For all users, Audacity 1.2.6 is a stable release, complete and fully
documented. You can have both Audacity 1.2.6 and 1.3.3 installed
simultaneously.
--
可下載相關 dll 檔 即可匯出成 mp3 啦
2008年1月16日 星期三
[C#] 跨執行緒作業無效: 存取控制項 'xxx' 時所使用的執行緒與建立控制項的執行緒不同
.NET 2005 的 Thread 比較嚴格 不能隨意存取其他 Thread 的資料
看網路上找到的資料聽說 .NET 2003 是 ok 的
其錯誤訊息:
跨執行緒作業無效: 存取控制項 'xxx' 時所使用的執行緒與建立
控制項的執行緒不同。
至於用來解決的方式有 BackgroundWorker 等相關技術
但由於我的目的是要變動 winform 裡頭的東西 不太ok
最後摸到一個方法:
http://www.purecs.net/thread/topic736_1.aspx
簡敘:
Step 1:
在 form 中請多添加以下這個 member
private delegate void InvokeUpdateState(string state); // 依需求
Step 2:
要透過 Thread 做動作的東西
如 event handler 會 call 到的那支 function
對那支 function 做一些調整
ex:
private void show( string k ){
if( this.form元件.InvokeRequired ){
this.Invoke(
new InvokeUpdateState(this.show) , new object[]{k}
);
}else{ // 原先寫好動作的部分
}
}
這樣就沒啥問題了
2008年1月7日 星期一
六招 gdb
我到現在還只會用 printf 真弱啊 XD 但這招陪伴我解決了大大小小的作業
雖然 OS 作業有做過 gdb kernel 但其實我不太會去改 kernel 就又忘光了
今天看 Kudo 稍微操作 還不賴
亦回想起嵌入式課程的介紹 有些呼應 越來越懂 gdb 的精神了
記一些簡單的指令就夠用一輩子了
1.# gcc -g test.c 這應該是加入 debug 資訊
2.# gdb a.out 出錯時就可以用了
3.(gdb) run 就給它 run 到出錯處
4.(gdb) br linenum 就是設中斷點
5.(gdb) display xx 顯示 xx 變數之值
6.(gdb) n 往下執行
這六招就很夠用了哩!!
以前都沒用過 -g 而修課時又很恍神 今天看大神用才終於融會貫通啊
簡單地說 就是先按 run 會跑到出錯的地方 因為有 debug 資訊
所以會顯示在第幾行出錯 此時就可以設中斷點 除此之外還可以設定要顯示的變數
接下來再 run 一次 就是重跑囉 就會停在中斷點 就可以看到資訊啦
[ESD] Cygwin & SkyEye 安裝紀錄
原由簡介:
1.原先課堂上所給的範例都是用 ARM Developer Suite (ADS) 來編譯環境
但不知為啥 想編 interrupt 都是失敗的
隨後問了修課的同學 他跑光碟的範例時
因為 ADS 出現錯誤訊息所以遲遲沒用 那個訊息如下
Missing END directive at end of file
解決方式(二選一):
a.其實只要點那個錯誤訊息 就會開啟指定的檔案
然後共有三個檔會顯示這個錯誤 當三個檔皆被打開就可以編過了
b.修改 2410init.s 將
GET option.a => GET option.o
GET memcfg.a => GET memcfg.o
GET 2410addr.a => GET 2410addr.o
並記得將檔案也改成 *.o 囉
而他也告訴我其他 lab 有人也用 ADS 但其 interrupt 效果一樣沒有
所以我打算使用 cygwin 了
2.使用 SkyEye 是很特別的理由 最主要的原因是沒有板子 orz
然後他可以模擬一些東西 我還在嘗試中 :P
Step 1: 安裝 cygwin http://www.cygwin.com/
http://www.cygwin.com/setup.exe
然後擔心會少裝東西的話 請全選
結果我發現灌完共 3.34 GB (有含 skyeye & arm-elf-gcc )
Step 2: 安裝 arm-elf-gcc
由於光碟有附 就直接擺到恰當的位置
將 arm-elf-tools-cygwin.tar.gz 擺至 X:\cygwin\usr\local 下
# cd /usr/local
# tar –zxvf arm-elf-tools-cygwin.tar.gz
即安裝完成
Step 3: 安裝 SkyEye http://www.skyeye.org/
下載位置 http://gro.clinux.org/projects/skyeye/ 請選 skyeye 類別
接著把下載到的東西擺到恰當的位置
將 skyeye_1_2_3_Rel.tar.bz2 擺至 x:\cygwin\home\user\
# tar -xvf skyeye_1_2_3_Rel.tar.bz2
# cd skyeye_1_2_3_Rel
# make
這樣應該就搞定了
記得 skyeye 擺在 ~\skyeye_1_2_3_Rel\binary\skyeye.exe
這樣要的工具都有了
2008年1月6日 星期日
2008年1月5日 星期六
[Windows] Office 2003 整合 SP3
Step 1:
將 Office 2003 正版光碟之映像檔擺在 F: 槽
Step 2:
cmd 0:
F:setup.exe /a
此時會問你序號 我就順便給了他
並且安裝在 D:\Office_2003_mix\ 中
Step 3:
下載 Office 2003 SP3 並使用解壓縮軟體將之打開
解縮縮到 D:\Office_2003_mix\sp3
Step 4:
開始進行整合
cmd 1:
msiexec /p d:\Office_2003_mix\sp3\MAINSP3.msp /a
d:\Office_2003_mix\PRO11.MSI shortfilenames=true /qb
(上兩列要和成一列使用)
cmd 2:
msiexec /p d:\Office_2003_mix\sp3\OWC11SP3.msp /a
d:\Office_2003_mix\OWC11.MSI shortfilenames=true /qb
(上兩列要和成一列使用)
經過上述即完成整合
可以將 D:\Office_2003_mix\sp3 此目錄刪除
Step 5:
此時 D:\Office_2003_mix 即為 Office 2003 with SP3
目錄大小約 720 MB
所以 我就只是簡單地壓縮起來 用7z的zip壓縮為 388 MB
未來要再製成 DVD 安裝片再說吧 :P
2008年1月2日 星期三
[ESD] arm-elf-tools with Cygwin
#### arm-elf-tools-cygwin.tar.gz @ Creator_V1.18 光碟中
#### 上網下載 cygwin @ http://www.cygwin.com/
Step 1 : 安裝 cygwin , 簡單的灌法就是全選 XD
Step 2 : 將 arm-elf-tools-cygwin.tar.gz 擺至 X:\cygwin\usr\local 下
Step 3 :
# cd /usr/local
# tar –zxvf arm-elf-tools-cygwin.tar.gz
即安裝完成