PIC單片機C程式設計與實踐

PIC單片機C程式設計與實踐

《PIC單片機C程式設計與實踐》是一本PIC系列單片機C語言開發套用的入門級指導叢書,以美國Microchip(微芯)公司的中級產品PIC16F87X單片機為例,選用CSS公司的C語言編譯器,重點介紹集成開發環境、C語言的開發套用基礎和C語言的開發套用實例等內容,並給出了相應的應用程式。使用PIC16F系列單片機的C語言初級和中高級用戶可以在本書中了解到C語言編譯器的特性和細節;在套用中遇到的一些問題,也可以從書中找到解決的辦法。

基本信息

內容簡介

PIC單片機C程式設計與實踐PIC單片機C程式設計與實踐
PIC單片機C程式設計與實踐PIC單片機C程式設計與實踐
本書內容通俗易懂,實用性強,可供學習PIC單片機C語言開發的有關技術人員和愛好者以及高等院校相關專業的師生閱讀參考。

目錄

第1章什麼是C語言1

1.1什麼是程式1

1.1.1計算機的結構1

1.1.2程式和命令2

1.2二進制和十六進制3

1.3C語言4

1.3.1從彙編語言談起5

1.3.2C語言的歷史5

1.3.3C語言特點5

第2章PIC單片機的基本概念7

2.1什麼是PIC7

2.1.1PIC概要8

2.1.2PIC單片機的結構概要10

2.1.3PIC單片機的存儲器結構11

2.1.4指令結構13

2.1.5特殊功能暫存器15

2.2程式開發環境23

2.2.1基本環境23

2.2.2MPLAB23

2.2.3PIC編程器24

第3章PIC用C語言編譯器25

3.1PIC的C語言編譯器25

3.2CSS公司的C編譯器26

3.2.1CSS公司的C編譯器結構27

3.2.2CCS公司的C編譯器概要28

3.2.3限制事項29

3.3PCM的安裝30

3.3.1PCM的安裝30

3.3.2與MPLAB的集成33

3.4PCM的使用方法34

3.4.1C語言程式設計流程35

3.4.2建立項目35

3.4.3建立源檔案39

3.4.4編譯40

3.5調試方法43

3.5.1在MPLAB環境下的程式調試43

3.5.2根據標準輸入/輸出函式進行調試44

3.6對PIC單片機的寫入操作46

3.6.1PICSTARTPlus的情形46

3.6.2PIC編程器Ver3的情形48

第4章練習用的硬體50

4.1練習用的PIC通用單元A50

4.1.1概要50

4.1.2功能及電路51

4.1.3接口描述51

4.1.4使用的元件53

4.1.5安裝方法53

4.2練習用的PIC通用單元B54

4.2.1概要54

4.2.2功能及電路55

4.2.3接口描述57

4.2.4液晶顯示器的連線57

4.2.5所用元件58

4.2.6安裝60

第5章什麼是C語言61

5.1C程式的基本結構61

5.1.1程式的基本結構61

5.1.2函式、表達式和數據62

5.2程式的格式和記述64

5.2.1格式的規定64

5.2.2編程風格67

5.3main函式71

第6章首先上手試一試74

6.1設備指定與配置74

6.1.1設備指定和#include75

6.1.2配置與#fuses78

6.2輸入/輸出連線埠的控制81

6.2.1PIC的輸入/輸出連線埠81

6.2.2C語言編程82

6.3標準輸入/輸出函式的使用方法88

6.3.1掌握RS232C88

6.3.2printf函式90

第7章預處理器94

7.1預處理器分類和一覽94

7.2符號定義和檔案包含97

7.2.1符號定義的預處理器97

7.2.2檔案包含98

7.3條件編譯99

7.3.1#if語句的用法99

7.3.2#ifdef語句的使用101

7.3.3#error語句的使用方法101

7.4設備特有的控制用預處理器102

7.4.1頁面和程式配置102

7.4.2#inline和#separate105

7.4.3頁面和變數的配置107

