pic1路AD转换c语言,PIC单片机AD转化器编程方法

本文详细介绍了如何在PIC单片机中配置和使用ADC模块。首先,需要设置ADCON1寄存器以选择输入通道、参考电压和数据格式。接着,通过ADCON0设置工作模式和时钟源,并启用AD转换功能。如果需要中断功能,还需设置中断使能位。转换前的采样时间约为10-20us,且信号源内阻不应超过10K。启动转换后,可通过软件循环或中断等待转换完成,然后读取AD转换结果。在连续转换时,注意添加适当的等待时间。
摘要由CSDN通过智能技术生成

原标题:PIC单片机AD转化器编程方法

要使用好ADC模块首先要对ADC模块进行初始化设置,这些设置需要包括以下内容:

1、设置ADC模块端口和数据格式

通过设置控制寄存器ADCON1设置引脚功能为输入信道,参考电压接入方式,通过数字IO引脚和设置转换结果的存放格式。

2、设置ADC模块工作方式

通过控制寄存器ADCON0选中某一条模拟输入信道,设置AD转换时钟源以及开启AD转换功能。

3、如果需要中断功能,应该设置AD中断使能位

清除ADC模块中断标志位ADIF,设置ADC模块中断使能位ADIE=1,设置中断使能位PEIE=1和全局中断使能位GIE=1.

4、等待所需要的采样时间

采样时间大约是10~20us,影响采样时间的主要因素之一是模拟信号源内阻,信号源内阻的最大不得超过10K。

5、将控制位GO/DONE置1,开始AD转换。

6、等待AD转换完成,可以通过以下两种方法之一来判断:

方法一:软件循环查询状态位兼控制位GO/DONE是否硬件自动清零或中断标志位ADIF是否被硬件自动置一。

方法二:等待中断请求。在AD转换完成后,ADIF位被置一,发出中断请求。

7、读取AD转换结果寄存器ADRESH,ADRESL:

如果使用中断标志,需要将ADIF清零。

8、如果需要继续转换,根据实际要求重新从第二步或第三步开始

在转换完成后,下一次采样开始前,需加2T的等待时间约是3.2us(T为AD每位转换时间)。

责任编辑:

本书所附光盘跟目录下包含以下子目录: ● C语言程序例程。该子目录包括以下子程序: ——AD程序实现模拟量到数字量的转换功能; ——CAN程序实现CAN总线通讯功能; ——keyboard_check程序实现键盘的扫描查询方式输入; ——keyboard_disturb程序实现PORTB的"电平变化中断"进行键盘的输入; ——led0-8程序实现在8个LED上依次显示1~8数字; ——PWM程序用于使CCP1模块产生分辨率为10位的PWM波形,占空比为50%; ——RS-232程序通过RS-232接口来完成PC计算机与单片机之间的通信; ——simple_POARD程序为外围功能模块简单应用实例,点亮与PORTD口相连的八个发光二极管; ——stopwatch程序实现计时秒表功能,时钟显示范围00.00~99.99秒,分辨度为0.01秒; ——switchinput程序用于开关量的输入(采用SPI总线),并显示在与D口相连的LED上; ——wakeup程序实现PIC18F458的休眠工作方式,并由实验板上的按键产生"电平变化中断"将其从休眠状态中激活; ——WDT程序实现"看门狗"WDT的功能; ——Yejing程序实现液晶显示的接口和显示功能。 ● 汇编语言程序例程。该子目录包括以下子程序: ——AD程序实现模拟量到数字量的转换功能; ——CAN程序实现CAN总线通讯功能; ——CAN2程序是优化的程序,同样实现CAN总线通讯功能; ——keyboard_check程序实现键盘的扫描查询方式输入; ——keyboard_disturb程序实现PORTB的"电平变化中断"进行键盘的输入; ——led0-8程序实现在8个LED上依次显示1~8数字; ——PWM程序用于使CCP1模块产生分辨率为10位的PWM波形,占空比为50%; ——RS-232程序通过RS-232接口来完成PC计算机与单片机之间的通信; ——simple_POARD程序为外围功能模块简单应用实例,点亮与PORTD口相连的八个发光二极管; ——stopwatch程序实现计时秒表功能,时钟显示范围00.00~99.99秒,分辨度为0.01秒; ——switchinput程序用于开关量的输入(采用SPI总线),并显示在与D口相连的LED上; ——wakeup程序实现PIC18F458的休眠工作方式,并由实验板上的按键产生"电平变化中断"将其从休眠状态中激活; ——WDT程序实现"看门狗"WDT的功能; ——Yejing程序实现液晶显示的接口和显示功能。 ● MPLAB及C18安装使用简介。 ● 建立工程项目实例。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值