pic单片机c语言程序设计14

就业技能

JOBSEEKERS

作 者

丁锦滔

PIC单片机C语言程序设计(14)

十五、Pic单片机的A/D转换 好的思维方法。

1.Pic16F87X 的 A/D 转换必备知识

在电子技术中,传感器是一种很重要的器件, ⑴ A/D 转 换 控 制 寄 存 器 ADCON1。

传感器的种类也有多种,如温度传感器、光敏传 ADCON 1 是 8 位的可读写的寄存器,如图 59 所

感器、压力传感器……,其特点是能把非电量, 示,其功能是 A/D 转换时,选择芯片引脚输入信

如温度、光度、压力等转换成相关的电量(电流 号的类型(模拟量 A 或数字量 D),以及 A/D 转

或电压)。这些电量都是模拟量,可用 Pic 单片 换结果存放的格式(见下文)。

机的 A/D 转换,将上述的模拟量转换成数字量, ADCON1 的第 6、5、4 位,在 A/D 转换中

再将数字量进行各种处理,如 LED、LCD 显示。 未派上用场,读作“0”。 ADCON1 的第 3、2、

Pic16F87X 系 列 单 片 机, 具 有 A/D 转 换 1、0 位(Bit3、Bit2、Bit1 和 Bit0), 是 管 理

的 功 能。Pic16F876/873 芯 片 为 28 引 脚, 有 Pic16F87X 引脚功能(A 或 D)的选择(可参看

5 个 模 拟 输 入 端 的 10 位 A/D 转 换(5 通 道 ); 相关书藉的 A/D 转换引脚功能选择表,因该表占

Pic16F877 为 40 引脚,有 8 个模拟输入端的 10 用版面多,这里略去),例如在下文 C 程序中,

位 A/D 转 换(8 通 道 )。Pic16F876/873 芯 片 的 设

模拟输入端为 AN0~AN3 ,其引脚是② ~ ⑤脚和 ADCON1=0x8a 时, 选 择 Pic16F873A 的

⑦脚 AN4,几乎占用了 Pic16F876/873 所有的 AN0(RA0)、AN1(RA1)RA4(AN4)、RA5

A 口。由于 Pic 单片机的端口具有复用功能,所 (AN5)为模拟量输入、(AN6、AN7 为数字量输

以上述的模拟输入口不会影响 I/O 端口的通用特 入),AN3、AN2 参考电压设置端(十、一)。

性。 ⑵ A/D 转 换 结 果 寄 存 器 ADRESH、

上述芯片的 A/D 转换,都已模块化,具有 ADRESL。因 Pic16F87X 的 A/D 转换值是 10 位

10 位(二进制的)分辨率,所以完全可以满足 的二进制数(代码),而 A/D 转换的结果是存放

大多数测量精度的要求,此外,还可利用 Pic 单 在指定的结果寄存器中,因结果寄存器是 8 位的,

片机睡眠状态下进行 A/D 转换(利用内部自带的 所 以 A/D 转 换 结 果 的 10 位 数, 利 用 ADRESH

RC 振荡作时钟),因在睡眠模式下,部分数字电 存 放 A/D 的 高 字 节 ;利 用 ADRESL 存 放 A/D

路的开关噪声已停止,所以可获得更高的 A/D 转 的 低 字 节。 存 放 方 法 是 利 用 前 述 的 ADCON1

换精度。 ( 图 59) 的 第 7 位(bit)ADFM进 行 选 择, 当

Pic 单片机的 A/D 转换功能的操作,远比本 令 ADFM=1 时,A/D 转 换 结 果 的 低 8 位 存 放

连载 1~13 中介绍的各种功能的 C 程序要复杂些,