第8章程式結構和流程控制函式108

8.13種基本結構108

8.2if語句的使用方法111

8.2.1if語句的格式111

8.2.2if語句的嵌套113

8.2.3條件的表述方法115

8.2.4複合條件的表述方法115

8.3while語句和dowhile語句116

8.3.1while語句117

8.3.2dowhile語句118

8.4for語句的使用方法119

8.5switch語句的使用方法122

8.6break語句和continue語句125

8.6.1break語句126

8.6.2continue語句127

第9章數據類型和運算符131

9.1數據類型的種類和格式131

9.1.1數值常量的格式131

9.1.2變數和數據類型132

9.1.3變數的聲明格式1349.1.4文字編碼和char型135

9.1.5字元型數據的書寫方式和文字排列138

9.2運算符號的使用方法139

9.2.1算術運算符和自動類型變換140

9.2.2關係運算符和邏輯運算符140

9.2.3增量和減量運算符141

9.2.4位運算符和移位運算符142

9.2.5其他運算符143

9.2.6運算符的優先權145

第10章模組化和函式148

10.1程式的模組化148

10.1.1結構化程式設計方法148

10.1.2什麼是好的程式149

10.2函式製作方法150

10.2.1函式的基本書寫方式150

10.2.2引數和返回值151

10.2.3函式的原形說明152

10.3變數的記憶類別和有效範圍154

10.3.1變數的性質和有效範圍154

10.3.2局部變數和全局變數155

10.3.3實際的例子156

第11章標準函式和標準輸入/輸出函式159

11.1標準函式159

11.1.1標準函式表159

11.1.2CCS公司的獨自函式159

11.2標準輸入/輸出函式165

11.2.1標準輸入/輸出函式一覽表165

11.2.2putc函式和getc函式167

11.2.3printf函式的擴展170

11.2.4puts函式和gets函式171

第12章數組和指針173

12.1什麼是數組173

12.1.1數組的格式173

12.1.2數組的使用方法175

12.2字元串的處理177

12.3指針179

12.3.1指針變數180

12.3.2數組和指針182

12.3.3函式的引數和指針184

12.3.4函式的引數和數組185

第13章結構體和聯合體191

13.1結構體191

13.1.1結構體的定義和說明191

13.1.2對結構體各成員的訪問192

13.1.3位欄位193

13.1.4結構數組194

13.1.5結構體指針195

13.2聯合體198

13.3枚舉類型200

第14章內部函式的使用方法202

14.1延時函式202

14.1.1延時函式概要202

14.1.2使用方法203

14.2輸入/輸出引腳的控制205

14.2.1輸入/輸出模式的設定205

14.2.2輸入/輸出引腳控制用內部函式209

14.3動態顯示控制211

14.3.1程式段發光二極體的概要211

14.3.2顯示控制方法212

14.3.3套用實例213

14.4液晶顯示器的控制214

14.4.1液晶顯示器的概要215

14.4.2接口規格217

14.4.3初始設定步驟219

14.4.4液晶顯示器控制程式庫220

14.4.5程式庫使用實例222

14.5中斷處理224

14.5.1中斷概要224

14.5.2引起中斷處理因素225

14.5.3中斷用預處理器227

14.5.4中斷處理的程式設計228

14.5.5實例1230

14.5.6暫存器的讓路等待和回復原狀232

14.5.7實例2233

14.5.8實例3235

14.6定時器0模組的使用方法236

14.6.1定時器0的概要236

14.6.2定時器0用的內部函式238

14.6.3時間間隔測量器的使用方法239

14.6.4定數器套用實例241

14.7定時器1模組的使用方法243

14.7.1定時器1簡介243

14.7.2定時器1的內部函式245

14.7.3基於中斷的時間間隔測量器的實例246

14.8A/D轉換器的使用方法249

14.8.1A/D轉換器簡介249

14.8.2A/D轉換的內部函式252

14.8.3電壓測量實例254

14.8.42通道測量顯示實例256

