《案例解说单片机C语言开发 基于PIC+Proteus仿真》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:程国钢编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2013
  • ISBN:7121214745
  • 页数:404 页
图书介绍:

第1章 PIC16F87XA应用基础 1

1.1 PIC16F87XA的体系结构 1

1.1.1 PIC16F87XA的内核 3

1.1.2 PIC16F87XA的存储器体系 6

1.1.3 PIC16F87XA的系统时钟 13

1.1.4 PIC16F87XA的电源管理和休眠模式 14

1.1.5 PIC16F87XA的复位 15

1.1.6 PIC16F87XA的外部引脚封装 16

1.1.7 PIC16F87XA的中断系统 19

1.1.8 PIC16F87XA的配置寄存器 24

1.2 PIC16F87XA中的C语言 25

1.2.1 PIC16F87XA中C语言的数据类型、运算符和表达式 25

1.2.2 PIC16F87XA中C语言的结构 28

1.2.3 PIC16F87XA中C语言的函数 29

1.2.4 PIC16F87XA中C语言的数组和指针 30

1.2.5 PIC16F87XA中C语言的自构造类型 32

1.3 MPLAB集成开发环境 34

1.3.1 MPLAB集成开发环境应用基础 34

1.3.2 MPLAB的工作界面 37

1.3.3 MPLAB的菜单栏 38

1.3.4 MPLAB的工具栏 43

1.3.5 MPLAB的状态栏 45

1.3.6 MPLAB的库函数 46

1.3.7 使用MPLAB 46

1.4 HI-TECH ANSI C Compiler C的一些说明 52

1.4.1 一个完整的PIC单片机C语言程序的构成 52

1.4.2 乘、除法运算和浮点数 52

1.4.3 关于变量的强制类型转换 52

1.4.4 常量和变量的关键字 53

1.4.5 位变量和可位寻址寄存器 55

1.4.6 绝对变量 55

1.4.7 在C语言中使用汇编语言 55

1.4.8 头文件pic.h和pic1687xa.h 56

第2章 Proteus硬件仿真环境 72

2.1 Proteus应用基础 72

2.1.1 Proteus的界面 73

2.1.2 Proteus支持的文件格式 74

2.1.3 Proteus的菜单 74

2.1.4 Proteus的快捷工具栏和工具箱 87

2.2 使用Proteus 89

2.3 Proteus中的PIC16F877A 91

2.4 Proteus和MPLAB的联合调试应用实例 92

第3章 Proteus中的PIC16F87XA内部基础资源应用实例 98

3.1 PIC16F87XA的I/O引脚应用实例 98

3.1.1 I/O引脚基础 98

3.1.2 I/O引脚输出高低脉冲电平应用实例 100

3.2 PIC16F87XA的外部中断/引脚状态变化应用实例 104

3.2.1 外部中断应用基础 104

3.2.2 外部中断控制I/O引脚输出应用实例 104

3.2.3 引脚状态变化中断应用基础 107

3.2.4 引脚状态变化中断应用实例 107

3.3 PIC16F87XA的定时器应用实例 110

3.3.1 定时器基础 111

3.3.2 定时器TMR0控制I/O引脚输出方波应用实例 116

3.3.3 定时器TMR0中断模拟外部中断应用实例 118

3.3.4 定时器TMR1控制I/O引脚输出方波应用实例 121

3.3.5 定时器TMR2控制I/O引脚输出方波应用实例 124

3.4 PIC16F87XA的CCP模块应用实例 126

3.4.1 CCP模块基础 126

3.4.2 CCP的捕捉工作模式应用实例 129

3.4.3 CCP的比较工作模式应用实例 132

3.4.4 CCP的PWM工作模式应用实例 134

3.5 PIC16F87XA的USART模块应用实例 135

3.5.1 USART模块基础 135

3.5.2 PIC16F87XA串口应用实例 140

3.6 PIC16F87XA的SPI总线接口应用实例 146

3.6.1 SPI总线接口基础 146

3.6.2 PIC16F87XA的SPI总线数据通信应用实例 149

3.7 PIC16F87XA的I2C总线接口应用实例 156

3.7.1 I2C总线接口基础 156

