前言
嵌入式技術(shù)正以前所未有的速度向前發(fā)展,嵌入式產(chǎn)品廣泛應(yīng)用于家電、通信、一般工業(yè)乃至航空航天和軍事領(lǐng)域。無論是日常生活還是高端科技領(lǐng)域,應(yīng)用嵌入式技術(shù)的產(chǎn)品幾乎隨處可見。嵌入式系統(tǒng)涵蓋的范圍非常廣,既包括軟件編程,也包括硬件電路設(shè)計(jì),還涵蓋機(jī)械等附屬裝置。嵌入式系統(tǒng)的一般定義為:以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗等嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。嵌入式的概念正在被越來越多的人了解。在這種情況下,就要求相關(guān)開發(fā)人員掌握必備的嵌入式系統(tǒng)設(shè)計(jì)基礎(chǔ)知識和基本技能,不斷提高開發(fā)高端嵌入式系統(tǒng)的能力和素質(zhì),以適應(yīng)信息時(shí)代的需要。
嵌入式領(lǐng)域發(fā)展非?,很多軟硬件技術(shù)出現(xiàn)的時(shí)間都不長,大多數(shù)人沒有條件接觸或進(jìn)入嵌入式行業(yè),更談不上能有機(jī)會接受專業(yè)人士的指導(dǎo)。因此,踏進(jìn)這個(gè)行業(yè)的難度比較大。社會上越來越需要嵌入式開發(fā)人才。對于即將走上工作崗位的大中專學(xué)生、青年技術(shù)工人和廣大電子愛好者來說,他們迫切需要提高自己的能力、豐富自己的工作經(jīng)驗(yàn)。而工作能力和經(jīng)驗(yàn)是課堂上難以學(xué)到的,需要長期的實(shí)踐積累過程。
本書立足于實(shí)踐,系統(tǒng)講述硬件、單片機(jī)和Java的知識。每一章都有具體的例子,可以讓讀者跟著本書的思路進(jìn)行練習(xí),讓讀者快速掌握實(shí)用的經(jīng)驗(yàn)、技巧,大大縮短了學(xué)習(xí)周期。無論是初學(xué)者還是有一定基礎(chǔ)的愛好者,均能在本書中找到自己的著力點(diǎn),依據(jù)書中提供的方法和技巧完成自己的設(shè)計(jì),學(xué)到實(shí)用的技能,為走上工作崗位打下了堅(jiān)實(shí)的基礎(chǔ)。
由于本書涉及的知識面廣,時(shí)間又很倉促,限于編者的水平和經(jīng)驗(yàn),紕漏和不妥之處在所難免,懇請廣大專家和讀者批評指正。
作者
2017年8月
目錄
第1篇硬 件 基 礎(chǔ)第1章手工焊接方法 3
1.1基本焊接方法 3
1.1.1手工焊接工具一覽 3
1.1.2直插式元件的焊接 4
1.1.3貼片式電阻電容的焊接 5
1.1.4貼片式密集引腳芯片的焊接 6
1.2電烙鐵的保養(yǎng) 8
1.3實(shí)際的焊接過程 9第2章認(rèn)識常用元件 12
2.1Datasheet中的硬件知識 12
2.2電阻 13
2.3電容 14
2.4電感 16
2.5發(fā)光二極管 17
2.6二極管 17
2.7肖特基二極管 18
2.8晶體管 18
2.9晶振 18
2.10接線端子 19
2.11繼電器 19
2.12輕觸開關(guān) 20
2.13六角銅柱 20
2.14集成電路芯片 20
2.15萬用表的使用方法 21
2.15.1數(shù)字萬用表的外觀 21
2.15.2電壓的測量 22
2.15.3電流的測量 22
2.15.4電阻的測量 23
2.15.5電容的測量 23
2.15.6二極管的測量 23第3章AD軟件的安裝 24第4章繪制電路原理圖 29
4.1準(zhǔn)備工作 29
4.2新建文件 31
4.2.1新建工程文件 31
4.2.2新建原理圖文件 32
4.3基本配置 32
4.3.1設(shè)置圖紙 32
4.3.2裝載集成元件庫 33
4.4放置元件 34
4.4.1查找元件 34
4.4.2放置元件 35
4.4.3設(shè)置元件屬性 36
4.4.4特殊情況 37
4.5放置導(dǎo)線及網(wǎng)絡(luò)標(biāo)號 38
4.5.1放置導(dǎo)線 38
4.5.2放置網(wǎng)絡(luò)標(biāo)號 38
4.6簡單原理圖繪制練習(xí) 40第5章繪制PCB 42
5.1PCB基礎(chǔ)知識 43
5.1.1PCB組成結(jié)構(gòu) 43
5.1.2PCB的板層 43
5.2準(zhǔn)備工作 44
5.3通過向?qū)蒔CB 44
5.4導(dǎo)入網(wǎng)絡(luò)表 49
5.5手動布局和手動布線 51
5.6補(bǔ)淚滴和覆銅 54
5.6.1補(bǔ)淚滴 54
5.6.2覆銅 54
5.7放置注釋 56
5.8生成Gerber文件 56第6章制作集成元件庫 62
6.1集成元件庫簡介 62
6.2準(zhǔn)備工作 63
6.3新建3種文件 64
6.4繪制原理圖元件庫 65
6.4.1準(zhǔn)備工作 65
6.4.2繪制流程 66
6.5繪制PCB元件庫 69
6.5.1準(zhǔn)備工作 69
6.5.2繪制流程 70
6.6建立聯(lián)系 73
6.7導(dǎo)出集成庫 75第7章STM32開發(fā)板制作實(shí)例 76
7.1硬件設(shè)計(jì)方法總結(jié) 76
7.2準(zhǔn)備工作 77
7.3制作集成元件庫 79
7.4繪制電路原理圖 79
7.5繪制PCB和生成Gerber文件 82第2篇單片機(jī)基礎(chǔ)第8章單片機(jī)的基本概念 87
8.1單片機(jī)概述 87
8.1.1單片機(jī)是什么 87
8.1.2單片機(jī)能做什么 87
8.1.3如何學(xué)習(xí)單片機(jī) 87
8.2開發(fā)板介紹 88
8.3Keil軟件的使用及程序下載 88
8.3.1如何使用Keil軟件 88
8.3.2程序的下載 91第9章點(diǎn)亮LED燈 94
9.1點(diǎn)亮LED燈的原理 94
9.2程序?qū)嵗?94
9.2.1點(diǎn)亮對應(yīng)的LED燈 95
9.2.2流水燈 96第10章中斷及定時(shí)器的原理及應(yīng)用 97
10.1中斷 97
10.1.1中斷概述 97
10.1.2中斷的使用 97
10.1.3程序?qū)嵗?98
10.2定時(shí)器 99
10.2.1定時(shí)器概述 99
10.2.2定時(shí)器的應(yīng)用 100
10.2.3程序?qū)嵗?101第11章舵機(jī)的應(yīng)用 103
11.1舵機(jī)概述 103
11.2舵機(jī)的控制 103
11.3程序?qū)嵗?104第12章串口通信 107
12.1串口概述 107
12.2串口的應(yīng)用 107
12.2.1串口的引腳介紹 107
12.2.2串口控制寄存器設(shè)置 107
12.3程序?qū)嵗?108
12.3.1計(jì)算機(jī)發(fā)送數(shù)據(jù)到單片機(jī) 108
12.3.2計(jì)算機(jī)接收單片機(jī)發(fā)送的數(shù)據(jù) 109第13章程序?qū)崙?zhàn) 111
13.1實(shí)例一: 8字小車 111
13.2實(shí)例二: 藍(lán)牙遙控小車 114第3篇Java基礎(chǔ)第14章Java概述 121
14.1Java簡介 121
14.2Java環(huán)境搭建 121
14.2.1JDK 121
14.2.2JRE 121
14.2.3JDK的安裝步驟 122
14.3Hello World小程序 126第15章項(xiàng)目初始 128
15.1MyEclipse 128
15.1.1MyEclipse簡介 128
15.1.2MyEclipse的安裝 128
15.1.3基于MyEclipse(IDE)的Java開發(fā) 131
15.2建立空項(xiàng)目 132
15.3布置第一個(gè)頁面 137
15.3.1相關(guān)軟件下載安裝 137
15.3.2布置簡單的頁面 140
15.3.3為頁面添加圖片 144
15.3.4表格的使用 144
15.3.5用框架進(jìn)行頁面布局 146
15.4頁面的跳轉(zhuǎn) 149
15.5在頁面中讀寫數(shù)據(jù) 151第16章數(shù)據(jù)庫連接及操作 153
16.1Navicat for MySQL 153
16.1.1Navicat for MySQL簡介 153
16.1.2Navicat for MySQL的安裝 153
16.2連接數(shù)據(jù)庫 156
16.3執(zhí)行SQL語句 159
16.4保存執(zhí)行記錄并與頁面交互 159第17章SQL語句 160第18章MySQL 162
18.1MySQL 162
18.1.1MySQL簡介 162
18.1.2MySQL數(shù)據(jù)庫的安裝 162
18.2數(shù)據(jù)庫相關(guān)操作 168
18.2.1建立數(shù)據(jù)庫 168
18.2.2建表 169
18.2.3數(shù)據(jù)導(dǎo)入導(dǎo)出 170附錄AJava程序示例 171
A.1注冊程序 171
A.2登錄程序 179
第5章繪制PCB
學(xué)完本章之后能做的事
學(xué)會通過向?qū)蒔CB文件。
學(xué)會手動布線的方法。
學(xué)會生成制板廠家需要的Gerber文件。
讀者學(xué)完本章之后,能夠根據(jù)已經(jīng)畫好的電路原理圖生成PCB文件,在PCB文件中進(jìn)行手動布局布線,最終輸出Gerber文件。用戶只需將Gerber文件發(fā)給廠家,廠家就能制作出用戶設(shè)計(jì)的電路板了。
按照本章步驟操作后,最終可以生成的文件如圖5.1至圖5.3所示。
圖5.1最終生成的文件
圖5.2最終生成的PCB圖
圖5.3最終生成的Gerber文件
5.1PCB基礎(chǔ)知識〖1〗5.1.1PCB組成結(jié)構(gòu)電路板通過印制導(dǎo)線、焊盤及金屬化過孔等來實(shí)現(xiàn)元器件引腳之間的電氣連接。由于電路板上的導(dǎo)電圖形(如焊盤、銅膜導(dǎo)線和過孔等)以及說明文字(如元件輪廓、序號和型號等)均通過印制方法實(shí)現(xiàn),因此得名PCB板(Printed Circuit Board,印制電路板)簡稱印制板。典型的PCB如圖1.9所示。
設(shè)計(jì)人員平時(shí)用得最多的是雙面板。雙面板的結(jié)構(gòu)如圖5.4所示;迳舷聝擅婢灿秀~膜,因此上下兩面都會有導(dǎo)電圖形。這些導(dǎo)電圖形中除了焊盤、印制導(dǎo)線之外,還有用于連接上下兩面印制導(dǎo)線的金屬化過孔。雙面板往往需要制作過孔,生產(chǎn)工藝比單面板復(fù)雜,成本也比單面板高。
圖5.4雙面板
5.1.2PCB的板層
AD軟件的PCB提供了若干種不同類型的工作層。下面介紹兩個(gè)常用的層。
1. 信號層
信號層(signal layer)主要用來放置元件(頂層或底層)、導(dǎo)線等與電氣信號有關(guān)的對象。常用的為頂層(top layer)和底層(bottom layer)。信號層的頂層主要用于放置元件和導(dǎo)線,又稱為元件層。底層主要用于放置導(dǎo)線,也可放置元件。中間層只能用于放置導(dǎo)線。
2. 絲印層
絲印層(silkscreen layer)主要用于放置元件的外形輪廓線、元件編號和其他信息參數(shù)。AD軟件提供了兩個(gè)絲印層: 頂層絲印層(top overlay)和底層絲印層(bottom overlay)。
5.2準(zhǔn)備工作
第一項(xiàng)準(zhǔn)備工作: 修改AD軟件界面視圖。
這一操作已經(jīng)在4.1節(jié)詳細(xì)講解過了。最終的要求是保證“庫”、Files和Projects這3個(gè)常用面板的存在。這會給后續(xù)的繪制帶來很多的方便。
第二項(xiàng)準(zhǔn)備工作: 繪制電路原理圖文件。
必須先繪制電路原理圖,才能生成與之對應(yīng)的PCB文件。本章用到的電路原理圖保存在“4.3 新建文件”文件夾的名為ADtest.SchDoc的電路原理圖文件中(該文件保存的位置為D:\\MyProject\\AD\\ADtest\\SCH),并且ADtest.SchDoc已經(jīng)被添加到工程文件ADtest.PrjPcb中。具體信息如圖5.5和圖5.6所示。