信號完整性問題是高速PCB 設計者必需面對的問題。阻抗匹配、合理端接、正確拓撲結構解決信號完整性問題的關鍵。傳輸線上信號的傳輸速度是有限的,信號線的布線長度產生的信號傳輸延時會對信號的時序關系產生影響,所以PCB 上的高速信號的長度以及延時要仔細計算和分析。運用信號完整性分析工具進行布線前后的仿真對于保證信號完整性和縮短設計周期是非常必要的。在PCB 板子已焊接加工完畢后才發現信號質量問題和時序問題,是經費和產品研制時間的浪費。1.1 板上高速信號分析我們設計的是基于PowerPC 的主板,主要由處理器MPC755、北橋MPC107、北橋PowerSpanII、VME 橋CA91C142B 等一些電路組成,上面的高速信號如圖2-1 所示。板上高速信號主要包括:時鐘信號、60X 總線信號、L2 Cache 接口信號、Memory 接口信號、PCI 總線0 信號、PCI 總線1 信號、VME 總線信號。這些信號的布線需要特別注意。由于高速信號較多,布線前后對信號進行了仿真分析,仿真工具采用Mentor 公司的Hyperlynx7.1 仿真軟件,它可以進行布線前仿真和布線后仿真。
上傳時間: 2013-11-04
上傳用戶:herog3
Hyperlynx仿真應用:阻抗匹配.下面以一個電路設計為例,簡單介紹一下PCB仿真軟件在設計中的使用。下面是一個DSP硬件電路部分元件位置關系(原理圖和PCB使用PROTEL99SE設計),其中DRAM作為DSP的擴展Memory(64位寬度,低8bit還經過3245接到FLASH和其它芯片),DRAM時鐘頻率133M。因為頻率較高,設計過程中我們需要考慮DRAM的數據、地址和控制線是否需加串阻。下面,我們以數據線D0仿真為例看是否需要加串阻。模型建立首先需要在元件公司網站下載各器件IBIS模型。然后打開Hyperlynx,新建LineSim File(線路仿真—主要用于PCB前仿真驗證)新建好的線路仿真文件里可以看到一些虛線勾出的傳輸線、芯片腳、始端串阻和上下拉終端匹配電阻等。下面,我們開始導入主芯片DSP的數據線D0腳模型。左鍵點芯片管腳處的標志,出現未知管腳,然后再按下圖的紅線所示線路選取芯片IBIS模型中的對應管腳。 3http://bbs.elecfans.com/ 電子技術論壇 http://www.elecfans.com 電子發燒友點OK后退到“ASSIGN Models”界面。選管腳為“Output”類型。這樣,一樣管腳的配置就完成了。同樣將DRAM的數據線對應管腳和3245的對應管腳IBIS模型加上(DSP輸出,3245高阻,DRAM輸入)。下面我們開始建立傳輸線模型。左鍵點DSP芯片腳相連的傳輸線,增添傳輸線,然后右鍵編輯屬性。因為我們使用四層板,在表層走線,所以要選用“Microstrip”,然后點“Value”進行屬性編輯。這里,我們要編輯一些PCB的屬性,布線長度、寬度和層間距等,屬性編輯界面如下:再將其它傳輸線也添加上。這就是沒有加阻抗匹配的仿真模型(PCB最遠直線間距1.4inch,對線長為1.7inch)。現在模型就建立好了。仿真及分析下面我們就要為各點加示波器探頭了,按照下圖紅線所示路徑為各測試點增加探頭:為發現更多的信息,我們使用眼圖觀察。因為時鐘是133M,數據單沿采樣,數據翻轉最高頻率為66.7M,對應位寬為7.58ns。所以設置參數如下:之后按照芯片手冊制作眼圖模板。因為我們最關心的是接收端(DRAM)信號,所以模板也按照DRAM芯片HY57V283220手冊的輸入需求設計。芯片手冊中要求輸入高電平VIH高于2.0V,輸入低電平VIL低于0.8V。DRAM芯片的一個NOTE里指出,芯片可以承受最高5.6V,最低-2.0V信號(不長于3ns):按下邊紅線路徑配置眼圖模板:低8位數據線沒有串阻可以滿足設計要求,而其他的56位都是一對一,經過仿真沒有串阻也能通過。于是數據線不加串阻可以滿足設計要求,但有一點需注意,就是寫數據時因為存在回沖,DRAM接收高電平在位中間會回沖到2V。因此會導致電平判決裕量較小,抗干擾能力差一些,如果調試過程中發現寫RAM會出錯,還需要改版加串阻。
上傳時間: 2013-11-05
上傳用戶:dudu121
PCB 布線原則連線精簡原則連線要精簡,盡可能短,盡量少拐彎,力求線條簡單明了,特別是在高頻回路中,當然為了達到阻抗匹配而需要進行特殊延長的線就例外了,例如蛇行走線等。安全載流原則銅線的寬度應以自己所能承載的電流為基礎進行設計,銅線的載流能力取決于以下因素:線寬、線厚(銅鉑厚度)、允許溫升等,下表給出了銅導線的寬度和導線面積以及導電電流的關系(軍品標準),可以根據這個基本的關系對導線寬度進行適當的考慮。印制導線最大允許工作電流(導線厚50um,允許溫升10℃)導線寬度(Mil) 導線電流(A) 其中:K 為修正系數,一般覆銅線在內層時取0.024,在外層時取0.048;T 為最大溫升,單位為℃;A 為覆銅線的截面積,單位為mil(不是mm,注意);I 為允許的最大電流,單位是A。電磁抗干擾原則電磁抗干擾原則涉及的知識點比較多,例如銅膜線的拐彎處應為圓角或斜角(因為高頻時直角或者尖角的拐彎會影響電氣性能)雙面板兩面的導線應互相垂直、斜交或者彎曲走線,盡量避免平行走線,減小寄生耦合等。一、 通常一個電子系統中有各種不同的地線,如數字地、邏輯地、系統地、機殼地等,地線的設計原則如下:1、 正確的單點和多點接地在低頻電路中,信號的工作頻率小于1MHZ,它的布線和器件間的電感影響較小,而接地電路形成的環流對干擾影響較大,因而應采用一點接地。當信號工作頻率大于10MHZ 時,如果采用一點接地,其地線的長度不應超過波長的1/20,否則應采用多點接地法。2、 數字地與模擬地分開若線路板上既有邏輯電路又有線性電路,應盡量使它們分開。一般數字電路的抗干擾能力比較強,例如TTL 電路的噪聲容限為0.4~0.6V,CMOS 電路的噪聲容限為電源電壓的0.3~0.45 倍,而模擬電路只要有很小的噪聲就足以使其工作不正常,所以這兩類電路應該分開布局布線。3、 接地線應盡量加粗若接地線用很細的線條,則接地電位會隨電流的變化而變化,使抗噪性能降低。因此應將地線加粗,使它能通過三倍于印制板上的允許電流。如有可能,接地線應在2~3mm 以上。4、 接地線構成閉環路只由數字電路組成的印制板,其接地電路布成環路大多能提高抗噪聲能力。因為環形地線可以減小接地電阻,從而減小接地電位差。二、 配置退藕電容PCB 設計的常規做法之一是在印刷板的各個關鍵部位配置適當的退藕電容,退藕電容的一般配置原則是:?電電源的輸入端跨½10~100uf的的電解電容器,如果印制電路板的位置允許,采Ó100uf以以上的電解電容器抗干擾效果會更好¡���?原原則上每個集成電路芯片都應布置一¸0.01uf~`0.1uf的的瓷片電容,如遇印制板空隙不夠,可Ã4~8個個芯片布置一¸1~10uf的的鉭電容(最好不用電解電容,電解電容是兩層薄膜卷起來的,這種卷起來的結構在高頻時表現為電感,最好使用鉭電容或聚碳酸醞電容)。���?對對于抗噪能力弱、關斷時電源變化大的器件,ÈRA、¡ROM存存儲器件,應在芯片的電源線和地線之間直接接入退藕電容¡���?電電容引線不能太長,尤其是高頻旁路電容不能有引線¡三¡過過孔設¼在高ËPCB設設計中,看似簡單的過孔也往往會給電路的設計帶來很大的負面效應,為了減小過孔的寄生效應帶來的不利影響,在設計中可以盡量做到£���?從從成本和信號質量兩方面來考慮,選擇合理尺寸的過孔大小。例如¶6- 10層層的內存模¿PCB設設計來說,選Ó10/20mi((鉆¿焊焊盤)的過孔較好,對于一些高密度的小尺寸的板子,也可以嘗試使Ó8/18Mil的的過孔。在目前技術條件下,很難使用更小尺寸的過孔了(當孔的深度超過鉆孔直徑µ6倍倍時,就無法保證孔壁能均勻鍍銅);對于電源或地線的過孔則可以考慮使用較大尺寸,以減小阻抗¡���?使使用較薄µPCB板板有利于減小過孔的兩種寄生參數¡���? PCB板板上的信號走線盡量不換層,即盡量不要使用不必要的過孔¡���?電電源和地的管腳要就近打過孔,過孔和管腳之間的引線越短越好¡���?在在信號換層的過孔附近放置一些接地的過孔,以便為信號提供最近的回路。甚至可以ÔPCB板板上大量放置一些多余的接地過孔¡四¡降降低噪聲與電磁干擾的一些經Ñ?能能用低速芯片就不用高速的,高速芯片用在關鍵地方¡?可可用串一個電阻的方法,降低控制電路上下沿跳變速率¡?盡盡量為繼電器等提供某種形式的阻尼,ÈRC設設置電流阻尼¡?使使用滿足系統要求的最低頻率時鐘¡?時時鐘應盡量靠近到用該時鐘的器件,石英晶體振蕩器的外殼要接地¡?用用地線將時鐘區圈起來,時鐘線盡量短¡?石石英晶體下面以及對噪聲敏感的器件下面不要走線¡?時時鐘、總線、片選信號要遠ÀI/O線線和接插件¡?時時鐘線垂直ÓI/O線線比平行ÓI/O線線干擾小¡? I/O驅驅動電路盡量靠½PCB板板邊,讓其盡快離¿PC。。對進ÈPCB的的信號要加濾波,從高噪聲區來的信號也要加濾波,同時用串終端電阻的辦法,減小信號反射¡? MCU無無用端要接高,或接地,或定義成輸出端,集成電路上該接電源、地的端都要接,不要懸空¡?閑閑置不用的門電路輸入端不要懸空,閑置不用的運放正輸入端接地,負輸入端接輸出端¡?印印制板盡量使Ó45折折線而不Ó90折折線布線,以減小高頻信號對外的發射與耦合¡?印印制板按頻率和電流開關特性分區,噪聲元件與非噪聲元件呀距離再遠一些¡?單單面板和雙面板用單點接電源和單點接地、電源線、地線盡量粗¡?模模擬電壓輸入線、參考電壓端要盡量遠離數字電路信號線,特別是時鐘¡?對¶A/D類類器件,數字部分與模擬部分不要交叉¡?元元件引腳盡量短,去藕電容引腳盡量短¡?關關鍵的線要盡量粗,并在兩邊加上保護地,高速線要短要直¡?對對噪聲敏感的線不要與大電流,高速開關線并行¡?弱弱信號電路,低頻電路周圍不要形成電流環路¡?任任何信號都不要形成環路,如不可避免,讓環路區盡量小¡?每每個集成電路有一個去藕電容。每個電解電容邊上都要加一個小的高頻旁路電容¡?用用大容量的鉭電容或聚酷電容而不用電解電容做電路充放電儲能電容,使用管狀電容時,外殼要接地¡?對對干擾十分敏感的信號線要設置包地,可以有效地抑制串擾¡?信信號在印刷板上傳輸,其延遲時間不應大于所有器件的標稱延遲時間¡環境效應原Ô要注意所應用的環境,例如在一個振動或者其他容易使板子變形的環境中采用過細的銅膜導線很容易起皮拉斷等¡安全工作原Ô要保證安全工作,例如要保證兩線最小間距要承受所加電壓峰值,高壓線應圓滑,不得有尖銳的倒角,否則容易造成板路擊穿等。組裝方便、規范原則走線設計要考慮組裝是否方便,例如印制板上有大面積地線和電源線區時(面積超¹500平平方毫米),應局部開窗口以方便腐蝕等。此外還要考慮組裝規范設計,例如元件的焊接點用焊盤來表示,這些焊盤(包括過孔)均會自動不上阻焊油,但是如用填充塊當表貼焊盤或用線段當金手指插頭,而又不做特別處理,(在阻焊層畫出無阻焊油的區域),阻焊油將掩蓋這些焊盤和金手指,容易造成誤解性錯誤£SMD器器件的引腳與大面積覆銅連接時,要進行熱隔離處理,一般是做一¸Track到到銅箔,以防止受熱不均造成的應力集Ö而導致虛焊£PCB上上如果有¦12或或方Ð12mm以以上的過孔時,必須做一個孔蓋,以防止焊錫流出等。經濟原則遵循該原則要求設計者要對加工,組裝的工藝有足夠的認識和了解,例È5mil的的線做腐蝕要±8mil難難,所以價格要高,過孔越小越貴等熱效應原則在印制板設計時可考慮用以下幾種方法:均勻分布熱負載、給零件裝散熱器,局部或全局強迫風冷。從有利于散熱的角度出發,印制板最好是直立安裝,板與板的距離一般不應小Ó2c,,而且器件在印制板上的排列方式應遵循一定的規則£同一印制板上的器件應盡可能按其發熱量大小及散熱程度分區排列,發熱量小或耐熱性差的器件(如小信號晶體管、小規模集³電路、電解電容等)放在冷卻氣流的最上(入口處),發熱量大或耐熱性好的器件(如功率晶體管、大規模集成電路等)放在冷卻Æ流最下。在水平方向上,大功率器件盡量靠近印刷板的邊沿布置,以便縮短傳熱路徑;在垂直方向上,大功率器件盡量靠近印刷板上方布置£以便減少這些器件在工作時對其他器件溫度的影響。對溫度比較敏感的器件最好安置在溫度最低的區域(如設備的µ部),千萬不要將它放在發熱器件的正上方,多個器件最好是在水平面上交錯布局¡設備內印制板的散熱主要依靠空氣流動,所以在設計時要研究空氣流動的路徑,合理配置器件或印制電路板。采用合理的器件排列方式,可以有效地降低印制電路的溫升。此外通過降額使用,做等溫處理等方法也是熱設計中經常使用的手段¡
上傳時間: 2013-11-24
上傳用戶:氣溫達上千萬的
這個 天正建筑8.5破解版支持最新AutoCAD2012 CAD即計算機輔助設計(CAD-Computer Aided Design) 利用計算機及其圖形設備幫助設計人員進行設計工作 。簡稱cad。 在工程和產品設計中,計算機可以幫助設計人員擔負計算、信息存儲和制圖等項工作。CAD還包含:電氣CAD、外貿結算CAD、加拿大元、冠狀動脈性心臟病、計算機輔助診斷、服裝CAD等含義。 天正建筑8.5/8.0注冊機是一款通用的天正建筑注冊機,可以用于天正建筑8.5注冊算號,以及天正建筑8.0等低版本注冊算號 下面順便提供兩組免費天正建筑注冊碼 機器碼:nf0def108c175002682b52cda 注冊碼:2F1091EF97ADFD859F077AE93D14E388CBD52D128DBF8395DC 機器碼:N984BE1A8F64990004E4B4CB4 注冊碼:2F6F48D81D9E4A856BFBBF4798248713860848FC7DCCC4372C 使用方法:將壓縮包全部下載后解壓,安裝雖然顯示是試用版,但等下破解后就是正式版了! 加壓安裝后,打開軟件,會提示輸入注冊碼,這時打開注冊機,選天正建筑8.0破解,將授權碼復制到注冊機中,再點計算注冊碼,將計算出的注冊碼,復制到之前打開的天正軟件中,即注冊完成?。? 1、墻、柱、墻體造型、凸窗擋板、門窗套全面支持繪保溫層。 2、門窗系統大幅度改進。新增在同一洞口插入多個門窗、門窗編號 利用AutoCAD圖形平臺開發的最新一代建筑軟件TArch 8.5,繼續以先進的建筑對象概念服務于建筑施工圖設計,成為建筑CAD的首選軟件,同時天正建筑對象創建的建筑模型已經成為天正日照、節能、給排水、暖通、電氣等系列軟件的數據來源,很多三維渲染圖也基于天正三維模型制作而成。 2008年9月天正建筑TArch軟件通過建設部科技成果的評估,在建筑設計領域二次開發方面達到國際先進水平。 天正表格使用了先進的表格對象,其交互界面類似Excel的電子表格編輯界面。表格對象具有層次結構,用戶可以完整地把握如何控制表格的外觀表現,制作出有個性化的表格。更值得一提的是,天正表格還實現了與Excel的數據雙向交換,使工程制表同辦公制表一樣方便高效。 強大的圖庫管理系統和圖塊功能 天正的圖庫管理系統采用先進的編程技術,支持貼附材質的多視圖圖塊,支持同時打開多個圖庫的操作。 【天正建筑8.5破解版特色功能】 主要包括交互技術、圖形變換技術、曲面造型和實體造型技術等。 在計算機輔助設計中,交互技術是必不可少的。交互式cad系統, 指用戶在使用計 cad系統 算機系統進行設計時,人和機器可以及時地交換信息。采用交互式系統,人們可以邊構思 、邊打樣、邊修改,隨時可從圖形終端屏幕上看到每一步操作的顯示結果,非常直觀。 圖形變換的主要功能是把用戶坐標系和圖形輸出設備的坐標系聯系起來;對圖形作平移、旋轉、縮放、透視變換 ;通過矩陣運算來實現圖形變換。 計算機設計自動化 計算機自身的cad,旨在實現計算機自身設計和研制過程的自動化或半自動化。研究內容包括功能設計自動化和組裝設計自動化,涉及計算機硬件描述語言、系統級模擬、自動邏輯綜合、邏輯模擬、微程序設計自動化、自動邏輯劃分、自動布局布線,以及相應的交互圖形系統和工程數據庫系統。集成電路 cad有時也列入計算機設計自動化的范圍
上傳時間: 2013-11-01
上傳用戶:zwei41
郭天祥配套書籍的單片機模擬板TX-2,用proteus打開
上傳時間: 2013-10-30
上傳用戶:zjf3110
小宋老師的51開發板原理圖
上傳時間: 2013-12-12
上傳用戶:s藍莓汁
單片機終結者出品 第1課:新建一個*.DDB,新建一個SCH文件,并且添加畫SCH要用到的零件庫>> 第2課:利用添加好的零件庫,進行畫第一個可以自動布線的原理圖>> 課后補充:SCH中一些必須要避免的錯誤! 圖片教程的第2天: 學會從SCH到PCB的轉變,并且進行自動布線 第一課:建立一個PCB文件,并且添加自動布線所必需的封裝庫 第二課:把前面的SCH文件變成PCB板 第三課: 對PCB進行自動布線 圖片教程的第3天: 學會自己做SCH零件。說明:SCH零件庫用來畫圖和自動布線 第一課:做一個SCH里面常要用到的電阻零件 圖片教程的第4天: 學會自己做PCB零件封裝 第一課:做一個屬于自己的PCB零件封裝 課后補充:PCB中一些必須要避免的錯誤! 布線方面的高級設置:自動布線和手動布線方面的高級設置問題 圖片教程的第5天: 一些高級的常用技巧 一、SCH中的一些常用技巧 SCH的一些高級設置和常用技巧 二、PCB的一些高級設置和常用技巧 在PCB中,如何校驗和查看PCB單個的網絡連接情況 在PCB中給PCB補淚滴的具體操作 在PCB中給PCB做覆銅的具體操作 在PCB中如何打印出中空的焊盤(這個功能對于熱轉印制板比較有用) 在PCB中如何找到我們要找的封裝 如何在PCB文件中加上漂亮的漢字 附件:PROTEL99SE 安裝 License 5天(每天20分鐘),你就可以搞定PROTEL99SE的常規操作。
上傳時間: 2013-10-18
上傳用戶:jjq719719
本書從應用的角度,詳細地介紹了MCS-51單片機的硬件結構、指令系統、各種硬件接口設計、各種常用的數據運算和處理程序及接口驅動程序的設計以及MCS-51單片機應用系統的設計,并對MCS-51單片機應用系統設計中的抗干擾技術以及各種新器件也作了詳細的介紹。本書突出了選取內容的實用性、典型性。書中的應用實例,大多來自科研工作及教學實踐,且經過檢驗,內容豐富、翔實。 本書可作為工科院校的本科生、研究生、??粕鷮W習MCS-51單片機課程的教材,也可供從事自動控制、智能儀器儀表、測試、機電一體化以及各類從事MCS-51單片機應用的工程技術人員參考。 第一章 單片微型計等機概述 1.1 單片機的歷史及發展概況 1.2 單片機的發展趨勢 1.3 單片機的應用 1.3.1 單片機的特點 1.3.2 單片機的應用范圍 1.4 8位單片機的主要生產廠家和機型 1.5 MCS-51系列單片機 第二章 MCS-51單片機的硬件結構 2.1 MCS-51單片機的硬件結構 2.2 MCS-51的引腳 2.2.1 電源及時鐘引腳 2.2.2 控制引腳 2.2.3 I/O口引腳 2.3 MCS-51單片機的中央處理器(CPU) 2.3.1 運算部件 2.3.2 控制部件 2.4 MCS-51存儲器的結構 2.4.1 程序存儲器 2.4.2 內部數據存儲器 2.4.3 特殊功能寄存器(SFR) 2.4.4 位地址空間 2.4.5 外部數據存儲器 2.5 I/O端口 2.5.1 I/O口的內部結構 2.5.2 I/O口的讀操作 2.5.3 I/O口的寫操作及負載能力 2.6 復位電路 2.6.1 復位時各寄存器的狀態 2.6.2 復位電路 2.7 時鐘電路 2.7.1 內部時鐘方式 2.7.2 外部時鐘方式 2.7.3 時鐘信號的輸出 第三章 MCS-51的指令系統 3.1 MCS-51指令系統的尋址方式 3.1.1 寄存器尋址 3.1.2 直接尋址 3.1.3 寄存器間接尋址 3.1.4 立即尋址 3.1.5 基址寄存器加變址寄存器間址尋址 3.2 MCS-51指令系統及一般說明 3.2.1 數據傳送類指令 3.2.2 算術操作類指令 3.2.3 邏輯運算指令 3.2.4 控制轉移類指令 3.2.5 位操作類指令 第四章 MCS-51的定時器/計數器 4.1 定時器/計數器的結構 4.1.1 工作方式控制寄存器TMOD 4.1.2 定時器/計數器控制寄存器TCON 4.2 定時器/計數器的四種工作方式 4.2.1 方式0 4.2.2 方式1 4.2.3 方式2 4.2.4 方式3 4.3 定時器/計數器對輸入信號的要求 4.4 定時器/計數器編程和應用 4.4.1 方式o應用(1ms定時) 4.4.2 方式1應用 4.4.3 方式2計數方式 4.4.4 方式3的應用 4.4.5 定時器溢出同步問題 4.4.6 運行中讀定時器/計數器 4.4.7 門控制位GATE的功能和使用方法(以T1為例) 第五章 MCS-51的串行口 5.1 串行口的結構 5.1.1 串行口控制寄存器SCON 5.1.2 特殊功能寄存器PCON 5.2 串行口的工作方式 5.2.1 方式0 5.2.2 方式1 5.2.3 方式2 5.2.4 方式3 5.3 多機通訊 5.4 波特率的制定方法 5.4.1 波特率的定義 5.4.2 定時器T1產生波特率的計算 5.5 串行口的編程和應用 5.5.1 串行口方式1應用編程(雙機通訊) 5.5.2 串行口方式2應用編程 5.5.3 串行口方式3應用編程(雙機通訊) 第六章 MCS-51的中斷系統 6.1 中斷請求源 6.2 中斷控制 6.2.1 中斷屏蔽 6.2.2 中斷優先級優 6.3 中斷的響應過程 6.4 外部中斷的響應時間 6.5 外部中斷的方式選擇 6.5.1 電平觸發方式 6.5.2 邊沿觸發方式 6.6 多外部中斷源系統設計 6.6.1 定時器作為外部中斷源的使用方法 6.6.2 中斷和查詢結合的方法 6.6.3 用優先權編碼器擴展外部中斷源 第七章 MCS-51單片機擴展存儲器的設計 7.1 概述 7.1.1 只讀存儲器 7.1.2 可讀寫存儲器 7.1.3 不揮發性讀寫存儲器 7.1.4 特殊存儲器 7.2 存儲器擴展的基本方法 7.2.1 MCS-51單片機對存儲器的控制 7.2.2 外擴存儲器時應注意的問題 7.3 程序存儲器EPROM的擴展 7.3.1 程序存儲器的操作時序 7.3.2 常用的EPROM芯片 7.3.3 外部地址鎖存器和地址譯碼器 7.3.4 典型EPROM擴展電路 7.4 靜態數據存儲的器擴展 7.4.1 外擴數據存儲器的操作時序 7.4.2 常用的SRAM芯片 7.4.3 64K字節以內SRAM的擴展 7.4.4 超過64K字節SRAM擴展 7.5 不揮發性讀寫存儲器擴展 7.5.1 EPROM擴展 7.5.2 SRAM掉電保護電路 7.6 特殊存儲器擴展 7.6.1 雙口RAMIDT7132的擴展 7.6.2 快擦寫存儲器的擴展 7.6.3 先進先出雙端口RAM的擴展 第八章 MCS-51擴展I/O接口的設計 8.1 擴展概述 8.2 MCS-51單片機與可編程并行I/O芯片8255A的接口 8.2.1 8255A芯片介紹 8.2.2 8031單片機同8255A的接口 8.2.3 接口應用舉例 8.3 MCS-51與可編程RAM/IO芯片8155H的接口 8.3.1 8155H芯片介紹 8.3.2 8031單片機與8155H的接口及應用 8.4 用MCS-51的串行口擴展并行口 8.4.1 擴展并行輸入口 8.4.2 擴展并行輸出口 8.5 用74LSTTL電路擴展并行I/O口 8.5.1 用74LS377擴展一個8位并行輸出口 8.5.2 用74LS373擴展一個8位并行輸入口 8.5.3 MCS-51單片機與總線驅動器的接口 8.6 MCS-51與8253的接口 8.6.1 邏輯結構與操作編址 8.6.2 8253工作方式和控制字定義 8.6.3 8253的工作方式與操作時序 8.6.4 8253的接口和編程實例 第九章 MCS-51與鍵盤、打印機的接口 9.1 LED顯示器接口原理 9.1.1 LED顯示器結構 9.1.2 顯示器工作原理 9.2 鍵盤接口原理 9.2.1 鍵盤工作原理 9.2.2 單片機對非編碼鍵盤的控制方式 9.3 鍵盤/顯示器接口實例 9.3.1 利用8155H芯片實現鍵盤/顯示器接口 9.3.2 利用8031的串行口實現鍵盤/顯示器接口 9.3.3 利用專用鍵盤/顯示器接口芯片8279實現鍵盤/顯示器接口 9.4 MCS-51與液晶顯示器(LCD)的接口 9.4.1 LCD的基本結構及工作原理 9.4.2 點陣式液晶顯示控制器HD61830介紹 9.5 MCS-51與微型打印機的接口 9.5.1 MCS-51與TPμp-40A/16A微型打印機的接口 9.5.2 MCS-51與GP16微型打印機的接口 9.5.3 MCS-51與PP40繪圖打印機的接口 9.6 MCS-51單片機與BCD碼撥盤的接口設計 9.6.1 BCD碼撥盤 9.6.2 BCD碼撥盤與單片機的接口 9.6.3 撥盤輸出程序 9.7 MCS-51單片機與CRT的接口 9.7.1 SCIBCRT接口板的主要特點及技術參數 9.7.2 SCIB接口板的工作原理 9.7.3 SCIB與MCS-51單片機的接口 9.7.4 SCIB的CRT顯示軟件設計方法 第十章 MCS-51與D/A、A/D的接口 10.1 有關DAC及ADC的性能指標和選擇要點 10.1.1 性能指標 10.1.2 選擇ABC和DAC的要點 10.2 MCS-51與DAC的接口 10.2.1 MCS-51與DAC0832的接口 10.2.2 MCS-51同DAC1020及DAC1220的接口 10.2.3 MCS-51同串行輸入的DAC芯片AD7543的接口 10.3 MCS-51與ADC的接口 10.3.1 MCS-51與5G14433(雙積分型)的接口 10.3.2 MCS-51與ICL7135(雙積分型)的接口 10.3.3 MCS-51與ICL7109(雙積分型)的接口 10.3.4 MCS-51與ADC0809(逐次逼近型)的接口 10.3.5 8031AD574(逐次逼近型)的接口 10.4 V/F轉換器接口技術 10.4.1 V/F轉換器實現A/D轉換的方法 10.4.2 常用V/F轉換器LMX31簡介 10.4.3 V/F轉換器與MCS-51單片機接口 10.4.4 LM331應用舉例 第十一章 標準串行接口及應用 11.1 概述 11.2 串行通訊的接口標準 11.2.1 RS-232C接口 11.2.2 RS-422A接口 11.2.3 RS-485接口 11.2.4 各種串行接口性能比較 11.3 雙機串行通訊技術 11.3.1 單片機雙機通訊技術 11.3.2 PC機與8031單片機雙機通訊技術 11.4 多機串行通訊技術 11.4.1 單片機多機通訊技術 11.4.2 IBM-PC機與單片機多機通訊技術 11.5 串行通訊中的波特率設置技術 11.5.1 IBM-PC/XT系統中波特率的產生 11.5.2 MCS-51單片機串行通訊波特率的確定 11.5.3 波特率相對誤差范圍的確定方法 11.5.4 SMOD位對波特率的影響 第十二章 MCS-51的功率接口 12.1 常用功率器件 12.1.1 晶閘管 12.1.2 固態繼電器 12.1.3 功率晶體管 12.1.4 功率場效應晶體管 12.2 開關型功率接口 12.2.1 光電耦合器驅動接口 12.2.2 繼電器型驅動接口 12.2.3 晶閘管及脈沖變壓器驅動接口 第十三章 MCS-51單片機與日歷的接口設計 13.1 概述 13.2 MCS-51單片機與實時日歷時鐘芯片MSM5832的接口設計 13.2.1 MSM5832性能及引腳說明 13.2.2 MSM5832時序分析 13.2.3 8031單片機與MSM5832的接口設計 13.3 MCS-51單片機與實時日歷時鐘芯片MC146818的接口設計 13.3.1 MC146818性能及引腳說明 13.3.2 MC146818芯片地址分配及各單元的編程 13.3.3 MC146818的中斷 13.3.4 8031單片機與MC146818的接口電路設計 13.3.5 8031單片機與MC146818的接口軟件設計 第十四章 MCS-51程序設計及實用子程序 14.1 查表程序設計 14.2 散轉程序設計 14.2.1 使用轉移指令表的散轉程序 14.2.2 使用地地址偏移量表的散轉程序 14.2.3 使用轉向地址表的散轉程序 14.2.4 利用RET指令實現的散轉程序 14.3 循環程序設計 14.3.1 單循環 14.3.2 多重循環 14.4 定點數運算程序設計 14.4.1 定點數的表示方法 14.4.2 定點數加減運算 14.4.3 定點數乘法運算 14.4.4 定點數除法 14.5 浮點數運算程序設計 14.5.1 浮點數的表示 14.5.2 浮點數的加減法運算 14.5.3 浮點數乘除法運算 14.5.4 定點數與浮點數的轉換 14.6 碼制轉換 ……
上傳時間: 2013-11-06
上傳用戶:xuanjie
本書分三部分介紹在美國廣泛應用的、高功能的M68HC11系列單片機(8位機 ,Motorola公司)。內容包括M68HC11的結構與其基本原理、開發工具EVB(性能評估板)以及開發和應用技術。本書在介紹單片機硬、軟件的基礎上,進一步介紹了在美國實驗室內,如何應用PC機及EVB來進行開發工作。通過本書的介紹,讀者可了解這種單片機的原理并學會開發和應用方法。本書可作為大專院校單片機及其實驗的教材(本科、短訓班)。亦可供開發、應用單片機的各專業(計算機、機電、化工、紡織、冶金、自控、航空、航海……)有關技術人員參考。 第一部分 M68HC11 結構與原理Motorola單片機 1 Motorla單片機 1.1 概述 1.1.1 Motorola 單片機發展概況(3) 1.1.2 Motorola 單片機結構特點(4) 1.2 M68HC11系列單片機(5) 1.2.1 M68HC11產品系列(5) 1.2.2 MC68HC11E9特性(6) 1.2.3 MC68HC11E9單片機引腳說明(8) 1.3 Motorola 32位單片機(14) 1.3.1中央處理器(CPU32)(15) 1.3.2 定時處理器(TPU)(16) 1.3.3 串行隊列模塊(QSM)(16) 1.3.4 系統集成模塊 (SIM)(16) 1.3.5 RAM(17) 2 系統配置與工作方式 2.1 系統配置(19) 2.1.1 配置寄存器CONFIG(19) 2.1.2 CONFIG寄存器的編程與擦除(20) 2?2 工作方式選擇(21) 2.3 M68HC11的工作方式(23) 2.3.1 普通單片工作方式(23) 2.3.2 普通擴展工作方式(23) 2.3.3 特殊自舉方式(27) 2.3.4 特殊測試方式(28) 3 中央處理器(CPU)與片上存儲器 3.1 CPU寄存器(31) 3?1?1 累加器A、B和雙累加器D(32) 3.1.2 變址寄存器X、Y(32) 3.1.3 棧指針SP(32) 3.1.4 程序計數器PC(33) 3.1.5 條件碼寄存器CCR(33) 3.2 片上存儲器(34) 3.2.1 存儲器分布(34) 3.2.2 RAM和INIT寄存器(35) 3.2.3 ROM(37) 3.2.4 EEPROM(37) 3.3 M68HC11 CPU的低功耗方式(39) 3.3.1 WAIT方式(39) 3.3.2 STOP方式(40) 4 復位和中斷 4.1 復位(41) 4.1.1 M68HC11的系統初始化條件(41) 4.1.2 復位形式(43) 4.2 中斷(48) 4.2.1 條件碼寄存器CCR中的中斷屏蔽位(48) 4.2.2 中斷優先級與中斷矢量(49) 4.2.3 非屏蔽中斷(52) 4.2.4 實時中斷(53) 4.2.5 中斷處理過程(56) 5 M68HC11指令系統 5.1 M68HC11尋址方式(59) 5.1.1 立即尋址(IMM)(59) 5.1.2 擴展尋址(EXT)(60) 5.1.3 直接尋址(DIR)(60) 5.1.4 變址尋址(INDX、INDY)(61) 5.1.5 固有尋址(INH)(62) 5.1.6 相對尋址(REL)(62) 5.1.7 前置字節(63) 5.2 M68HC11指令系統(63) 5.2.1 累加器和存儲器指令(63) 5.2.2 棧和變址寄存器指令(68) 5.2.3 條件碼寄存器指令(69) 5.2.4 程序控制指令(70) 6 輸入與輸出 6.1 概述(73) 6.2 并行I/O口(74) 6.2.1 并行I/O寄存器(74) 6.2.2 應答I/O子系統(76) 6?3 串行通信接口SCI(82) 6.3.1 基本特性(83) 6.3.2 數據格式(83) 6.3.3 SCI硬件結構(84) 6.3.4 SCI寄存器(86) 6.4 串行外圍接口SPI(92) 6.4.1 SPI特性(92) 6.4.2 SPI引腳信號(92) 6.4.3 SPI結構(93) 6.4.4 SPI寄存器(95) 6.4.5 SPI系統與外部設備進行串行數據傳輸(99) 7 定時器系統與脈沖累加器 7.1 概述(105) 7.2 循環計數器(107) 7.2.1 時鐘分頻器(107) 7.2.2 計算機正常工作監視功能(110) 7.2.3 定時器標志的清除(110) 7.3 輸入捕捉功能(111) 7.3.1 概述(111) 7.3.2 定時器輸入捕捉鎖存器(TIC1、TIC2、TIC3) 7.3.3 輸入信號沿檢測邏輯(113) 7.3.4 輸入捕捉中斷(113) 7.4 輸出比較功能(114) 7.4.1 概述(114) 7.4.2 輸出比較功能使用的寄存器(116) 7.4.3 輸出比較示例(118) 7.5 脈沖累加器(119) 7.5.1 概述(119) 7.5.2 脈沖累加器控制和狀態寄存器(121) 8 A/D轉換系統 8.1 電荷重新分布技術與逐次逼近算法(125) 8.1.1 基本電路(125) 8.1.2 A/D轉換逐次逼近算法原理(130) 8.2 M68HC11中A/D轉換的實現方法(131) 8.2.1 逐次逼近A/D轉換器(131) 8.2.2 控制寄存器(132) 8.2.3 系統控制邏輯(135)? 9 單片機的內部操作 9.1 用立即> 圖書前言 美國Motorola公司從80年代中期開始推出的M68HC11系列單片機是當今功能最強、性能/價格比最好的八位單片微計算機之一。在美國,它已被廣泛地應用于教學和各種工業控制系統中。? 該單片機有豐富的I/O功能,完善的系統保護功能和軟件控制的節電工作方式 。它的指令系統與早期Motorola單片機MC6801等兼容,同時增加了91條新指令。其中包含16位乘法、除法運算指令等。 為便于用戶開發和應用M68HC11單片機,Motorola公司提供了多種開發工具。M68HC11 EVB (Evaluation Board)性能評估板就是一種M68HC11系列單片機的廉價開發工具。它既可用來 調試用戶程序,又可在仿真方式下運行。為方便用戶,M68HC11 EVB可與IBM?PC連接 ,借助于交叉匯編、通信程序等軟件,在IBM?PC上調試程序。? 本書分三部分(共15章)介紹了M68HC11的結構和基本原理、開發工具-EVB及開發應用實例等。第一部分(1~9章),介紹M68HC11的結構和基本原理。包括概述,系統配置與工作方式、CPU和存儲器、復位和中斷、指令系統、I/O、定時器系統和脈沖累加器、A/D轉換系統、單片機的內部操作等。第二部分(10~11章),介紹M68HC11 EVB的原理和技術特性以及EVB的應用。第三部分(12~15章),介紹M68HC11的開發與應用技術。包括基本的編程練習、應用程序設計、接口實驗、接口設計及應用等。 讀者通過學習本書,不僅可了解M68HC11的硬件、軟件,而且可了解使用EVB開發和應用M68HC11單片機的方法。在本書的第三部分專門提供了一部分實驗和應用程序。? 本書系作者張寧作為高級訪問學者,應邀在美國馬薩諸塞州洛厄爾大學(University of Massachusetts Lowell)工作期間完成的。全書由張寧執筆。在編著過程中,美國洛厄爾大學的R·代克曼教授?(Professor Robert J. Dirkman)多次與張寧一起討論、研究,并提供部分資料及實驗數據。參加編寫和審校等工作的還有王云霞、孫曉芳、劉安魯、張籍、來安德、張楊等同志。? 為將M68HC11系列單片機盡快介紹給我國,美國Motorola公司的Terrence M.S.Heng先生曾大力支持本書的編著和出版。在此表示衷心感謝。
上傳時間: 2013-10-27
上傳用戶:rlgl123
《C#入門經典(第4版)》通過C#可以很容易地學習.NET Framework 3.5的強大功能,所以C#是開始您編程生涯的絕佳方式。《C#入門經典(第4版)》全面闡述了C#編程的所有方面,包括C#語言本身、Windows編程、Web編程及數據源的使用等內容。學習了新的編程技巧后,《C#入門經典(第4版)》介紹了如何高效地部署應用程序和服務,論述了許多高級技術,如圖形化編程。另外,還探討了如何使用Visual C# Express 2008、Visual Web Developer Express 2008和Visual Studio 2008的功能。所有這些內容都已更新,以反映.NET Framework 3.5和Visual Studio 2008的變化。各章的樣例代碼和示例還可以用于創建強大且安全的應用程序。 c#入門經典第4版目錄 第Ⅰ部分 C# 語 言 第1章 C#簡介 3 1.1 什么是.NET Framework 3 1.1.1 NET Framework的內容 4 1.1.2 用.NET Framework編寫應用程序 4 1.2 什么是C# 7 1.2.1 用C#能編寫什么樣的應用程序 7 1.2.2 本書中的C# 8 1.3 Visual Studio 2008 8 1.3.1 Visual Studio 2008 Express 產品 9 1.3.2 解決方案 9 1.4 小結 9 第2章 編寫C#程序 10 2.1 開發環境 10 2.1.1 Visual Studio 2008 11 2.1.2 Visual C# 2008 ExpressEdition 13 2.2 控制臺應用程序 13 2.2.1 Solution Explorer 16 2.2.2 Properties窗口 17 2.2.3 Error List窗口 17 2.3 Windows Forms應用程序 18 2.4 小結 22 第3章 變量和表達式 23 3.1 C#的基本語法 23 3.2 C#控制臺應用程序的基本結構 25 3.3 變量 27 3.3.1 簡單類型 27 3.3.2 變量的命名 31 3.3.3 字面值 32 3.3.4 變量的聲明和賦值 33 3.4 表達式 34 3.4.1 數學運算符 34 3.4.2 賦值運算符 38 3.4.3 運算符的優先級 39 3.4.4 名稱空間 39 3.5 小結 42 3.6 練習 43 第4章 流程控制 44 4.1 布爾邏輯 44 4.1.1 位運算符 46 4.1.2 布爾賦值運算符 50 4.1.3 運算符的優先級更新 51 4.2 goto語句 52 4.3 分支 53 4.3.1 三元運算符 53 4.3.2 if語句 54 4.3.3 switch語句 57 4.4 循環 60 4.4.1 do循環 61 4.4.2 while循環 63 4.4.3 for循環 65 4.4.4 循環的中斷 69 4.4.5 無限循環 70 4.5 小結 70 4.6 練習 71 第5章 變量的更多內容 72 5.1 類型轉換 72 5.1.1 隱式轉換 72 5.1.2 顯式轉換 74 5.1.3 使用Convert命令進行 顯式轉換 76 5.2 復雜的變量類型 79 5.2.1 枚舉 79 5.2.2 結構 83 5.2.3 數組 86 5.3 字符串的處理 91 5.4 小結 95 5.5 練習 96 第6章 函數 97 6.1 定義和使用函數 98 6.1.1 返回值 99 6.1.2 參數 101 6.2 變量的作用域 107 6.2.1 其他結構中變量的作用域 110 6.2.2 參數和返回值與全局數據 111 6.3 Main()函數 113 6.4 結構函數 114 6.5 函數的重載 115 6.6 委托 117 6.7 小結 119 6.8 練習 120 第7章 調試和錯誤處理 121 7.1 VS和VCE中的調試 121 7.1.1 非中斷(正常)模式下的調試 122 7.1.2 中斷模式下的調試 131 7.2 錯誤處理 139 7.2.1 try...catch...finally 140 7.2.2 列出和配置異常 144 7.2.3 異常處理的注意事項 145 7.3 小結 146 7.4 練習 146 第8章 面向對象編程簡介 147 8.1 什么是面向對象編程 147 8.1.1 什么是對象 148 8.1.2 所有的東西都是對象 151 8.1.3 對象的生命周期 151 8.1.4 靜態和實例類成員 152 8.2 OOP技術 153 8.2.1 接口 153 8.2.2 繼承 155 8.2.3 多態性 156 8.2.4 對象之間的關系 157 8.2.5 運算符重載 159 8.2.6 事件 159 8.2.7 引用類型和值類型 160 8.3 Windows應用程序中的OOP 160 8.4 小結 162 8.5 練習 163 第9章 定義類 164 9.1 C#中的類定義 164 9.2 System.Object 169 9.3 構造函數和析構函數 170 9.4 VS和VCE中的OOP工具 174 9.4.1 Class View窗口 174 9.4.2 對象瀏覽器 176 9.4.3 添加類 177 9.4.4 類圖 177 9.5 類庫項目 179 9.6 接口和抽象類 182 9.7 結構類型 184 9.8 小結 186 9.9 練習 186 第10章 定義類成員 187 10.1 成員定義 187 10.1.1 定義字段 187 10.1.2 定義方法 188 10.1.3 定義屬性 189 10.1.4 在類圖中添加成員 194 10.1.5 重制成員 196 10.1.6 自動屬性 197 10.2 類成員的其他議題 197 10.2.1 隱藏基類方法 198 10.2.2 調用重寫或隱藏的基類方法 199 10.2.3 嵌套的類型定義 200 10.3 接口的實現 201 10.4 部分類定義 204 10.5 部分方法定義 206 10.6 示例應用程序 207 10.6.1 規劃應用程序 207 10.6.2 編寫類庫 208 10.6.3 類庫的客戶應用程序 214 10.7 小結 215 10.8 練習 216 第11章 集合、比較和轉換 217 11.1 集合 217 11.1.1 使用集合 218 11.1.2 定義集合 224 11.1.3 索引符 225 11.1.4 給CardLib添加Cards集合 227 11.1.5 關鍵字值集合和IDictionary 229 11.1.6 迭代器 231 11.1.7 深度復制 236 11.1.8 給CardLib添加深度復制 238 11.2 比較 239 11.2.1 類型比較 240 11.2.2 值比較 244 11.3 轉換 259 11.3.1 重載轉換運算符 259 11.3.2 as運算符 260 11.4 小結 261 11.5 練習 262 第12章 泛型 263 12.1 泛型的概念 263 12.2 使用泛型 264 12.2.1 可空類型 264 12.2.2 System.Collections.Generic 名稱空間 271 12.3 定義泛型 279 12.3.1 定義泛型類 280 12.3.2 定義泛型接口 291 12.3.3 定義泛型方法 291 12.3.4 定義泛型委托 293 12.4 小結 293 12.5 練習 293 第13章 其他OOP技術 295 13.1 ::運算符和全局名稱空間 13.2 定制異常 296 13.2.1 異?;?297 13.2.2 給CardLib添加定制異常 297 13.3 事件 298 13.3.1 什么是事件 298 13.3.2 使用事件 300 13.3.3 定義事件 302 13.4 擴展和使用CardLib 309 13.5 小結 317 13.6 練習 317 第14章 C# 3.0語言的改進 318 14.1 初始化器 318 14.1.1 對象初始化器 319 14.1.2 集合初始化器 320 14.2 類型推斷 323 14.3 匿名類型 325 14.4 擴展方法 328 14.5 ?表達式 333 14.5.1 復習匿名方法 333 14.5.2 把?表達式用于匿名方法 334 14.5.3 ?表達式的參數 337 14.5.4 ?表達式的語句體 337 14.5.5 ?表達式用作委托和表達式樹 338 14.5.6 ?表達式和集合 339 14.6 小結 342 14.7 練習 342 第Ⅱ部分 Windows 編 程 第15章 Windows編程基礎 347 15.1 控件 347 15.1.1 屬性 348 15.1.2 控件的定位、??亢蛯R 349 15.1.3 事件 350 15.2 Button控件 352 15.2.1 Button控件的屬性 352 15.2.2 Button控件的事件 353 15.3 Label和LinkLabel控件 354 15.4 TextBox控件 355 15.4.1 TextBox控件的屬性 355 15.4.2 TextBox控件的事件 356 15.5 RadioButton和CheckBox控件 363 15.5.1 RadioButton控件的屬性 364 15.5.2 RadioButton控件的事件 364 15.5.3 CheckBox控件的屬性 364 15.5.4 CheckBox控件的事件 364 15.5.5 GroupBox控件 365 15.6 RichTextBox控件 368 15.6.1 RichTextBox控件的屬性 368 15.6.2 RichTextBox控件的事件 369 15.7 ListBox和CheckedListBox控件 374 15.7.1 ListBox控件的屬性 375 15.7.2 ListBox控件的方法 376 15.7.3 ListBox控件的事件 376 15.8 ListView控件 378 15.8.1 ListView控件的屬性 378 15.8.2 ListView控件的方法 380 15.8.3 ListView控件的事件 381 15.8.4 ListViewItem 381 15.8.5 ColumnHeader 381 15.8.6 ImageList控件 381 15.9 TabControl控件 388 15.9.1 TabControl控件的屬性 389 15.9.2 使用TabControl控件 389 15.10 小結 392 15.11 練習 392 第16章 Windows Forms的高級功能 393 16.1 菜單和工具欄 393 16.1.1 兩個實質一樣的控件 393 16.1.2 使用MenuStrip控件 394 16.1.3 手工創建菜單 394 16.1.4 ToolStripMenuItem控件的其他屬性 397 16.1.5 給菜單添加功能 397 16.2 工具欄 399 16.2.1 ToolStrip控件的屬性 399 16.2.2 ToolStrip的項 400 16.2.3 StatusStrip控件 405 16.2.4 StatusStripStatusLabel的屬性 405 16.3 SDI和MDI應用程序 407 16.4 創建控件 415 16.4.1 LabelTextbox控件 417 16.4.2 調試用戶控件 420 16.4.3 擴展LabelTextbox控件 421 16.5 小結 424 16.6 練習 424 第17章 使用通用對話框 425 17.1 通用對話框 425 17.2 如何使用對話框 426 17.3 文件對話框 427 17.3.1 OpenFileDialog 427 17.3.2 SaveFileDialog 438 17.4 打印 442 17.4.1 打印結構 442 17.4.2 打印多個頁面 447 17.4.3 PageSetupDialog 449 17.4.4 PrintDialog 451 17.5 打印預覽 455 17.5.1 PrintPreviewDialog 455 17.5.2 PrintPreviewControl 456 17.6 FontDialog和ColorDialog 457 17.6.1 FontDialog 457 17.6.2 ColorDialog 459 17.6.3 FolderBrowserDialog 460 17.7 小結 461 17.8 練習 461 第18章 部署Windows應用程序 463 18.1 部署概述 463 18.2 ClickOnce部署 464 18.3 Visual Studio安裝和部署項目類型 473 18.4 Microsoft Windows安裝程序結構 474 18.4.1 Windows Installer術語 474 18.4.2 Windows Installer的優點 476 18.5 為SimpleEditor創建安裝軟件包 476 18.5.1 規劃安裝內容 476 18.5.2 創建項目 477 18.5.3 項目屬性 478 18.5.4 安裝編輯器 480 18.5.5 File System編輯器 481 18.5.6 File Types編輯器 483 18.5.7 Launch Condition編輯器 485 18.5.8 User Interface編輯器 485 18.6 構建項目 488 18.7 安裝 489 18.7.1 Welcome 489 18.7.2 Read Me 489 18.7.3 License Agreement 490 18.7.4 Optional Files 490 18.7.5 選擇安裝文件夾 491 18.7.6 確認安裝 492 18.7.7 進度 492 18.7.8 結束安裝 493 18.7.9 運行應用程序 493 18.7.10 卸載 493 18.8 小結 493 18.9 練習 494 第Ⅲ部分 Web 編 程 第19章 Web編程基礎 497 19.1 概述 497 19.2 ASP .NET運行庫 498 19.3 創建簡單的Web頁面 498 19.4 服務器控件 504 19.5 事件處理程序 505 19.6 輸入的有效性驗證 509 19.7 狀態管理 512 19.7.1 客戶端的狀態管理 513 19.7.2 服務器端的狀態管理 515 19.8 身份驗證和授權 517 19.8.1 身份驗證的配置 518 19.8.2 使用安全控件 522 19.9 讀寫SQL Server數據庫 524 19.10 小結 530 19.11 練習 531 第20章 Web高級編程 532 20.1 母版頁 532 20.2 站點導航 537 20.3 用戶控件 539 20.4 個性化配置 541 20.4.1 個性化配置組 543 20.4.2 組件的個性化配置 543 20.4.3 定制數據類型中的個性化配置 543 20.4.4匿名用戶的個性化配置 544 20.5 Web Parts 545 20.5.1 WebPartManager控件 546 20.5.2 WebPartZone控件 546 20.5.3 EditorZone控件 548 20.5.4 CatalogZone控件 550 20.5.5 ConnectionsZone控件 551 20.6 JavaScript 554 20.6.1 Script元素 555 20.6.2 變量的聲明 555 20.6.3 定義函數 555 20.6.4 語句 556 20.6.5 對象 556 20.7 小結 560 20.8 練習 560 第21章 Web服務 561 21.1 Web服務推出之前 561 21.1.1 遠程過程調用(RPC) 562 21.1.2 SOAP 563 21.2 使用Web服務的場合 563 21.2.1 賓館旅行社代理應用程序 564 21.2.2 圖書發布應用程序 564 21.2.3 客戶應用程序的類型 564 21.2.4 應用程序的體系結構 564 21.3 Web服務的體系結構 565 21.3.1 可以調用的方法 565 21.3.2 調用方法 566 21.3.3 SOAP和防火墻 567 21.3.4 WS-I基本個性化配置 568 21.4 Web服務和.NET Framework 568 21.4.1 創建Web服務 568 21.4.2 客戶程序 570 21.5 創建簡單的ASP .NET Web服務 571 21.6 測試Web服務 572 21.7 執行Windows客戶程序 574 21.8 異步調用服務 577 21.9 執行ASP .NET客戶程序 580 21.10 傳送數據 581 21.11 小結 584 21.12 練習 584 第22章 Ajax編程 586 22.1 Ajax概述 586 22.2 UpdatePanel控件 587 22.3 Timer控件 591 22.4 UpdateProgress控件 592 22.5 Web服務 594 22.6 擴展控件 598 22.7 小結 600 22.8 練習 600 第23章 部署Web應用程序 601 23.1 Internet Information Services 601 23.2 IIS配置 602 23.3 復制Web站點 604 23.4 發布Web站點 606 23.5 Windows安裝程序 607 23.5.1 創建安裝程序 607 23.5.2 安裝Web 應用程序 609 23.6 小結 610 23.7 練習 610 第Ⅳ部分 數 據 訪 問 第24章 文件系統數據 613 24.1 流 613 24.2 用于輸入和輸出的類 614 24.2.1 File類和Directory類 615 24.2.2 FileInfo類 616 24.2.3 DirectoryInfo類 617 24.2.4 路徑名和相對路徑 618 24.2.5 FileStream對象 618 24.2.6 StreamWriter對象 624 24.2.7 StreamReader對象 626 24.2.8 讀寫壓縮文件 632 24.3 序列化對象 635 24.4 監控文件結構 639 24.5 小結 645 24.6 練習 646 第25章 XML 647 25.1 XML文檔 647 25.1.1 XML元素 647 25.1.2 屬性 648 25.1.3 XML聲明 649 25.1.4 XML文檔的結構 649 25.1.5 XML名稱空間 650 25.1.6 格式良好并有效的XML 651 25.1.7 驗證XML文檔 651 25.2 在應用程序中使用XML 654 25.2.1 XML文檔對象模型 655 25.2.2 選擇節點 663 25.3 小結 670 25.4 練習 671 第26章 LINQ簡介 672 26.1 LINQ的變體 673 26.2 第一個LINQ查詢 673 26.2.1 用var關鍵字聲明結果變量 675 26.2.2 指定數據源:from子句 675 26.2.3 指定條件:where子句 675 26.2.4 指定元素:select子句 676 26.2.5 完成:使用foreach循環 676 26.2.6 延遲執行的查詢 676 26.3使用LINQ方法語法和?表達式 676 26.3.1 LINQ擴展方法 676 26.3.2 查詢語法和方法語法 677 26.3.3 ?表達式 677 26.4 排序查詢結果 679 26.5 orderby子句 680 26.6 用方法語法排序 681 26.7 查詢大型數據集 682 26.8 合計運算符 685 26.9 查詢復雜的對象 688 26.10 投射:在查詢中創建新對象 691 26.11 投射:方法語法 693 26.12 單值選擇查詢 693 26.13 Any和All 694 26.14 多級排序 696 26.15 多級排序方法語法:ThenBy 698 26.16 組合查詢 698 26.17 Take和Skip 700 26.18 First和FirstOrDefault 702 26.19 集運算符 703 26.20 Join查詢 706 26.21 資源和進一步閱讀 707 26.22 小結 707 26.23 練習 707 第27章 LINQ to SQL 709 27.1 對象相關映射 709 27.2 安裝SQL Server和Northwind示例數據 710 27.2.1 安裝SQL Server Express2005 710 27.2.2 安裝Northwind示例數據庫 711 27.3 第一個LINQ to SQL查詢 712 27.4 瀏覽LINQ to SQL關系 717 27.5 進一步探討LINQ to SQL 720 27.6 LINQ to SQL中的組合、排序和其他高級查詢 723 27.7 顯示生成的SQL 725 27.8 用LINQ to SQL綁定數據 729 27.9 用LINQ to SQL更新綁定數據 733 27.10 小結 734 27.11 練習 735 第28章 ADO .NET和LINQ over DataSet 736 28.1 ADO .NET概述 736 28.1.1 ADO .NET名稱的來源 737 28.1.2 ADO .NET的設計目標 738 28.2 ADO .NET類和對象概述 739 28.2.1 提供者對象 739 28.2.2 用戶對象 740 28.2.3 使用System.Data名稱空間 741 28.3 用DataReader讀取數據 742 28.4 用DataSet讀取數據 749 28.4.1 用數據填充DataSet 749 28.4.2 訪問DataSet中的表、行和列 749 28.5 更新數據庫 752 28.5.1 給數據庫添加行 755 28.5.2 刪除行 761 28.6 在DataSet中訪問多個表 762 28.6.1 ADO .NET中的關系 762 28.6.2 用關系導航 763 28.7 XML和ADO .NET 770 28.8 ADO .NET中的SQL支持 773 28.8.1 DataAdapter對象中的 SQL命令 773 28.8.2 直接執行SQL命令 776 28.8.3 調用SQL存儲過程 778 28.9 使用LINQ over DataSet和ADO .NET 780 28.10 小結 784 28.11 練習 784 第29章 LINQ to XML 785 29.1 LINQ to XML函數構造方法 785 29.2 保存和加載XML文檔 789 29.2.1 從字符串中加載XML 791 29.2.2 已保存的XML文檔內容 792 29.3 處理XML片段 792 29.4 通過LINQ to XML生成 XML 794 29.5 查詢XML文檔 798 29.6 小結 804 29.7 練習 804 第Ⅴ部分 其 他 技 術 第30章 屬性 809 30.1 什么是屬性 809 30.2 反射 812 30.3 內置屬性 815 30.3.1 System.Diagnostics.ConditionalAttribute 815 30.3.2 System.Obsolete Attribute 817 30.3.3 System.Serializable Attribute 818 30.3.4 System.Reflection.AssemblyDelaySignAttribute 821 30.4 定制屬性 824 30.4.1 BugFixAttribute 824 30.4.2 System.AttributeUsageAttribute 826 30.5 小結 830 第31章 XML文檔說明 831 31.1 添加XML文檔說明 831 31.1.1 XML文檔說明的注釋 833 31.1.2 使用類圖添加XML文檔說明 839 31.1.3 生成XML文檔說明文件 842 31.1.4 帶有XML文檔說明的應用程序示例 844 31.2 使用XML文檔說明 846 31.2.1 編程處理XML文檔說明 846 31.2.2 用XSLT格式化XML文檔說明 848 31.2.3 文檔說明工具 849 31.3 小結 850 31.4 練習 851 第32章 網絡 852 32.1 聯網概述 852 32.1.1 名稱的解析 855 32.1.2 統一資源標識符 856 32.1.3 TCP和UDP 857 32.1.4 應用協議 857 32.2 網絡編程選項 859 32.3 WebClient 859 32.4 WebRequest和WebResponse 861 32.5 TcpListener和TcpClient 868 32.6 小結 876 32.7 練習 876 第33章 GDI+簡介 877 33.1 圖形繪制概述 877 33.1.1 Graphics類 878 33.1.2 對象的刪除 878 33.1.3 坐標系統 879 33.1.4 顏色 884 33.2 使用Pen類繪制線條 885 33.3 使用Brush類繪制圖形 887 33.4 使用Font 類繪制文本 890 33.5 使用圖像進行繪制 893 33.5.1 使用紋理畫筆繪圖 895 33.5.2 使用鋼筆繪制圖像 897 33.5.3 雙倍緩沖 898 33.6 GDI+的高級功能 900 33.6.1 剪切 900 33.6.2 System.Drawing.Drawing2D 901 33.6.3 System.Drawing.Imaging 901 33.7 小結 901 33.8 練習 902 第 34 章 Windows Presentation Foundation 903 34.1 WPF的概念 904 34.1.1 WPF給設計人員帶來的好處 904 34.1.2 WPF給C#開發人員帶來的好處 906 34.2 基本WPF應用程序的組成 906 34.3 WPF基礎 916 34.3.1 XAML語法 917 34.3.2 桌面和Web應用程序 919 34.3.3 Application對象 920 34.3.4 控件基 920 34.3.5 控件的布局 928 34.3.6 控件的樣式 936 34.3.7 觸發器 941 34.3.8 動畫 942 34.3.9 靜態和動態資源 944 34.4 用WPF編程 949 34.4.1 WPF用戶控件 950 34.4.2 實現依賴屬性 950 34.5 小結 959 34.6 練習 960 第35 章 Windows Communication Foundation 961 35.1 WCF是什么 961 35.2 WCF概念 962 35.2.1 WCF通信協議 962 35.2.2 地址、端點和綁定 963 35.2.3 合同 964 35.2.4 消息模式 965 35.2.5 行為 965 35.2.6 主機 965 35.3 WCF編程 966 35.3.1 定義WCF服務合同 973 35.3.2 自存儲的WCF服務 979 35.4 小結 985 35.5 練習 986 第36章 Windows Workflow Foundation 987 36.1 活動 990 36.1.1 DelayActivity 990 36.1.2 SuspendActivity 991 36.1.3 WhileActivity 992 36.1.4 SequenceActivity 994 36.1.5 定制活動 997 36.2 工作流運行庫 1002 36.3 數據綁 1007 36.4 小結 1010 序言
標簽:
上傳時間: 2013-11-16
上傳用戶:xinyuzhiqiwuwu