3.7.2 PIC16F87XA的I2C总线数据通信应用实例 162

第4章 Proteus中的PIC16F87XA人机交互通道应用实例 164

4.1 发光二极管应用实例 164

4.1.1 器件基础 164

4.1.2 应用实例设计分析 166

4.1.3 应用实例的代码 167

4.1.4 应用实例的仿真结果和说明 168

4.2 单位数码管应用实例 168

4.2.1 器件基础 169

4.2.2 应用实例设计分析 171

4.2.3 应用实例的代码 172

4.2.4 应用实例的仿真结果和说明 173

4.3 多位数码管应用实例 174

4.3.1 器件基础 174

4.3.2 应用实例设计分析 176

4.3.3 应用实例的代码 177

4.3.4 应用实例的仿真结果和说明 179

4.4 MAX7219应用实例 180

4.4.1 器件基础 180

4.4.2 应用实例设计分析 184

4.4.3 应用实例的代码 186

4.4.4 应用实例的仿真结果和说明 188

4.5 1602液晶应用实例 189

4.5.1 器件基础 189

4.5.2 应用实例设计分析 192

4.5.3 应用实例的代码 194

4.5.4 应用实例的仿真结果和说明 196

4.6 独立按键应用实例 197

4.6.1 器件基础 197

4.6.2 应用实例设计分析 199

4.6.3 应用实例的代码 200

4.6.4 应用实例的仿真结果和说明 202

4.7 行列扫描键盘应用实例 203

4.7.1 器件基础 203

4.7.2 应用实例设计分析 204

4.7.3 应用实例的代码 205

4.7.4 应用实例的仿真结果和说明 208

4.8 拨码开关应用实例 209

4.8.1 器件基础 209

4.8.2 应用实例设计分析 210

4.8.3 应用实例的代码 211

4.8.4 应用实例的仿真结果和说明 213

第5章 Proteus中PIC16F87XA的信号采集通道应用实例 215

5.1 PIC16F87XA的内置比较器模块应用实例 215

5.1.1 内置比较器模块基础 215

5.1.2 参考电压模块应用实例 218

5.1.3 比较器模块应用实例(一) 223

5.1.4 比较器模块应用实例(二) 224

5.2 PIC16F87XA的内置A/D模块应用实例 227

5.2.1 内置A/D模块基础 227

5.2.2 A/D模块应用实例 230

5.3 ADC0832应用实例 234

5.3.1 器件基础 234

5.3.2 应用实例设计分析 237

5.3.3 应用实例的代码 238

5.3.4 应用实例的仿真结果和说明 242

5.4 DS12C877应用实例 243

5.4.1 器件基础 243

5.4.2 应用实例设计分析 247

5.4.3 应用实例的代码 248

5.4.4 实例的仿真结果和说明 253

5.5 DS1302应用实例 254

5.5.1 器件基础 254

5.5.2 应用实例设计分析 256

5.5.3 应用实例的代码 258

5.5.4 应用实例的仿真结果和说明 265

5.6 DS18B20应用实例 265

5.6.1 器件基础 265

5.6.2 应用实例设计分析 269

5.6.3 应用实例的代码 270

5.6.4 应用实例的仿真结果和说明 275

5.7 TC77应用实例 276

5.7.1 器件基础 276

5.7.2 应用实例设计分析 279

5.7.3 应用实例的代码 280

5.7.4 应用实例的仿真结果和说明 283

第6章 Proteus中的PIC16F87XA信号输出通道应用实例 284

6.1 DAC0832应用实例 284

6.1.1 器件基础 284

6.1.2 应用实例设计分析 286

6.1.3 应用实例的代码 287

6.1.4 应用实例的仿真结果和说明 288

6.2 74HC164应用实例 289

6.2.1 器件基础 289

6.2.2 应用实例设计分析 290

6.2.3 应用实例的代码 291

6.2.4 应用实例的仿真结果和说明 293

6.3 74HC165应用实例 293

6.3.1 器件基础 294

6.3.2 应用实例设计分析 295

6.3.3 应用实例的代码 296

6.3.4 应用实例的仿真结果和说明 297

6.4 74HC595应用实例 298

6.4.1 器件基础 298

6.4.2 应用实例设计分析 300

