Wednesday, January 31, 2007
Tuesday, January 30, 2007
CPLD/FPGA數位電路教學與設計網路資源與相關學術單位
CPLD/FPGA數位電路教學與設計
網路資源與相關學術單位
ICDIY積體電路術技專業網站 ICDIY 利用 Framework 的技術整合了目前
複雜的 IC 設計工具,提供網路使用者一個透過瀏覽器便可以輕鬆學習硬體
描述語言的互動式環境,包括:(1). 線上撰寫硬體描述語言Verilog 與 VHDL
(2). 線上即時模擬(3). 線上波形檢視
CPLD CookBook(程式設計大全) written by Peter Ashenden and converted to HTML by Gerd Kalkhoff (download zip-file of the cookbook)英文
A small Introduction to VHDL英文
Another small VHDL-Guide英文
Some Syntactical Elements of VHDL英文
Some simple Examples英文
Four Microprocessor Models英文
Other VHDL Resources 英文
ASICs Website This website is about ASICs or Application-Specific Integrated Circuits, which are a type of silicon integrated circuit.英文
VHDL Design Libraries英文
單晶片8051與VHDL討論區
1、國科會晶片中心 大陸ASIC中心
2、CIC & Altera 合作教育訓練中心
3、ALTERA 公司CPLD Datasheet與開發工具 英文
4、Xilinx 公司 FPGA Datasheet與開發工具英文 美商智霖 日本分公司(日文)
5、Lattice 公司 CPLD Datasheet與開發工具英文
6、ATmel 公司 CPLD Datasheet與開發工具英文
7、AcTel 公司 FPGA Datasheet 與開發工具英文
8、Agere Systems (formerly Lucent Microelectronics) FPGA products英文
9、Cypress Semiconductor FPGA and PLD/CPLD products英文
10、QuickLogic Corp. FPGA products 英文
FPGA CPU Exploring the design and implementation of custom processors and integrated systemsonchips using FPGAs.英文FPGA Information 線上教學FPGA links maintained by the University of Idaho.英文
NASA Digital Engineering Institute Dedicated to the design and use of programmable and quickturn technologies for space flight applications.英文
Virginia Tech Configurable computing research lab.英文
List of FPGA-based Computing Machines FPGA應用例Extensive list of FPGA systems.
11、陳慶逸的CPLD教學網站 VHDL FPGA/CPLD線上教學
12、CPLD/FPGA 學習教材 (僑高企業)13、雅普科技 Altera Xilinx FPGA/CPLD及單晶片微處理器實驗發展系統
14、虎尾技術學院電機工程系 教材、CPLD電路設計、 VLSI製作報告、教材等
15、彥陽科技有限公司 - 代理Lattice CPLD等產品
16、普誠國際CPLD開發工具 掌宇股份有限公司CPLD教學設備 CPLD/DSP組範例下載
17、益眾科技CPLD開發工具
18、長高科技CPLD開發工具
19、ChipCenter The Web's Definitive Electronics Resource
20、Chip123 - IC Design 中文入口網站 CHIP123
21、電子工程www.eettaiwan.com/ CPLD教學文件
22、CPLD Download Controllers
23、CPLD, FPGA The Programmable Logic Jump Station英文
24、CPLD數位發展實驗系統
25、OpenTech網路書店CPLD相關書籍
26、力浦電子CPLD開發工具
27、Programmable Logic Conferences英文
28、Programmmable Logic Devices by Lattice Semiconductor英文
29、Synplicity Products(FPGA)英文
30、Universal Device Programmers for Micros, EEROM's, CPLD's, PAL's, etc.英文
31、交通大學電力電子與運動控制實驗室-實驗教學模組、FPGA/CPLD發展系統等
32、清華大學積體電路研發中心.
33、交通大學資工系VLSI系統實驗室
34、清華大學電機系LARC實驗室
35、中興大學資訊系VLSI實驗室-各種CPLD/VLSI教學教材
36、中山大學電機系VLSI實驗室
37、台灣大學電機所CAD系統實驗室 VHDL實驗教材-Altera Max+Plus II FPGA 設計
38、國立成功大學電機系
39 、逢甲大學自動控制工程學系ASIC研究室
40 、東南技術學院 -積體電路佈線、可程式邏輯元件應用、電腦輔助電路設計等
41 、國立中興大學電機系42 、國立暨南大學電機系43 、國立交通大學電子系44 、私立淡江大學電機系 江正雄 (Chiang, Jen-Shiun)副教授 VHDL教學網45 、私立中原大學電機系46 、私立中華大學電機系47 、私立長庚大學電機系
48 、國立中山大學電機系49 、國立中央大學電機系50 、台灣科技大學電機系
51 、國立清華大學電機系52 、私立逢甲大學電機系53 、私立義守大學電機系 陳慶瀚(義守大學/電機系/機器智慧與自動化實驗室) 54 、私立輔仁大學電子系55 、大同工學院電機系
56 、國立中正大學電機系57 、國立東華大學電機所58 、台北科技大學電機系59 、私立大葉大學電機系60 、私立元智大學電機系
61 、中國文化大學電機系62 、華梵大學電子系
63、國立海洋大學電機系 數位訊號處理實驗室
64、VHDL online 教學網英文65、Universität Hamburg VHDL教學網 英文
66、可編程VHDL邏輯器件 (簡體字)
67、青草園VHDL教學網 (簡體字)
68、超韌派 - 單晶片程式設計與電子電路(8051/PIC/EMC/AVR/PLD及VHDL)
69、義守大學電子團隊 - 提供Verilog(硬體描述語言)簡介及原始碼下載。
70、VHDL'87 syntax VHDL'93 syntax VHDL-AMS syntax 英文
71、VHDL Language Guide 英文
72、Hardware Engineer's Guide to VHDLtutorial assumes no prior knowledge of HDLs 英文
73、1001 Tutorials ->VHDL Tutorials 英文
74、VHDL Tutorial 英文
75、An Introductory VHDL Tutorial 英文 FPGA and CPLD Tutorial英文
76、VHDL Verification Course 英文 General Device Instruments 英文
77、VHDL Technology Group 英文
78、VHDLSynth (1076.3) Home page 英文
79、VHDL International Users Forum [VIUF] 英文
80、 VLSI Design and Training 包含有ASIC, FPGA, CPLD, Programmable Logic based Designs with VHDL, Verilog and Finite State Machines based design methodology.英文
81、Electronics Workbench-Software for the design of electrical circuitry to be implemented on printed circuit boards and programmable logic devices, schematic capture, component database, SPICE simulation, FPGA/CPLD synthesis, design analysis, PCB layout and autorouting.英文
82、Texas Instruments PLDs 英文
83、Triscend Configurable System-on-Chip devices 英文
84、ST Microelectronics (formerly WSI) MCU peripherals + programmable logic 英文
85、ICT, Inc. PEELs 英文
86、MSA 2500 Programmable Logic Core (PLC)Adaptive Silicon
87、Actel varicore英文
88、LSI Logic LiquidLogic™英文
89、Integrated Circuit Technology Embedded PLD Technology and Embedded Programmable IP英文
90、Systolix pulsedsp英文
91、Leopard Logic, Inc.英文
92、PACT Corporation (multi-ALU array)英文
93、Elixent (multi-ALU array)英文
94、Xilinx Serial Configuration PROMs (EPROM, OTP)英文 Serial EPROM I2C&SPI
95、Altera Configuration EPROMs (EPROM, OTP)英文Serial EPROM I2C&SPI
96、Atmel FPGA Configuration Memories (E2PROM, 5V ISP)英文Serial EPROM I2C&SPI
97、Microchip Serial EPROM (EPROM, OTP)英文Serial EPROM I2C&SPI
98、FPGA Configurator Module英文Serial EPROM I2C&SPI
99、 VLSI Design and Training超大型IC設計與教學網站 英文
100、XESS CPLD/FPGA各種實驗板Develops and sells XILINX FPGA and CPLD reconfigurablelogic demo boards.英文
最新版Analog/Mixed-Signal FPGAs
101、Lattice Semiconductor ispPAC programmable analog circuits 英文
102、Zetex Semiconductors TRAC programmable analog circuits 英文
103、Anadigm FPAA field-programmable analog array 英文
104、Lattice Generic Digital Switch devices
105、I-Cube Field-Programmable Interconnect (FPIC)
106、國家晶片系統設計中心 (CIC) 線上討論區
107、國家晶片系統設計中心 (CIC) Xilinx Web
108、Xilinx University Resource Center
109、Xilinx University Program
110、Digilab, Inc.
111、Digilab XLA Board Users Manual
112、Digilab XLA Board Test Program
113、Digilab XLA Board Configure Program
114、IEEE 1364-1995 Verilog Language Reference Manual
115、IEEE 1076 VHDL Language Reference Manual
116、98'Spring, EE 4292 VLSI/CAD Design Lab (Verilog Teaching)
117、Xilinx Foundation Series 按鈕指令介紹
最新版Verilog Related Links
HomePage for Silos III (Verilog simulator)
Verilog Simulator,限制為30天免費全功能使用HomePage for synapticad(Verilog simulator)
ModelSim Evaluations(Verilog and VHDL simulator)
Synopsys University program
Verilog-2001 Information Page
Open Verilog International Web
Celia's Verilog & EDA
A alternate Verilog FAQ
comp.lang.verilog Verilog FAQs
Rajesh Bawankules's verilog homepage
Alternate Verilog FAQ
EVITA: Verilog/ VHDL toturial
Gerard's Personal Play Area Page
Student developed pages - Verilog Topics
Winning Edge Verilog
C to Verilog Transform
Project Veripage: free PLI resource
Some Verilog examples made by Actel
The RiSC-16 Architecture
SAL Home
Low Cost Tools
VBS: A verilog simulator under Linux
V2000 Project
Icarus Verilog A GPLed Verilog Compilation Syste
8051 VHDL Code 8051CHDL IP Core
ROM Initialization
Hamburg VHDL archive
中國大陸CPLD與單晶機相關網站
C51BBS論壇
21ICBBS論壇
电子产品世界
單晶機论坛
C51程式上載
單晶機俱樂部簡
崁入式單晶機開發論壇簡
崁入式開發國簡
Discovery of IC 簡
电子开关网
平凡的单片机
单片机学习网
广州单片机网
小龙的单片机
硬件时空技术BBS
电子网站大放送
双龙电子
周立功的单片
恒坚电器
利达尔电子
逍遥居
Monday, January 29, 2007
WM6 tools - populatedio.exe
populatedio.exe /bsmfile:x /image:x [/partindex] [/?] |
Parameters
- /bsmfile
-
Input file in the form of a build side manifest, .bsm.xml, file.
- /image
-
TFAT image to work on.
- /partindex
-
Index of the TFAT partition to work on. The possible values for this parameter are between -2147483648 and 2147483647. The default value is 1.
- /?
-
Optional. Usage information for this tool is displayed.
- Modify the original LPConfig.lcf file by using a binary file editor.
- Modify Customize_TFAT.bsm.xml to insert this new LPConfig.lcf file into the Tfat.dio file by using appropriate file names and directory paths.
- Run PopulateDIO.exe by using the appropriate command-line arguments.
- Flash the modified Tfat.dio file on the device by using a mechanism that the OEM provides.
..,
Sunday, January 28, 2007
Saturday, January 27, 2007
Verilog - inout bus for TestBench
D=(RD==0)?Dout:8'hZ;
TestBench
D=(WR==0)?Din:8'hZ;
http://www.inno-logic.com/tech-forum/viewtopic.php?p=172&sid=1c0d3d986db2d60b23201d258fcce985
I am having trouble writing data to a bi-directional port. I basically have a module with an inout port .
inout [7:0] ioMpData;
TestBench is
wire [7:0] ioMpData;
You have declared ioMpData, a bidrectional bus as wire. Now you use assign statmenet to assign values to this, when it is input else assign high-z.
assign ioMpData = (IN_MODE == 1) ? IN1[7:0] : 8'hz;
This aasigns IN1 to the io bus during inmode else puts in high impedence state.
module t;
reg [15:11] A;
reg WR;
reg RD;
reg PSEN;
reg ALE;
wire [7:0] D; //Bus//
...
reg Din;
reg Dout;
main m (.A(A),.WR(WR),.RD(RD),.PSEN(PSEN),.ALE(ALE),.D(D),...); //inout [7:0] D;//
// Enter fixture code here
assign #0 D=(WRDBus==0)?Din:8'hZ;
initial begin
...
end
always begin
...
end
endmodule // t
http://www.asic-world.com/verilog/assertions2.html
Ram Model
Overriding .BIB files - removing shortcuts from CE screen More options
..\cesysgen\oak\files\directx.bib(159): ceplayer.lnk $(_FLATRELEASEDIR)\ceplayer.lnk NK SH
..\cesysgen\oak\files\ie.bib(110): iesample.lnk $(_FLATRELEASEDIR)\iesample.lnk NK SH
from there respective files, and also remove the associated .DAT file entries
..\cesysgen\oak\files\directx.dat(16):Directory("\Windows\LOC_DESKTOP_DIR"):-File("Media Player.lnk", "\Windows\ceplayer.lnk")
..\cesysgen\oak\files\directx.dat(17):Directory("\Windows\LOC_PROGRAMS_DIR"):-File("Media Player.lnk", "\Windows\ceplayer.lnk")
In the spirit of Dan having had his coffee this morning, here is the PREMAKEIMG.BAT that solved my problem: (See http://msdn2.microsoft.com/en-us/library/ms900321.aspx for more info.)
@ECHO OFF
REM Does not support spaces in any path or file names
SET REMOVEFILES="iesample.lnk" "ceplayer.lnk"
IF EXIST "%1" GOTO CHECK
CD %_FLATRELEASEDIR%
FOR %%I IN (*.BIB *.DAT) DO CALL %0 %%I
GOTO END
:CHECK
FOR %%I IN (%REMOVEFILES%) DO FIND /C "%%~I" %1 && IF NOT ERRORLEVEL 1
GOTO REMOVE
GOTO END
:REMOVE
COPY /Y %1 %1.premakeimg
MOVE /Y %1 %1.premakeimgtmp
FOR %%I IN (%REMOVEFILES%) DO FIND /V "%%~I" < %1.premakeimgtmp > %1 &&
COPY /Y %1 %1.premakeimgtmp
DEL %1.premakeimgtmp
:END
Just before romimage is called in CE5.0, the build system has combined all of the .bib information into a single file ce.bib in the flat release directory. You can pre-process this file prior to running romimage if you add a PreRomImage.bat file into your FILES directory. We use this method to move some DLLs into the files section at the end of the bib file:
@echo off
echo PreRomImage.bat entry.
pushd %_FLATRELEASEDIR%
echo Moving net components to the file regions
findstr /I "mbridge.dll ipnat.dll fw6.dll tcpstk.dll cxport.dll ndis.dll ar5210.dll aumac.dll vmini.dll" ce.bib > ce_net.bib
findstr /I /v "mbridge.dll ipnat.dll fw6.dll tcpstk.dll cxport.dll ndis.dll ar5210.dll aumac.dll vmini.dll" ce.bib > ce_nonet.bib
copy /A ce_nonet.bib+ce_net.bib ce.bib
popd
echo PreRomImage.bat exit.
@echo on
jsMath: A Method of Including Mathematics in Web Pages
Wiki - Knowledge Base
Features
- Build your own knowledge base easily.
- Searchable knowledge base solutions indexed by specified keywords.
- Partition a separate knowledge base for end-users (separating them from technicians) with access only to simpler problems.
- Group solutions by topics and sub-topics to facilitate easier access.
- Access Most Popular and Most Recent solutions quickly using preset views.
Friday, January 26, 2007
SW - Xerces-C++
| ||||||
| Xerces-C++ comes packaged with sample applications that demonstrate salient features of the parser using simple applications written on top of the SAX and DOM APIs provided by the parser. Sample XML data files are provided in the samples/data directory. | ||||||
Fwd: FW: 影印新身份證須知
1.身分證號碼 (相信很多人都背了下來 )
2.身分證 背面下方條碼旁有一組號碼.(這做啥你知嗎 ?)
3.身分證 背面右上方有另一組號碼喔(眼睛睜大點看 )
現在告訴你~~~第2組是 空白身分證流水號.第3組是雷射膠膜編號 .
它有兩個用途 .除了用來控管空白證件與膠膜外.這3組號碼都是一體的.
萬一證件遺失重辦.號碼都換變動.....
重點來了~~~~~聽過信用卡背面末 3碼 別隨意告訴別人嗎?同樣道理..
如果有人仿造你 的證件 .是不會有號碼的....若要用你的身分證號碼辦理....電子帳號. 門號.一堆有 的沒的 ....沒這2組號碼也沒用的喔 .所以這2組號碼別讓人知道喔.. 影印時、記得∼
"把號碼遮蓋掉 !!"
SW - Simian - Similarity Analyser
Wednesday, January 24, 2007
Tuesday, January 16, 2007
Sunday, January 14, 2007
德國專家:牛奶會抵消茶的保健功能
喝茶有益健康是眾所周知的常識,因為茶葉中含有一種稱為類黃酮的抗氧化物。這種物質有助於血管擴張,從而降低人們患心臟病和中風的風險。此外,喝茶有助於預防某些癌症。然而,德國研究人員發現,如果在喝茶時加入牛奶,那麼茶的保健功效會大打折扣。
Saturday, January 13, 2007
Apple推出iPhone進攻MediaPhone市場
網上一直有關於iPod Video, iPhone的流言,大家都預計Apple會有新搞作衝擊市場.而在最近的MacWorld 2007中,Apple CEO Steve Jobs公佈了Apple最新產品: iPhone.
iPhone結合了多媒體播放,電話和電腦功能,和PocketPC的定位基本上完全相同。而它採用的是Mac OSX,配合自家製Safari瀏覽器和iPod多媒體播放程式。
和PocketPC Phone最大的不同在如iPhone只有一個功能鍵:「home鍵」。其他所有操作都在那3.5吋Multi-touch螢幕上進行。 順帶一提, Multi-touch螢幕有別如一般touch screen,能作一點或以上的觸控(例如把兩隻手指同時放再螢幕上移動,就可以放大/縮小圖片),十分方便。它亦不需使用觸控筆,全部操作只需要用手指。
上網方面,iPhone支援Wi-Fi (802.11b/g),可用Safari瀏覽器上網。Apple也和Google和Yahoo合作,在iPhone內置Google Map和支援Yahoo! Mail免費 Push Mail服務。iPhone亦設有Widgets程式,供用家瀏覽股市和天氣消息。
電話功能方面,iPhone以直接點擊連絡人作主要撥號方式,撥號話面也比Windows Media漂亮很多。此外,iPhone亦加強了短訊功能,以對話方式整理短訊,像即時對話一般,更加方便用家。
至於行事曆,連絡人等資料,則透過iTunes直接同步。以此推測,如果是Windows用家的話,就可以像PocketPC一樣,把資料儲存在Outlook裡。
iPhone擁有全新的操作方式,配合iPod的名聲,相信iPhone會對Microsoft的PocketPC市場做成極大壓力。 iPhone定價為4GB-$499美元,8GB-$599美元。將會在2007年6月在美國上市, 亞洲則要2008年。相信各位要拭目以待了。
匯1元 揪出詐騙人頭戶
http://www.hdgroup.com.tw/epaper/epaper_960112.html#p6
匯1元 揪出詐騙人頭戶
96.01.12(六)記者郭勝恩報導/聯合報
嘉義市黃姓男子曾經落入詐騙集團圈套,隨後只要上網看到「陷阱」,就匯1元並報案,讓帳戶成為警示戶,他還在網上留言如何反制;儘管詐騙集團來電威脅,他也不畏懼。
黃姓男子強調,到提款機操作時必須留意,匯1元絕對不能只按「1」,避免機器誤判把存款全部轉出;先看自己有多少存款,如果是5位數,一定要先按4個0,再按1,依此類推,然後向警方報案,讓對方花錢買來的人頭帳戶變成無用武之地的警示戶。
今年10月,29歲黃姓男子上網與自稱「小琪」女子聊天,2人相談甚歡後,對方表示想兼差援交,但強調必須先確認黃姓男子的身分和存款餘額。
黃姓男子匯了1元到對方指定的新竹國際商銀中壢分行楊姓女子帳戶,再向嘉義市警局第1分局報案;警方多次傳喚39歲楊姓女子均未到案,昨天依詐欺罪嫌將楊女函送法辦。
警方對於黃姓男子以1元反制詐騙集團的方式,認為應該大力推廣;黃姓男子說,先前曾經掉進詐騙集團所設陷阱,損失1萬多元,懊惱之餘向友人傾訴,2人覺得無所不在的詐騙集團實在可惡,決定讓詐騙集團「得不償失」。
黃姓男子指出,他和友人只要有空就上網,尋找以「美色」為釣餌的詐騙集團蹤影,和對方搭上線後,就以上述方式破解,再上網留言傳授如何反制,盡所能見一個砍一個。
SW -- 一台電腦變成兩台或更多
uddy B-680 是一個基於BeTwin技術包含軟硬體的整體解決方案,除了具有BeTwin完全相同之功能外,更省卻原有BeTwin需線上註冊之繁瑣步驟。Buddy B-680 可讓二到五個使用者共用電腦的資源註,所有使用者可以使用各自的工作站同時在原有的Windows® XP家用版/專業版或Windows® 2000專業版下執行工作;使用者能同時執行不同或相同的應用軟體;共用一台印表機和光碟機,甚至透過一條電話線、一個ISP帳號、一個數據機,即可獨立的在 Internet上瀏覽網頁,節省大量的成本。每一套Buddy B-680,需自備顯示器、PS/2鍵盤&PS/2滑鼠和USB音效/喇叭(選配)。
Friday, January 12, 2007
SW -- build speeds up
IncrediBuild is a development tool that dramatically speeds up Microsoft Visual Studio compilation and build time.
Supported IDEs:
* MS Visual Studio 6.0
* MS Visual Studio .NET
* MS Visual Studio 2005
* MS eMbedded Visual C++ 4.0
Additional Supported Compilers:
* Intel C++ Compiler for Windows (versions 7.0-9.1)
* MS eMbedded Visual C++ 4.0
* MS Xbox 360 XDK
Wednesday, January 10, 2007
Windows Mobile (PPC) verison list
- Windows Mobile 6.0 – Crossbow – not announced;
- Windows Mobile 5.0 – Magneto – May 10, 2005;
- Windows Mobile 2003 Second Edition – Ozone Update –March 24, 2005;
- Windows Mobile 2003 – Ozone – June 23, 2003;
- Pocket PC 2002 – Merlin – October 4, 2001;
- Pocket PC 2000 (Palm-size PC v2) – Rapier – April 19 2000;
- Palm PC v1.0/1.2 – Gryphon/Wyvern – January 8, 1998 (3 moths later Palm PC was renamed to Palm-size PC).
Tuesday, January 09, 2007
RF -- TX / RX IC/Module

单片无线收发芯片选型指南
无线收发芯片技术资料/应用文章
电台
短矩天馈系统/连接器选择
数传模块选择指南
开发板/开发工具
无线收发模块选择指南一
遥控开关选择指南
应用系统
无线收发模块选择指南二
MODEM芯片和数据通信芯片
CML公司芯片资料及应用
TI/CHIPCON公司芯片资料及应用
HIMARK公司芯片资料及应用
其它公司芯片资料及应用
NORDIC公司芯片资料及应用
MICREL公司芯片资料及应用
FREESCALE/MOTOROLA资料及应用
技术资料、技术文章
1、调制解调器MSM6882及其在无线数据通信中的应用
2、MSM7512B单片机远程接口技术设计
3、低成本无线耳机CC1000 RF收发IC之应用
4、面向无线产品设计的收发机nRF401
5、433/868/915MHz收发芯片nRF903
6、用nRF2401实现的高速无线测量系统
Monday, January 08, 2007
HW -- RS422 IC
DS92LV010A - Bus LVDS 3.3/5.0V Single Transceiver
Bus LVDS Signaling (BLVDS)
CompressionRatio 1:1
NumberTransmitter 1
NumberReceivers 1
TotalThroughput 155 Mbps
SupplyVoltage 3.3 Volt

RS422 IC => Digi-Key Catalog SG061 Page 865
SW -- Windows Embedded CE 6.0 Test Kit now available for download
There are also the following diagnostic tools available in the kit:
1. Application Verifier: Memory leak detection tool
2. CPUMon: CPU monitoring tool
3. Stress: Device and OS stressing tool
To learn more or to download the kit, click here. Version for Windows CE 5.0 of the kit (so you could try it in your good old Windows Mobile 5.0 device) is here.
smartphone -- Windows CE device driver signing to WM5
http://groups.google.com/group/microsoft.public.windowsce.platbuilder/browse_thread/thread/5e257e3d1cea1d9f?hl=en*
Pocket PC (General) Technical Articles
A Practical Guide to the Smartphone Application Security and Code Signing Model for Developers
http://msdn.microsoft.com/smartclient/default.aspx?pull=/library/en-us/dnppcgen/html/smartphone_security.asp
Authenticated Content Signing (ACS) for Microsoft Windows Mobile
http://www.verisign.com/products-services/security-services/code-signing/microsoft-smartphone-code-signing/index.html
String -- HOW TO:在各種字串型別之間轉換
Hello, World! (System::String)
Hello, World! (char *)
Hello, World! (wchar_t *)
Hello, World! (_bstr_t)
Hello, World! (CComBSTR)
Hello, World! (CString)
Hello, World! (basic_string)
_tcscpy(fn,theApp.m_lpCmdLine); //LPTSTR to TCHAR *//
http://forums.microsoft.com/MSDN-CHT/ShowPost.aspx?PostID=298437&SiteID=14
1、char*轉換成CString
若將char*轉換成CString,除了直接賦值外,還可使用CString::Format進行。例如:char chArray[] = "This is a test";或
char * p = "This is a test";LPSTR p = "This is a test";或在已定義Unicode應的用程式中TCHAR * p = _T("This is a test");或LPTSTR p = _T("This is a test");2、CString轉換成char*
CString theString = chArray;
theString.Format(_T("%s"), chArray);
theString = p;
若將CString類轉換成char*(LPSTR)類型,常常使用下列三種方法:
方法一,使用強制轉換。例如:CString theString( "This is a test" );方法二,使用strcpy。例如:
LPTSTR lpsz =(LPTSTR)(LPCTSTR)theString;CString theString( "This is a test" );需要說明的是,strcpy(或可移值Unicode/MBCS的_tcscpy)的第二個參數是 const wchar_t* (Unicode)或const char* (ANSI),系統編譯器將會自動對其進行轉換。
LPTSTR lpsz = new TCHAR[theString.GetLength()+1];
_tcscpy(lpsz, theString);
方法三,使用CString::GetBuffer。例如:CString s(_T("This is a test "));3、BSTR轉換成char*
LPTSTR p = s.GetBuffer();
// 在這裏添加使用p的代碼
if(p != NULL) *p = _T('\0');
s.ReleaseBuffer();
// 使用完後及時釋放,以便能使用其他的CString成員函數
方法一,使用ConvertBSTRToString。例如:#include方法二,使用_bstr_t的賦值運算符重載。例如:
#pragma comment(lib, "comsupp.lib")
int _tmain(int argc, _TCHAR* argv[])
{
BSTR bstrText = ::SysAllocString(L"Test");
char* lpszText2 = _com_util::ConvertBSTRToString(bstrText);
SysFreeString(bstrText); // 用完釋放
delete[] lpszText2;
return 0;
}_bstr_t b = bstrText;4、char*轉換成BSTR
char* lpszText2 = b;
方法一,使用SysAllocString等API函數。例如:BSTR bstrText = ::SysAllocString(L"Test");方法二,使用COleVariant或_variant_t。例如:
BSTR bstrText = ::SysAllocStringLen(L"Test",4);
BSTR bstrText = ::SysAllocStringByteLen("Test",4);//COleVariant strVar("This is a test");方法三,使用_bstr_t,這是一種最簡單的方法。例如:
_variant_t strVar("This is a test");
BSTR bstrText = strVar.bstrVal;BSTR bstrText = _bstr_t("This is a test");方法四,使用CComBSTR。例如:BSTR bstrText = CComBSTR("This is a test");或CComBSTR bstr("This is a test");方法五,使用ConvertStringToBSTR。例如:
BSTR bstrText = bstr.m_str;char* lpszText = "Test";5、CString轉換成BSTR
BSTR bstrText = _com_util::ConvertStringToBSTR(lpszText);
通常是通過使用CStringT::AllocSysString來實現。例如:CString str("This is a test");6、BSTR轉換成CString
BSTR bstrText = str.AllocSysString();
…
SysFreeString(bstrText); // 用完釋放
一般可按下列方法進行:BSTR bstrText = ::SysAllocString(L"Test");或
CStringA str;
str.Empty();
str = bstrText;CStringA str(bstrText);7、ANSI、Unicode和寬字元之間的轉換
方法一,使用MultiByteToWideChar將ANSI字元轉換成Unicode字元,使用WideCharToMultiByte將Unicode字元轉換成ANSI字元。
方法二,使用“_T”將ANSI轉換成“一般”類型字串,使用“L”將ANSI轉換成Unicode,而在託管C++環境中還可使用S將ANSI字串轉換成String*物件。例如:TCHAR tstr[] = _T("this is a test");方法三,使用ATL 7.0的轉換宏和類。ATL7.0在原有3.0基礎上完善和增加了許多字串轉換巨集以及提供相應的類,它具有如圖3所示的統一形式:
wchar_t wszStr[] = L"This is a test";
String* str = S”This is a test”;
其
中,第一個C表示“class”,以便於ATL
3.0宏相區別,第二個C表示常量,2表示“to”,EX表示要開闢一定大小的緩衝。SourceType和DestinationType可以是A、
T、W和OLE,其含義分別是ANSI、Unicode、“一般”類型和OLE字串。例如,CA2CT就是將ANSI轉換成一般類型的字串常量。下面是一
些示例代碼:LPTSTR tstr= CA2TEX<16>("this is a test");
LPCTSTR tcstr= CA2CT("this is a test");
wchar_t wszStr[] = L"This is a test";
char* chstr = CW2A(wszStr);結語
幾乎所有的程式都要用到字串,而Visual C++.NET由於功能強大、應用廣泛,因而字串之間的轉換更為頻繁。本文幾乎涉及到目前的所有轉換方法。當然對於.NET框架來說,還可使用Convert和Text類進行不同資料類型以及字元編碼之間的相互轉換。http://140.118.175.207/Discuz/upload/viewthread.php?tid=39&extra=page%3D1
Command Line Arguments -- C++ / VS2005
public:
static array^ GetCommandLineArgs ()
VS2005
TCHAR fn[MAX_PATH];
BOOL CDumpApp::InitInstance()
{
...
CDumpDlg dlg;
m_pMainWnd = &dlg;
{
// LPTSTR theApp.m_lpCmdLine;
_tcscpy(fn,theApp.m_lpCmdLine); //LPTSTR to TCHAR *//
}
INT_PTR nResponse = dlg.DoModal();
...
比較好是放在 xxDlg.cpp
TCHAR fn[MAX_PATH];
BOOL CDumpDlg::OnInitDialog()
{
_tcscpy(fn,theApp.m_lpCmdLine); //LPTSTR to TCHAR *//
ShowFileName();
...
Sunday, January 07, 2007
8051--VRS51L3074 FRAM-Enhanced High Performance 8051 MCU
Features
‧ 8051 High Performance Single Cycle Processor (Operation up to 40 MIPS)
‧ 8KB Nonvolatile FRAM (Ferroelectric Random Access Data Memory, In-System/ln-Application Programmable)
‧ 64KB Flash (Program Memory, In-System/ln-Application Programmable)
‧ 4K + 256 Bytes of SRAM (4K Bytes - Program Or Data Memory)
‧ JTAG Interface for FRAM/Flash Programming & Non-Intrusive Debugging/In-Circuit Emulation
‧ MULT/DIV/ACCU Unit including Barrel Shifter
‧ 56/40 General Purpose I/Os (64/44-Pin Versions)
‧ 2 Serial UARTs/2 Baud Rate Generators (16-bit)
‧ Enhanced SPI Interface (Fully Configurable Word Size)
‧ Fully configurable I2C Interface (Master/Slave)
‧ 16 External Interrupt pins/Interrupt on Port Pin Change
‧ 16-bit General Purpose Timer/Counters
‧ 3 Timer Capture Inputs
‧ 2 Pulse Width Counter Modules
‧ 8 PWM Controller Outputs with Individual Timers
‧ PWMs can be used as General Purpose Timers
‧ Precision Internal Oscillator
‧ Dynamic System Clock Frequency Adjustment
‧ Power Saving Features
‧ Power-On Reset/Brown-Out Detect
‧ Watchdog Timer

CVS -- CVSToys
CVSToys is a collection of companion tools for the Concurrent Versions System, better known as CVS. The biggest best and only toy we've got is Fresh CVS, a commit monitoring daemon which can keep a mirror of the repository or checked-out working copy up to date, and send out notifications by e-mail, on the web as HTML or RSS, or to a chat service such as IRC.
build -- BuildBot
http://buildbot.sourceforge.net/
http://buildbot.sourceforge.net/manual-0.7.5.html#Introduction
5.1.2 CVSToys - PBService
The CVSToys package provides a server which runs on the machine that hosts the CVS repository it watches. It has a variety of ways to distribute commit notifications, and offers a flexible regexp-based way to filter out uninteresting changes. One of the notification options is named PBService and works by listening on a TCP port for clients. These clients subscribe to hear about commit notifications.
The buildmaster has a CVSToys-compatible PBService client built in. There are two versions of it, one for old versions of CVSToys (1.0.9 and earlier) which used the oldcred authentication framework, and one for newer versions (1.0.10 and later) which use newcred. Both are classes in the buildbot.changes.freshcvs package.
power tools for build program
http://www.visualbuild.com/
Visual Build Professional - Supported Tools
http://www.kinook.com/VisBuildPro/thirdparty.html
Visual Build Professional Help
http://www.kinook.com/VisBuildPro/Manual/
Saturday, January 06, 2007
對比Windows和Linux兩系統的動態庫
作者:yuanyang 來源:linuxdiyf.com 發佈時間:2007.01.05
摘要:動態鏈結庫技術實現和設計程式常用的技術,在Windows和Linux系統中都有動態庫的概念,採用動態庫可以有效的減少程式大小,節省空間,提高效率,增加程式的可擴展性,便於模組化管理。但不同作業系統的動態庫由於格式 不同,在需要不同作業系統調用時需要進行動態庫程式移植。本文分析和比較了兩種作業系統動態庫技術,並給出了將Visual C++編制的動態庫移植到Linux上的方法和經驗。
1、引言
動態庫(Dynamic Link Library abbr,DLL)技術是程式設計中經常採用的技術。其目的減少程式的大小,節省空間,提高效率,具有很高的靈活性。採用動態庫技術對於升級軟體版本更加容易。與靜態庫(Static Link Library)不同,動態庫裏面的函數不是執行程式本身的一部分,而是根據執行需要按需載入,其執行代碼可以同時在多個程式中共用。
在Windows和Linux作業系統中,都可採用這種方式進行軟體設計,但他們的調用方式以及程式編制方式不盡相同。本文首先分析了在這兩種作業系統中通常採用的動態庫調用方法以及程式編制方式,然後分析比較了這兩種方式的不同之處,最後根據實際移植程式經驗,介紹了將VC++編制的Windows動態庫移植到Linux下的方法。
2、動態庫技術
2.1 Windows動態庫技術動態鏈結庫是實現Windows應用程式共用資源、節省記憶體空間、提高使用效率的一個重要技術手段。常見的動態庫包含外部函數和資源,也有一些動態庫只包含資源,如Windows字體資源文件,稱之為資源動態鏈結庫。通常動態庫以.dll,.drv、.fon等作為尾碼。相應的windows靜態庫通常以.lib結尾,Windows自己就將一些主要的系統功能以動態庫模組的形式實現。
Windows動態庫在運行時被系統載入到進程的虛擬空間中,使用從調用進程的虛擬地址空間分配的記憶體,成為調用進程的一部分。DLL也只能被該進程的線程所訪問。DLL的句柄可以被調用進程使用;調用進程的句柄可以被DLL使用。DLL模組中包含各種導出函數,用於向外界提供服務。DLL可以有自己的數據段,但沒有自己的堆棧,使用與調用它的應用程式相同的堆棧模式;一個DLL在記憶體中只有一個實例;DLL實現了代碼封裝性;DLL的編制與具體的編程語言及編譯器無關,可以通過DLL來實現混合語言編程。DLL函數中的代碼所創建的任何對象(包括變數)都歸調用它的線程或進程所有。
根據調用方式的不同,對動態庫的調用可分為靜態調用方式和動態調用方式。
(1)靜態調用,也稱為隱式調用,由編譯系統完成對DLL的載入和應用程式結束時DLL卸載的編碼(Windows系統負責對DLL調用次數的計數),調用方式簡單,能夠滿足通常的要求。通常採用的調用方式是把產生動態連接庫時產生的.LIB文件加入到應用程式的工程中,想使用DLL中的函數時,只須在源文件中聲明一下。 LIB文件包含了每一個DLL導出函數的符號名和可選擇的標識號以及DLL文件名,不含有實際的代碼。Lib文件包含的資訊進入到生成的應用程式中,被調用的DLL文件會在應用程式載入時同時載入在到記憶體中。
(2)動態調用,即顯式調用方式,是由編程者用API函數載入和卸載DLL來達到調用DLL的目的,比較複雜,但能更加有效地使用記憶體,是編制大型應用程式時的重要方式。在Windows系統中,與動態庫調用有關的函數包括:
LoadLibrary(或MFC 的AfxLoadLibrary),裝載動態庫。
GetProcAddress,獲取要引入的函數,將符號名或標識號轉換為DLL內部地址。
FreeLibrary(或MFC的AfxFreeLibrary),釋放動態鏈結庫。
在windows中創建動態庫也非常方便和簡單。在Visual C++中,可以創建不用MFC而直接用C語言寫的DLL程式,也可以創建基於MFC類庫的DLL程式。每一個DLL必須有一個入口點,在VC++中,DllMain是一個缺省的入口函數。DllMain負責初始化(Initialization)和結束(Termination)工作。動態庫輸出函數也有兩種約定,分別是基於調用約定和名字修飾約定。DLL程式定義的函數分為內部函數和導出函數,動態庫導出的函數供其他程式模組調用。通常可以有下面幾種方法導出函數:
採用模組定義文件的EXPORT部分指定要輸入的函數或者變數。
使用MFC提供的修飾符號_declspec(dllexport)。
以命令行方式,採用/EXPORT命令行輸出有關函數。
在windows動態庫中,有時需要編寫模組定義文件(.DEF),它是用於描述DLL屬性的模組語句組成的文本文件。
2.2 Linux共用對象技術
在Linux作業系統中,採用了很多共用對象技術(Shared Object),雖然它和Windows裏的動態庫相對應,但它並不稱為動態庫。相應的共用對象文件以.so作為尾碼,為了方便,在本文中,對該概念不進行專門區分。Linux系統的/lib以及標準圖形介面的/usr/X11R6/lib等目錄裏面,就有許多以so結尾的共用對象。同樣,在Linux下,也有靜態函數庫這種調用方式,相應的尾碼以.a結束。Linux採用該共用對象技術以方便程式間共用,節省程式佔有空間,增加程式的可擴展性和靈活性。Linux還可以通過LD-PRELOAD變數讓開發人員可以使用自己的程式庫中的模組來替換系統模組。
同Windows系統一樣,在Linux中創建和使用動態庫是比較容易的事情,在編譯函數庫源程式時加上-shared選項即可,這樣所生成的執行程式就是動態鏈結庫。通常這樣的程式以so為尾碼,在Linux動態庫程式設計過程中,通常流程是編寫用戶的介面文件,通常是.h文件,編寫實際的函數文件,以.c或.cpp為尾碼,再編寫makefile文件。對於較小的動態庫程式可以不用如此,但這樣設計使程式更加合理。
編譯生成動態連接庫後,進而可以在程序中進行調用。在Linux中,可以採用多種調用方式,同Windows的系統目錄(..\system32等)一樣,可以將動態庫文件拷貝到/lib目錄或者在/lib目錄裏面建立符號連接,以便所有用戶使用。下面介紹Linux調用動態庫經常使用的函數,但在使用動態庫時,源程式必須包含dlfcn.h頭文件,該文件定義調用動態鏈結庫的函數的原型。
(1)_打開動態鏈結庫:dlopen,函數原型void *dlopen (const char *filename, int flag);
dlopen用於打開指定名字(filename)的動態鏈結庫,並返回操作句柄。
(2)取函數執行地址:dlsym,函數原型為: void *dlsym(void *handle, char *symbol);
dlsym根據動態鏈結庫操作句柄(handle)與符號(symbol),返回符號對應的函數的執行代碼地址。
(3)關閉動態鏈結庫:dlclose,函數原型為: int dlclose (void *handle);
dlclose用於關閉指定句柄的動態鏈結庫,只有當此動態鏈結庫的使用計數為0時,才會真正被系統卸載。
(4)動態庫錯誤函數:dlerror,函數原型為: const char *dlerror(void); 當動態鏈結庫操作函數執行失敗時,dlerror可以返回出錯資訊,返回值為NULL時表示操作函數執行成功。
在取到函數執行地址後,就可以在動態庫的使用程式裏面根據動態庫提供的函數介面聲明調用動態庫裏面的函數。在編寫調用動態庫的程式的makefile文件時,需要加入編譯選項-rdynamic和-ldl。
除了採用這種方式編寫和調用動態庫之外,Linux作業系統也提供了一種更為方便的動態庫調用方式,也方便了其他程式調用,這種方式與Windows系統的隱式鏈結類似。其動態庫命名方式為“lib*.so.*”。在這個命名方式中,第一個*表示動態鏈結庫的庫名,第二個*通常表示該動態庫的版本號,也可以沒有版本號。在這種調用方式中,需要維護動態鏈結庫的配置文件/etc/ld.so.conf來讓動態鏈結庫為系統所使用,通常將動態鏈結庫所在目錄名追加到動態鏈結庫配置文件中。如具有X window窗口系統發行版該文件中都具有/usr/X11R6/lib,它指向X window窗口系統的動態鏈結庫所在目錄。為了使動態鏈結庫能為系統所共用,還需運行動態鏈結庫的管理命令./sbin/ldconfig。在編譯所引用的動態庫時,可以在gcc採用 –l或-L選項或直接引用所需的動態鏈結庫方式進行編譯。在Linux裏面,可以採用ldd命令來檢查程式依賴共用庫。
3、兩種系統動態庫比較分析
Windows和Linux採用動態鏈結庫技術目的是基本一致的,但由於作業系統的不同,他們在許多方面還是不盡相同,下面從以下幾個方面進行闡述。
(1)動態庫程式編寫,在Windows系統下的執行文件格式是PE格式,動態庫需要一個DllMain函數作為初始化的人口,通常在導出函數的聲明時需要有_declspec(dllexport)關鍵字。Linux下的gcc編譯的執行文件默認是ELF格式,不需要初始化入口,亦不需要到函數做特別聲明,編寫比較方便。
(2)動態庫編譯,在windows系統下面,有方便的調試編譯環境,通常不用自己去編寫makefile文件,但在linux下面,需要自己動手去編寫makefile文件,因此,必須掌握一定的makefile編寫技巧,另外,通常Linux編譯規則相對嚴格。
(3)動態庫調用方面,Windows和Linux對其下編制的動態庫都可以採用顯式調用或隱式調用,但具體的調用方式也不盡相同。
(4)動態庫輸出函數查看,在Windows中,有許多工具和軟體可以進行查看DLL中所輸出的函數,例如命令行方式的dumpbin以及VC++工具中的DEPENDS程式。在Linux系統中通常採用nm來查看輸出函數,也可以使用ldd查看程式隱式鏈結的共用對象文件。
(5)對作業系統的依賴,這兩種動態庫運行依賴於各自的作業系統,不能跨平臺使用。因此,對於實現相同功能的動態庫,必須為兩種不同的作業系統提供不同的動態庫版本。
4、動態庫移植方法
如果要編制在兩個系統中都能使用的動態鏈結庫,通常會先選擇在Windows的VC++提供的調試環境中完成初始的開發,畢竟VC++提供的圖形化編輯和調試介面比vi和gcc方便許多。完成測試之後,再進行動態庫的程式移植。通常gcc默認的編譯規則比VC++默認的編譯規則嚴格,即使在VC++下面沒有任何警告錯誤的程式在gcc調試中也會出現許多警告錯誤,可以在gcc中採用-w選項關閉警告錯誤。
下面給出程式移植需要遵循的規則以及經驗。
(1)儘量不要改變原有動態庫頭文件的順序。通常在C/C++語言中,頭文件的順序有相當的關係。另外雖然C/C++語言區分大小寫,但在包含頭文件時,Linux必須與頭文件的大小寫相同,因為ext2文件系統對文件名是大小寫敏感,否則不能正確編譯,而在Windows下面,頭文件大小寫可以正確編譯。
(2)不同系統獨有的頭文件。在Windows系統中,通常會包括windows.h頭文件,如果調用底層的通信函數,則會包含winsock..h頭文件。因此在移植到Linux系統時,要註釋掉這些Windows系統獨有的頭文件以及一些windows系統的常量定義說明,增加Linux都底層通信的支援的頭文件等。
(3)數據類型。VC++具有許多獨有的數據類型,如__int16,__int32,TRUE,SOCKET等,gcc編譯器不支援它們。通常做法是需要將windows.h和basetypes.h中對這些數據進行定義的語句複製到一個頭文件中,再在Linux中包含這個頭文件。例如將套接字的類型為SOCKET改為int。
下面給出程式移植需要遵循的規則以及經驗。
(1)儘量不要改變原有動態庫頭文件的順序。通常在C/C++語言中,頭文件的順序有相當的關係。另外雖然C/C++語言區分大小寫,但在包含頭文件時,Linux必須與頭文件的大小寫相同,因為ext2文件系統對文件名是大小寫敏感,否則不能正確編譯,而在Windows下面,頭文件大小寫可以正確編譯。
(2)不同系統獨有的頭文件。在Windows系統中,通常會包括windows.h頭文件,如果調用底層的通信函數,則會包含winsock..h頭文件。因此在移植到Linux系統時,要註釋掉這些Windows系統獨有的頭文件以及一些windows系統的常量定義說明,增加Linux都底層通信的支援的頭文件等。
(3)數據類型。VC++具有許多獨有的數據類型,如__int16,__int32,TRUE,SOCKET等,gcc編譯器不支援它們。通常做法是需要將windows.h和basetypes.h中對這些數據進行定義的語句複製到一個頭文件中,再在Linux中包含這個頭文件。例如將套接字的類型為SOCKET改為int。
(7)其他一些需要注意的地方
程式設計結構分析,對於移植它人編寫的動態庫程式,程式結構分析是必不可少的步驟,通常在動態庫程式中,不會包含介面等操作,所以相對容易一些。
在Linux中,對文件或目錄的許可權分為擁有者、群組、其他。所以在存取文件時,要注意對文件是讀還是寫操作,如果是對文件進行寫操作,要注意修改文件或目錄的許可權,否則無法對文件進行寫。
指針的使用,定義一個指針只給它分配四個字節的記憶體,如果要對指針所指向的變數賦值,必須用malloc函數為它分配記憶體或不把它定義為指針而定義為變數即可,這點在linux下面比windows編譯嚴格。同樣結構不能在函數中傳值,如果要在函數中進行結構傳值,必須把函數中的結構定義為結構指針。
路徑標識符,在Linux下是“/”,在Windows下是“\”,注意windows和Linux的對動態庫搜索路徑的不同。
編程和調試技巧方面。對不同的調試環境有不同的調試技巧,在這裡不多敘述。
5、結束語
本文系統分析了windows和Linux動態庫實現和使用方式,從程式編寫、編譯、調用以及對作業系統依賴等方面綜合分析比較了這兩種調用方式的不同之處,根據實際程式移植經驗,給出了將VC++編制的Windows動態庫移植到Linux下的方法以及需要注意的問題,同時並給出了程式示例片斷,實際在程式移植過程中,由於系統的設計等方面,可能移植起來需要注意的方面遠比上面複雜,本文通過總結歸納進而為不同作業系統程式移植提供了有意的經驗和技巧。
RoboRaptor (機械 雷霸龍)
| Video showing how Wowwee Robotics RoboRaptor moves | |
Google 機械 雷霸龍
http://video.google.com/videoplay?docid=-3417206792414842045&q=RoboRaptor
Media Player --foobar --audio player
結論:foobar>>iTunes>musicmatch>>RealPlayer>>jetAudio>>
簡單說明一下設定的方法…
點選 foobar2000 v.0.8.2 的工具列中的 Foobar2000 => Preference
1. 在「Playback」=> 「DSP Manager」,將「Resample(SSRC)」加入
2. 在「Playback」=> 「DSP Manager」=>「Resampler」,將「Slow mode」勾選
3. 在「Playback」=> 「Output」,將「Output method」選擇「Kernel Streaming」
註:正確的說法應該是SRC(sample rate conversion),指的是當CD 和大部分 MP3 在實際輸出時會被自動轉換成 48khz 才播放(原本可能為 44.1khz, 甚至 96khz), 而這個轉換的過程會造成數位失真, 播放出來的音質會比播原本是 48khz 的檔案差…(摘自平民 Soundcard 音質提升法)
一打开 foobar2000, 你会发现它连 play, stop 这些基本的按钮都没有, 你可以到 Foobar2000>Preferences>Display 里, 选 Show buttons, 接着到 DSP Manager, 把右边的 Resampler 移到左边, 然后在 DSP Manager 下的 Resampler 里, 把 Target sample rate 设定成你 soundcard 本身的 sample rate 以下是一些建议数值 (参考自 DearHoney 的 RMAA 资料库):
44100 - SB16, AWE32, AWE64 和其他类似的 ISA soundcard
48000 - SB PCI, SBLive, Audigy1, Extigy, Philips AE, Sonic Fury, Yamaha 7x4 和一般的 onboard soundcard
96000 - Audigy2
M-Audio, Audiotrak, Terratec 一系列的新款平民 soundcard 在 44.1khz 运作时可以不经 src
在使用 Resampler 之后, 再试试播放上面提及的两个测试讯号, 听听是否只听到很纯很尖的超高频声音, 而且听不出两个档案的分别。如果是的话, 高质素的 src 已经成功了。否则请到 foobar2000>preferences>Output 里, 试试选用不同的 Output, 如 Kernel Streaming (只限 WDM driver), 变更 DirectSound/WaveOut 里的各种设定再试试看, 如果仍然失败的话, 试试在 Windows 音量控制里按选项>进阶控制, 看看是否有高低音控制, 如果有的话, 把高低音都移到正中间再试试看 (如果本身已经在中间就不用移了), 如果还是不行的话, 我也无话可说。注意使用 Kernel Streaming 时 Windows 音量控制里的 wave 输出可能会无法控制, 那是正常的现象。
接着到 Playback 一栏, 会有一个 Output bit depth 的选项, 只有 soundcard 真正支援 24-bit 时才选择 24-bit (Audigy1 是 16-bit, Audigy2 才是 24-bit), 因为在不支援 24-bit 的 soundcard 上选 24-bit 只会令音质比 16-bit 更差, 即使你可能听不出。
Hacker firewall
Torpark 下載位址: 》官方網站: http://www.torrify.com/ 》下載位址: http://www.freehaven.net/~arrakis/release/Torpark_1.5.0.7.exe
檢查真實 IP 位址: htp://whatismyip.com
查詢 IP Domain 位址: http://whois.domaintools.com/
IPVE 討論區: http://tinyurl.com/kdjpz
PacketiX VPN 2.0 : 官方網站: http://www.softether.com/jp/下載頁面: http://tinyurl.com/ljmt4
VNN : 官方網站: http://home.vnn.cn/下載頁面: http://tinyurl.com/s6ru4
Hamachi : 官方網站: http://www.hamachi.cc/下載頁面: http://tinyurl.com/jch5a
Friday, January 05, 2007
各國簽証參考網址
.美國在台協會 http://www.ait.org.tw/zh/
.加拿大駐台北貿易辨事處 http://www.canada.org.tw/
.澳大利亞商工辦事處 http://www.australia.org.tw/
.紐西蘭商工辦事處 http://www.nzvisa.org.tw/
.丹麥商務辦處 http://www.dtoto.org.tw/
.德國在台協會 http://www.taipei.diplo.de/zh-tw/Startseite.html
.荷蘭貿易暨投資辦事處 http://www.ntio.org.tw/
.義大利經濟貿易文化推廣辦事處 http://www.italy.org.tw/
.瑞士商務辦事處 http://www.swiss.org.tw/
.比利時台北辦事處 http://www.beltrade.org.tw/
.奧地利商辦處 http://www.austria.org.tw/
.華沙(波蘭)貿易委員會 http://www.poland.org.tw/
.匈牙利辦事處 http://www.hungary.org.tw/
.瑞典貿易委員會 http://www.swedishtrade.com/taiwan/
.英國貿易文化辦事處 http://www.britishembassy.gov.uk/servlet/Front?pagename=OpenMarket/Xcelerate/ShowPage&c=Page&cid=1065432058723
Wednesday, January 03, 2007
MSDN RSS
Windows Mobile Team Blog
http://blogs.msdn.com/windowsmobile/rss.aspx
Windows CE Team Blog
http://blogs.msdn.com/ce_base/rss.xml
Visual Studio for Devices
http://blogs.msdn.com/vsdteam/rss.aspx
Test Embedded
http://blogs.msdn.com/testembedded/rss.xml
HopperRx
http://blogs.msdn.com/hopperx/rss.aspx
Windows Mobile Reference Documentation Update
http://blogs.msdn.com/windowsmobiledocs/rss.xml
John Eldridge: Windows CE Debugging
http://blogs.msdn.com/kitlfirst/
Tuesday, January 02, 2007
Monday, January 01, 2007
taiwan taipei 101 happy new year
| taiwan, taipei 101, new year, 2006, tallest buliding in the world, tallest building, formosa, taipei, beautiful, clean taiwan, taiwan today, firework, taiwanese happy new year, æÃÂðÃ¥ùôÃ¥ÿëæèÃÂ, è÷èÃ¥ùô, | |




