第1章 功能定義
第2章 方案選定
第3章 電路原理圖設計
3.1 電路設計基本知識
3.1.1 Protel基本操作
3.1.2 Protel DDB文件的組成
3.1.3 Protel中各種文件之間的關系
3.2 建立自己的庫
3.2.1 原理圖庫定義
3.2.2 元件封裝庫定義
3.3 原理圖層次設計
3.4 MP3原理圖設計
3.4.1 如何進行原理圖設計
3.4.2 AT89C51SND1最小系統設計
第4章 采購元件
4.1 生成元件清單
4.2 購買元件
第5章 印制電路板設計
5.1 PCB設計的基本流程
5.2 元件布置
5.2.1 元件分類
5.2.2 確定電路板外形
5.2.3 布置元件
5.3 手動布線
5.4 自動布線
5.5 設計結果檢查及調整
第6章 電路板加工
6.1 電路板加工的基本概念
6.2 電路板加工中的註意事項
6.3 實驗電路板的使用
第7章 電路焊接與硬件調試
7.1 電路焊接基本知識
7.1.1 焊接必備工具
7.1.2 元件焊接基本方法
7.2 電路板調試
7.2.1 焊接與調試方案的制定
7.2.2 電源系統調試
7.2.3 單片機最小系統調試
7.2.4 外圍接口設備調試
7.2.5 U盤功能調試
7.2.6 D/A轉換及音頻放大電路調試
7.2.7 MP3功能與U盤功能的整合
小結
第二篇 C51程序設計
第8章 C51程序設計基本概念
8.1 機器語言、匯編語言與高級語言
8.2 程序編譯與鏈接
8.3 單片機固件執行過程
8.4 單任務與多任務
8.5 單片機程序與PC軟件
8.6 C51程序設計基本流程
第9章 C51程序設計初步
9.1 數據類型
9.1.1 數據的存儲方式
9.1.2 特殊功能寄存器
9.1.3 位尋址
9.2 運算符
9.2.1 賦值運算符與關系運算符
9.2.2 增量與減量運算符:++、——
9.2.3 邏輯運算符
9.2.4 位運算符
9.2.5 復合賦值運算符
9.2.6 條件運算符
9.2.7 指針與地址運算符
9.3 語句
9.3.1 C51語句的種類
9.3.2 程序結構語句
第10章 C精華:函數與指針
10.1 函數
10.1.1 聲明與定義
10.1.2 函數的調用形式
10.1.3 函數的參數與函數的返回值
10.1.4 實際參數的傳遞方式
10.2 數組與指針
10.2.1 數組
10.2.2 指針
10.2.3 數組的指針
10.2.4 指針的地址計算
第11章 C51程序設計中的技巧
11.1 模塊化思想
11.2 結構化程序設計
11.3 軟硬件接口的技巧
11.4 程序結構與框架
11.5 及時備份
11.6 C51程序設計中常見陷阱
第12章 硬件接口程序設計與調試
12.1 程序調試方法
12.2 程序調試的步驟
12.3 鍵盤調試
12.4 Flash接口調試
第13章 MP3程序設計過程
13.1 MP3播放器部分的設計
13.2 MP3與U盤功能的整合
13.3 MP3功能按鈕設計
小結
第三篇 USB海量存儲設備(U盤)設計
第14章 無處不在的USB
14.1 包羅萬象的USB設備
14.2 USB何德何能
14.3 設備的連接方式
第15章 計算機通信基本概念
15.1 串行通信
15.2 並行通信
第16章 USB通信基本原理
16.1 通用串行總線
16.2 信號在USB總線上的傳遞
16.3 USB通信的完全實現
第17章 USB通信數據流模型
17.1 總線構成
17.2 USB通信流
17.3 傳輸類型
17.4 數據轉換與封裝
第18章 USB Mass Storage、Bulk_Only與SCSI
18.1 USB Mass Storage協議
18.1.1 設備描述符
18.1.2 配置描述符
18.1.3 接口描述符
18.1.4 端點描述符
18.1.5 傳輸協議和命令塊規範
18.2 Bulk_Only傳輸協議
18.3 SCSI指令集
第19章 Flash存儲與文件系統
19.1 Flash存儲器
19.1.1 Flash盤的FAT結構
19.1.2 Flash的讀寫
19.2 FAT16文件系統
19.2.1 FAT文件系統結構
19.2.2 硬盤結構
第20章 海量存儲設備設計流程
20.1 系統結構、功能定義
20.2 USB接口芯片的選擇
20.3 與USB接口和MCU的接口電路
20.4 固件編程
20.5 設備調試
20.6 PC端驅動程序開發
20.7 系統聯合調試
第21章 USB設備的C語言程序設計
21.1 U盤固件程序結構框架
21.2 接口芯片初始化編程
21.2.1 時鐘設置和控制器使能
21.2.2 端點設置
21.3 設備配置階段程序設計
21.4 批量傳輸階段(Bulk_Only)程序設計
21.4.1 Bulk_Out端點數據處理
21.4.2 Bulk_In端點狀態處理
21.5 SCSI命令集處理
21.5.1 SCSI命令集處理
21.5.2 讀U盤處理
21.5.3 寫U盤處理
第22章 USB通信的調試方法
22.1 USB調試的特點
22.2 USB調試手段
22.2.1 串口
22.2.2 BusHound
22.3 U盤的調試步驟
步驟1:測試開發環境
步驟2:測試USB寄存器讀寫與USB通信中斷產生
步驟3:建立USB標準請求處理框架
步驟4:處理各USB標準請求
步驟5:建立Bulk_Out端點數據處理框架
步驟6:處理各SCSI請求