6.4.3 应用实例的代码 301

6.4.4 应用实例的仿真结果和说明 304

6.5 8255A应用实例 304

6.5.1 器件基础 304

6.5.2 应用实例设计分析 307

6.5.3 应用实例的代码 308

6.5.4 应用实例的仿真结果和说明 310

第7章 Proteus中的PIC16F87XA存储器应用实例 312

7.1 PIC16F87XA内部E2PROM和Flash ROM应用实例 312

7.1.1 E2PROM和Flash ROM基础 312

7.1.2 E2PROM读/写应用实例 315

7.2 外部RAM芯片6264应用实例 317

7.2.1 器件基础 317

7.2.2 应用实例设计分析 319

7.2.3 应用实例的代码 320

7.2.4 应用实例的仿真结果和分析 322

7.3 外部E2PROM芯片24C04A应用实例 322

7.3.1 器件基础 323

7.3.2 应用实例设计分析 324

7.3.3 应用实例的代码 324

7.3.4 应用实例的仿真结果和分析 329

第8章 Proteus中的PIC16F87XA执行机构应用实例 330

8.1 三极管应用实例 330

8.1.1 器件基础 330

8.1.2 应用实例设计分析 331

8.1.3 应用实例的代码 333

8.1.4 应用实例的仿真结果和说明 334

8.2 ULN2803应用实例 335

8.2.1 器件基础 335

8.2.2 应用实例设计分析 336

8.2.3 应用实例的代码 337

8.2.4 应用实例的仿真结果和说明 339

8.3 光电隔离器应用实例 339

8.3.1 器件基础 339

8.3.2 应用实例设计分析 341

8.3.3 应用实例的代码 342

8.3.4 应用实例的仿真结果和说明 343

8.4 直流电动机应用实例 343

8.4.1 器件基础 343

8.4.2 应用实例设计分析 344

8.4.3 应用实例的代码 346

8.4.4 应用实例的仿真结果和说明 348

8.5 步进电机应用实例 349

8.5.1 器件基础 349

8.5.2 应用实例设计分析 351

8.5.3 应用实例的代码 352

8.5.4 应用实例的仿真结果和说明 356

8.6 继电器应用实例 356

8.6.1 器件基础 356

8.6.2 应用实例设计分析 357

8.6.3 应用实例的代码 358

8.6.4 应用实例的仿真结果和说明 360

8.7 蜂鸣器应用实例 360

8.7.1 器件基础 360

8.7.2 应用实例设计分析 362

8.7.3 应用实例的代码 363

8.7.4 应用实例的仿真结果和说明 365

第9章 Proteus中的PIC16F87XA通信应用实例 366

9.1 MAX232应用实例 366

9.1.1 器件基础 366

9.1.2 应用实例设计分析 368

9.1.3 应用实例的代码 369

9.1.4 实例的仿真结果和说明 369

9.2 SN75179应用实例 370

9.2.1 器件基础 370

9.2.2 应用实例设计分析 371

9.2.3 应用实例的代码 373

9.2.4 实例的仿真结果和说明 375

9.3 MAX487应用实例 376

9.3.1 器件基础 376

9.3.2 应用实例设计分析 377

9.3.3 应用实例的代码 379

9.3.4 实例的仿真结果和说明 379

第10章 在Proteus中设计PIC16F87XA的应用系统 380

10.1 PIC16F87XA综合应用实例设计基础 380

10.2 呼吸灯应用实例 384

10.2.1 呼吸灯的需求分析和系统设计 384

10.2.2 呼吸灯的硬件设计 385

10.2.3 频率计的软件设计 386

10.2.4 实例的仿真结果和总结 388

10.3 简易压力计应用实例 389

10.3.1 简易压力计的需求分析和系统设计 389

10.3.2 简易压力计的硬件设计 389

10.3.3 简易压力计的软件设计 391

10.3.4 实例的仿真结果和总结 395

10.4 仓库自动通风系统应用实例 395

10.4.1 仓库自动通风系统的需求分析和系统设计 396

10.4.2 仓库自动通风系统的硬件设计 396

10.4.3 仓库自动通风系统的软件设计 398

10.4.4 实例的仿真结果和总结 404