14.9USART模組的使用方法258

14.9.1USART簡介258

14.9.2USART用內部函式260

14.9.3USART套用舉例(接收中斷實例)263

14.10MSSP模組的使用方法(SPI通信)266

14.10.1SPI通信簡介266

14.10.2SPI用內部函式269

14.10.3SPI通信套用舉例270

14.11MSSP的使用方法(I2C通信)275

14.11.1I2C通信簡介275

14.11.2I2C通信用內部函式280

14.11.3I2C通信實例1(外設EEPROM)282

14.11.4I2C通信實例2(PIC間通信)288

14.12CCP模組的使用方法293

14.12.1捕獲(Capture)模式293

14.12.2比較模式294

14.12.3PWM模式295

14.12.4CCP模組用內部函式297

14.12.5捕捉模式實例298

14.12.6比較模式套用實例300

14.12.7PWM套用實例302

14.13內置EEPROM的使用方法304

14.13.1內置EEPROM簡介304

14.13.2內置EEPROM用內部函式306

14.13.3套用實例306

14.14睡眠模式和喚醒功能310

14.14.1睡眠模式310

14.14.2喚醒功能311

14.14.3喚醒因素的識別312

14.14.4套用實例313

第15章PIC單片機的實時OS317

15.1PICROS簡介317

15.1.1特點和功能317

15.1.2PICROS的構成318

15.1.3任務和狀態轉移319

15.1.4服務函式321

15.2任務的製作方法322

15.2.1任務構成實例1322

15.2.2任務構成實例2323

15.2.3任務構成實例3324

15.2.4任務構成實例4325

15.2.5任務構成實例5326

15.3PICROS主體326

15.3.1全體構成327

15.3.2TCB的構成328

15.3.3任務調度程式的動作329

15.3.4服務函式的動作330

15.3.5定時器0的中斷處理動作331

15.4PICROS的配置331

15.4.1配置檔案(usrconf.h)332

15.4.2任務分配表(tdt.h)334

15.4.3任務連結檔案(tasklink.h)335

15.4.4用戶初始化函式(usrini.c)335

15.4.5MPLAB項目的製作方法336

15.5實際套用舉例337

15.5.1各任務的程式338

15.5.2中斷處理函式342

15.5.3用戶初始化函式343

15.5.4配置用的相關檔案344

15.5.5生成項目346

15.6調試工具348

15.6.1調試工具的功能348

15.6.2使用方法349

書摘

序言

活用PIC單片機說明書出版已經有2年半了,在此期間很多人說都想學習並套用PIC單片機。

在收到的信件中,很多人都希望筆者能對PIC的C語言程式設計進行系統說明,這真是對我的挑戰。

無論從哪方面來說,PIC單片機都是小型的控制器,其結構並不太適合使用C語言。但是也有一些克服這些困難而開發出來的C語言編譯器。利用這些編譯器用C語言進行的程式設計,仍然比用彙編語言進行程式設計輕鬆得多。

文摘

第1章 什麼是C語言

所有的計算機都是通過程式,也就是通過按一定順序記載的語言進行工作的。這種語言因最終使計算機這種機器能夠理解,故稱之為機器語言。

這種程式雖是人們創造,計算機使用,但人們使用機器語言會感到很複雜和消耗時間。因此,人們做了很多嘗試,力圖用和人類相近的語言來記述程式,並不斷取得了進步。在這些嘗試中,很早就得到套用,並且現在也作為主流語言使用的就是C語言。

本章就對這種語言的產生歷史和特點予以說明。

1.1 什麼是程式

計算機的運行就是由外部設備或人來輸入數據,對這些數據進行加工或處理並向外部設備或人輸出數據。根據計算機使用目的,處理的內容會不同,所以即使同樣結構的計算機也可以適應多種場合的需要。這些處理的內容決定了怎樣輸入數據,進行怎樣的處理,又做什麼形式的輸出,這一過程被稱之為程式。

相關詞條

相關搜尋

熱門詞條

聯絡我們