当前位置: 首页 > 范文大全 > 公文范文 >

基于C8051F005的测控综合实验仪设计

时间:2022-03-22 09:26:40  浏览次数:

教育等各行各业以及人们的日常生活中都得到了广泛的应用[1-4]。随着微电子技术、计算机技术、通信技术等现代技术的发展,仪器得到了很大的发展,出现了种类繁多、功能各异的专用仪器,但自制仪器可以适应各院校异性化的教学需求并建立起合适的实验教学创新平台,提升本科教育质量,适应人才培养的时代要求,对培养学生的创新能力、解决实际问题的动手能力等方面有着极为重要的作用。本文对测控综合实验仪从硬件和软件两方面给出了设计的具体思路和方法,最后通过一个实测例子检验了仪器的实用性。该测控综合实验仪可用于电子、计算机、自动化及测控等相关专业的教学中。

1  实验仪硬件设计

实验仪采用被广泛使用的混合信号ISP FLASH微控制器为核心进行硬件设计,其内部芯片C8051F005是完全集成的混合信号系统级MCU芯片,有一个真正的12位多通道ADC,一个可编程增益放大器、两个12位DAC、两个电压比较器、一个电压基准、一个具有32K字节FLASH存储器,有通过硬件实现的12C/SMBus、UART、SPI串行接口、一个具有5个捕捉/比较模块的可编程计数器/定时器阵列(PCA),以及4个通用的16位定时器和4字节宽的通用数字I/O端口。片内JTAG调试支持功能允许使用安装在最终应用系统上的产品MCU进行非侵入式的全速在线系统调试。

微控制器扩展的中断系统提供了21个中断源和多达7个的复位源。CIP-51有标准的8051程序和数据地址配置。它包活256字节的数据RAM,数据RAM的低128字节可用直接或间接两种寻址方式访问,前32个字节为4个通用工作寄存器区,后16字节即可按字节寻址又可按位寻址。

1.1 交叉开关和可编程数字I/O

MCU具有标准8051的4个端口(0、1、2和3端口),每个端口I/O引脚都可以被配置为推挽或漏极开路输出,该MCU最突出的功能改进是引入了数字交叉开关,通过它允许将内部数字系统资源分配给P0、P1和P2的端口I/O引脚,还可以通过设置交叉开关控制寄存器将片内的计数器/定时器、串行总线、硬件中断、ADC转换启动输入、比较器输出以及微控制器内部的其它数字信号配置在端口I/O引脚上,这就允许用户根据自己的特定应用在选择通用端口I/O和所需数字资源的组合上提供了很大的便利。数字交叉开关和可编程I/O原理框图如图1所示。

1.2 ADC和DAC

ADC由CIP-51通过特殊功能寄存器控制,有一输入通道被连到内部温度传感器,其它8个通道接外部输入。在模拟多路选择器之后接有可编程增益放大器,增益可用软件设置,从0.5到16以2的整数次幂递增。ADC功能框图如图2所示。MCU内部有两个12位DAC和两个比较器,它们之间的数据和控制接口是通过特殊功能寄存器来实现的。当然也可关断每个DAC和比较器以降低功耗。

1.3 系统外部接口

实验仪输入电源电压为+12V,用LM7805低压差电压调节器,将+12V电压转化为+5V,用来给CH452S,MAX485,LM35以及继电器等提供工作电压。电压调节电路见图3。

通过三端可调电流源芯片LM234产生一个固定的1mA电流输出,主要用于热电阻温度测量。通过调整R4可以微調电流输出大小,如图4所示。4~20mA电流通过电阻R30(120Ω),转换为电压(0.48~2.4V),通过AD转换AD_6通道输入到单片机进行采样,如图5所示。

实验仪设计了两组电压AD采样输入和一组电压比较输入。两路电压AD采样输入经过了带RC滤波的电压跟随器后分别通过AD转换AD_0通道和AD_1通道输入到单片机进行采样。4-20mA电流输入端口:调整电路参数使得VI=2.5V(即DA是0x0FFF满度输出)时输出电流20mA。由于本电路没有提供调零功能,因此4mA对应的零点要用数字量来调整。即DA输出0.5V对应的是零点,对于F005的10位DA来说,数字量DA=1023对应的是4mA的零点。如图6所示。电流输出占用DAC1通道资源。

DA的零点输出(数字量0x000)对应的VOUT=0V。DA的满幅输出(数字量0xFFF)对应的VOUT=5V。它占用DAC0通道。如图7。

键盘显示接口以CH452芯片为内核实现,CH452对数码管采用动态扫描驱动,顺序为DIG0至DIG7。段驱动引脚SEG6~SEG0分别对应数码管的段G~段A,段驱动引脚SEG7对应数码管的小数点,字驱动引脚DIG7~DIG0分别连接8个数码管的阴极。本实验板只使用了4个数码管,故字驱动只使用了DIG0至DIG3。为了防止因为按键抖动或者外界干扰而产生误码,CH452实行两次扫描,只有当两次键盘扫描的结果相同时,按键才会被确认有效。