京东方班单片机和c语言,pic单片机c语言程序设计14.pdf相关推荐

  1. pic单片机延时程序C语言,PIC单片机C语言延时程序和循环子程序实现方法

    PIC单片机C语言延时程序和循环子程序实现方法 很多朋友说C中不能精确控制延时时间,不能象汇编那样直观. 其实不然,对延时函数深入了解一下就能设计出一个理想的框价出来. 一般的我们都用 for(x=1 ...

  2. pic1路AD转换c语言,pic单片机的ad转换(实例解析)

    描述 AD转换就是模数转换.顾名思义,就是把模拟信号转换成数字信号.主要包括积分型.逐次逼近型.并行比较型/串并行型.Σ-Δ调制型.电容阵列逐次比较型及压频变换型.A/D转换器是用来通过一定的电路将模 ...

  3. 单片机ad显示程序c语言,pic单片机ad转换c程序分享

    A/D转换器是用来通过一定的电路将模拟量转变为数字量.模拟量可以是电压.电流等电信号,也可以是压力.温度.湿度.位移.声音等非电信号.但在A/D转换前,输入到A/D转换器的输入信号必须经各种传感器把各 ...

  4. pic单片机配置字c语言,PIC单片机配置字说明及使用.pdf

    PIC单片机配置字说明及使用 PIC 单片机器件配置字简介和使用 在PIC系列单片机里,其芯片内部大都有设置一个特殊的程序存储单元,地 址为2007 ,由单片机的用户自由配置,用来定义一些单片机功能电 ...

  5. pic单片机流水灯循环右移c语言,PIC单片机LED流水灯程序

    PIC 单片机 LED流水灯程序 ;************************************************************* include ;*********** ...

  6. pic单片机内部时钟校准c语言,pic单片机时钟配置

    pic单片机时钟配置 已有 1687 次阅读2016-1-2 18:38 |个人分类:发现 还是PIC12F1572,某个io 输出脉冲信号.io置高,置低都是立即数给寄存器,电平竟然要16us才变化 ...

  7. 一点点学pic单片机,如何设计pic单片机中断程序

    pic单片机使用很多,但pic单片机的学习存在一定难度.为帮助大家稳步提高对pic单片机的认识,本文将对pic单片机引脚中断程序设计技巧加以介绍.如果你正在学习pic单片机,或对本文即将讲解的内容存在 ...

  8. lcd12864使用c语言pic单片机,PIC单片机+LCD12864显示汉字程序

    #include #define RS RD2 #define CS2 RD1 #define CS1 RD0 #define E RD4 #define RW RD3 #define BUSY RC ...

  9. lcd12864使用c语言pic单片机,PIC单片机驱动LCD12864液晶显示闪动字体程序

    /**************************************************************************** * 名 称:wr_zb() * 功 能:显示 ...

  10. 把汇编程序翻译成C语言,pic单片机汇编程序翻译成c语言解决办法

    Assembly codeLIST P=16F877; #INCLUDE XMIT_DATA EQU 30H DATA_CNT EQU 31H CCPI_INT_CNT EQU 32H ORG 000 ...

最新文章

  1. 注册界面php mysql_php:用户登录注册并存入数据库的简单网页示例
  2. ida demangled names
  3. PHP stripos strpos,strpos()和stripos()函数的区别
  4. 写程序和做网店的压力都很大
  5. android 短信注册,Android注冊短信验证码功能
  6. linux分区文件 pe,关于linux的磁盘和分区的操作(一)
  7. Python:集合、三元运算符
  8. 『ACM C++』 PTA 天梯赛练习集L1 | 048-49
  9. centos用ifconfig不显示ip地址的解决方法
  10. [线段树实现区间最值]HDU5306 Gorgeous Sequence
  11. ArcGIS10.4下载及安装
  12. Debian7虚拟机安装
  13. keil 生成三角波dac0832_怎么样利用南方CASS三角网法和方格网法进行土方量计算...
  14. 文心一言打开f12后进入空白页面
  15. 当下各种关系数据库管理系统
  16. C语言:输入字符并将它们输出
  17. MySQL学习记录(11.9更新)
  18. 普元软件推动企业应用架构转型互联网
  19. 2.1 - 操作系统的作用、分类
  20. OSI七层模型和TCPIP五层模型

热门文章

  1. redis 一主二从三哨兵
  2. 职业程序员的知识体系
  3. 软件开发生命周期来说明不同的测试的使用情况
  4. union all关联两个不相关的表,按时间排序
  5. Panoply软件安装
  6. ENVI5.3.1使用Landsat 8影像进行图像融合
  7. php 判断语句是一个作用域吗,关于php变量作用域的详细介绍_后端开发
  8. java after 函数_函数周期表丨信息丨值丨ISONORAFTER
  9. 贪吃蛇小游戏(C语言)
  10. 文件存储形式的通讯录