欢迎来到天天文库
浏览记录
ID:33519857
大小:729.50 KB
页数:47页
时间:2019-02-26
《218 通过4通道ad转换测量电压》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、2.18通过4通道A/D转换测量电压功能:A/D转换器2。18。1特性在本程序中,A/D转换器用于通过4路A/D转换测量电压。如图2.82所示,H8/3664系列单片机的输入电压通过4个通道输入,并将结果A/D转换结果存储在RAM中。图2.82通过4通道A/D转换测量电压图中英文译文:Inputvoltagechannel:输入电压通道2。18。2所用功能说明在这个示例程序中,使用A/D转换器通过4个通道的A/D转换测量电压。图2.83时A/D转换器的方块图。下面详细说明方块中的各元素。l在这个示例程序中,每个通道的A/D转换时间被设置为12.4微秒
2、。lA/D数据寄存器(ADDRA到ADDRD)时4个16位只读寄存器,用于存储A/D转换的结果。低6位通常位0。由于CPU和A/D转换器间的数据总线宽为8位,因此只有高位字节能直接被CPU读取,低位字节只能通过一个临时寄存器读取。当读取ADDR中的数据时,只能读取高位字节或以字方式读取。每个ADDR被初始化为H’0000。lA/D控制/状态寄存器ADCSR中包含着A/D转换器的控制维和转换结束标志位。l模拟输入管脚0到7(AN0到AN7)式输入电压通道0到7的输入管脚。lAVcc管脚是模拟模块的电源和参考电压管脚。lAVss管脚是模拟模块的接地点和参
3、考电压。l在这个示例程序中,通过4个通道的A/D转换测量模拟电压输入管脚AN0到AN3输入的电压。图2.83A/D转换器图中英文译文:AnalogInputpin:模拟量输入管脚AnalogInput:模拟量输入AnalogInputsetting:输入模拟量设置A/Dconversiontimesetting:A/D转换时间设置A/Dconversionend:A/D转换结束EnableofA/Dconversiontobestartedbyexternaltriggerinput:允许通过输入量触发启动A/D转换A/Dconversionresu
4、lt:A/D转换结果DisableofA/Dconverterinterruptrequests:禁止A/D转换中断申请Analogpowersupply:模拟量电源Analogground:模拟量接地端A/Dcontrol/statusregister:A/D转换控制/状态寄存器A/Dcontrolregister:A/D转换控制寄存器A/Dregisters:A/D转换数据寄存器ReadingA/Dconversionresult:读取A/D转换结果表2.84列出了这个示例程序中所使用的功能配置。通过配置表2.84中列出的这些功能就能通过4个通道
5、的A/D转换测量电压。表2.84功能配置功能描述ADCSR设置A/D转换的开始,结束,状态和转换时间,选择模拟输入管脚ADDRA到ADDRD存储A/D转换结果AN0到AN7输入电压通道0到7的输入管脚(在这个程序中,只使用了AN0到AN3)AVcc模拟模块的电源和参考电压AVss模拟模块的接地点和参考电压2。18。3运行说明图2.84表示出了这个示例程序的运行原理。图2.84中表示出的硬件和软件处理表示出了如何通过4个通道的A/D转换测量电压。图2.84运行原理:通过4通道A/D转换测量电压1)2)3)4)英文译文:1)硬件处理:无软件处理:初始化设
6、置:1。设置A/D转换器2。设置RAM,存储A/D转换的结果3。允许中断2)硬件处理:开始A/D转换软件处理:选择模拟量输入通道3)硬件处理:1。A/D转换结束2。在ADDRA到ADDRD中存储A/D转换的数据软件处理:无4)硬件处理:无软件处理:在RAM中的ADDRA到ADDRD中存储A/D转换的结果Immediatelyafterreset:复位后状态A/Dconversiontime:A/D转换时间Undefined:未定义Conversionresult:转换结果2。18。4编程说明程序模块说明:表2.85中列出了这个示例程序中使用的程序模块
7、。模块名称标号名称功能主程序模块main设置A/D转换器,允许中断,选择模拟量输入管脚,启动A/D转换。当A/D转换结束后,将转换结果存储在ADDRA到ADDRD中。当模拟输入通道0到3的A/D转换结束后,停止A/D转换器工作。参数说明:表2.86中列出了这个示例程序中使用的参数。表2.86参数说明参数名称功能所在模块数据长度输入/输出ADDRA存储0通道中输入的模拟量A/D转换的结果主程序模块2bytes输出ADDRB存储1通道中输入的模拟量A/D转换的结果2bytes输出ADDRC存储2通道中输入的模拟量A/D转换的结果2bytes输出ADDRD
8、存储3通道中输入的模拟量A/D转换的结果2bytes输出内部寄存器说明:表2.87中列出了这个示例程序中使用
此文档下载收益归作者所有