实验仪配备了继电器和光耦隔离的数字输入输出接口。继电器输出是利用单片机的I/O口来控制外部电机,两路继电器输出分别占用P3.6和P3.7端口,两路光隔输入分别占用P1.2和P1.3端口。端口P1.2和P1.3要配置为带弱上拉的开漏输出。两路光隔输出分别占用P1.4和P1.5端口。(图8和图9)

2  实验仪软件设计

软件设计主要有系统初始化程序、CH452接口子程序、输入按键代码子程序、键盘及显示子程序等等。以下为CH452接口子程序节选(因篇幅有限,其它在此不再列出)。

void CH452_Write(unsigned short cmd)

{

unsigned char i;

DISABLE_KEY_INTERRUPT; // 禁止键盘中断,防止传输过程中被CH452中断而进入中断服务程序中再次传输

CH452_LOAD_CLR;// 命令开始,LOAD=0

CH452_LOAD_D_OUT;// 设置LOAD为输出方向

CH452_DOUT_D_IN;// 设置DOUT为输入方向

CH452_DIN_D_OUT;// 设置DIN为输出方向

CH452_DCLK_D_OUT;// 设置DCLK为输出方向

for(i=0;i!=12;i++)// 送入12位数据,低位在前

{

if (cmd&1)

{CH452_DIN_SET;}

else

{CH452_DIN_CLR;}// 输出位数据

CH452_DCLK_CLR;

cmd>>=1;

DELAY_1US;

CH452_DCLK_SET;// 上升沿有效

}

3  实验仪测试与结果分析

3.1 测量试验程序编写

电压采集程序节选:

//主程序 开始

while(1)

{

if(KEY0 == LEFT_KEY)// 在电压为1V时按左键采集

{

KEY0 &= 0;

AD_INL = GetADCResult(0);

}

if(KEY0==RIGHT_KEY//在电压为1.5V时按右键采集

{

KEY0 &= 0;

AD_INH = GetADCResult(0);

}

// AD in

AD_IN = GetADCResult(0);//采集实时电压输入点

voltL = AD_INL*2500.0/4096;// 将电压为1V时的AD值转化为电压值

voltH = AD_INH*2500.0/4096;// 将电压为1.5V时的AD值转化为电压值

voltM = AD_IN*2500.0/4096;//将AD值转化为电压值

volt=(voltM-voltL)*500/(voltH-voltL)+1000;// 对采集到的电压值进行修正

if(KEY0 == MID_L_KEY)// 按中左键显示采集的电压值

{

KEY0 &= 0;

disp_flag = 0;

DisIntNum(volt);

}

if(KEY0 == MID_R_KEY) // 按中右键显示AD采集值

{

KEY0 &= 0;

disp_flag = 1;

DisIntNum(AD_IN);

}

if(disp_flag)

DisIntNum(AD_IN);

else

{ DisIntNum(volt);

CH452_Write(CH452_SET_BIT + 0x003b); //显示小数点

}

}

3.2 测试结果及分析

利用一个可变电阻组成一个调压电路即可得到一组电压值,运行程序,分别采集一个高、低点电压值作校准,则实际采样值ADx对应的电压值可通过下式计算:

于是得到AD采样值和实测的电压值。见表1。

从实测数据来看,测量的精度是很高的。通过重复测量,其数据的稳定性也很好。

4  结束语

本设计采用完全集成的混合信号系统级MCU芯片为核心研发的测控综合实验仪,成本低,性能稳定,测量精度高,重复性好。它提供了1路恒流输出,1路电流/电压信号输出,1路电流输入,2路电压输入,1路板载温度传感器,2路继电器输出,2路光电隔离输入/输出以及用于在线编程调试的JTAG接口等等功能,并且它的多数外部设备具有可编程和可配置能力,大大提高了它在各种测控场所的应用。它在相关专业的实验教学中也具有很好的借鉴作用。

参考文献:

[1]张颖,蓝德高,赵晓锋.温度/湿度/光強多参数测量仪研制[J].传感器技术与应用,2018,6(4):121-129.

[2]王友善,王绍阳.用电磁波群时延差的异常变化预测短临地震的基本原理与探测仪器[J].地球科学前沿,2015,5(4):314-322.

[3]江虹,桂笑,许柳青.雷达波测流仪在中小河流的应用[J]. 水资源研究,2019,8(2):93-99.

[4]李剑锋,李剑云,王德真.太阳能选择性涂层吸收光谱仪[J]. 仪器与设备,2015,3:12-19.

推荐访问: 测控 综合 设计 实验仪 C8051F005