欢迎来到专业的新思文库网平台! 工作计划 工作总结 心得体会 事迹材料 述职报告 疫情防控 思想汇报 党课下载
当前位置:首页 > 范文大全 > 教案设计 > 正文

基于STM8S207单片机的测试架系统设计

时间:2022-10-28 18:20:06 来源:网友投稿

摘 要:为了对电子行业中的PCB板电压进行测试,采用STM8S207单片机控制继电器的测试架,通过PC实时检测电压并显示。通过单片机控制继电器对一些强电进行控制的实验,它可以控制5 V和12 V电压的输出和一定范围的交直流检测,并且可以通过485通信把检测的结果传送到PC机。实验结果证明,该测试架具有可以用于对不同电路适时的控制,对一些新产品的PCB板测试,在测试过程中只要把对应的XH2连接好,就可直接在PC机上进行相应的测试,使用便捷,性能可靠。

关键词:STM80S207M单片机; 测试架; PCB电压测试; 实时检测

中图分类号:TN191934; TP206 文献标识码:A 文章编号:1004373X(2012)22013805

0 引 言

随着信息科学技术的发展,工业生产扩大和产品种类的增加,在科研与生产中,检测成为每一个电子产品必不可缺少的一个环节。对测试的要求也越来越高,有时因为对一块电路板要同时测试好多功能,而无法同时检测而影响产品质量。基于STM8S207单片机的强大功能,最高fCPU可达24 MHz,基于哈佛结构并带有3级流水线扩展指令集,最高20 MIPS@24 MHz[13]。程序存储器:最多128 KB FLASH,10千次擦写后在55 ℃环境下数据可保存20年;数据存储器:最多2 KB真正的数据E2PROM[4];可达30万次擦写RAM:最多6 KB。时钟、复位和电源管理2.95~5.5 V工作电压灵活的时钟控制,4个主时钟源,低功率晶体振荡器,外部时钟输入,用户可调整的内部16 MHzRC,内部低功耗128 kHzRC,带有时钟监控的时钟安全保障系统,低功耗模式(等待、活跃停机、停机),外设的时钟可单独关闭,永远打开的低功耗上电和掉电复位[5]。带有32个中断的嵌套终端控制器,6个外部中断向量,最多37个外部中断。定时器,2个16位通用定时器,带有2+3个,CAPCOM通道(IC,OC或PWM)。高级控制定时器:16位,4个CAPCOM通道,3个互补输出,控制和灵活的同步带有8位预分频器的8位基本定时器[67]。用STM8S207MB单片机控制可以很好的解决同时测试好多功能的测试要求,并且时时对电压进行检测。比一般的51和PIC单片机便宜,成本较低[8]。

1 系统总体设计

1.1 系统功能设计

通过MCU1,MCU2,MCU3三片STM8S207单片机,它们与上位机通过芯片485通信进行连接。如图1所示。其中继电器驱动,要求电流10 A以下,40路,可以驱动强电接通,也可以模拟按键,XH2输出。80~400 V交流强电检测,16路,要求隔离检测,XH2输入。0~24 V弱电检测,16路,不要求隔离检测,XH2输入。60~400 V直流强电检测,8路,不要求隔离检测,XH2输入。5 V输出,要求MOS管驱动,12路,XH2输出。12 V输出,要求MOS管驱动,12路,XH2输出485通信,各单片机之间用芯片MAX485进行通信。主要完成功能如图1所示。硬件基本配置电路板基本构架如图2所示。这三块芯片用芯片485进行通信,然后并在一条总线上,最后用上位机控制。

1.2 通信协议

通信的时候数据以一帧一帧传输,一帧由5个字节组成,每个字节有11位,第一位起始位,第10位奇检验,第11位当数据。由PC机向MCU传输时,第一个字节如果接收到滤波码B3H,数据开始传输,如果接收的不是B3H,单片机则不予理睬[9]。第2个字节表示大组号和小组号,系统事先已将92路输入或者输出编号组,每一大组再分出小组,这个字节中,前3位表示大组号,001表示20路继电器输出,010表示20路继电器输出,011表示直流强电检测,100表示12 V输出,101表示弱电检测,110表示交流强电检测,后5位表示某一路的输入或者输出;第3个字节表示电路是否动作,00000001表明明电路动作了,0000000表明电路没有动作;第4个字节保留;第5个字节表示CRC中断检验。当数据由PC机向MCU传输时,第1个字节如果接收到滤波码3BH,数据开始传输,如果接收的不是3BH,单片机则不予理睬;第2个字节表示同上所述。第3第4个字节表示12位AD值。第5位表示CRC中断检验.本次通信的波特率为9 600 b/s,每个字节隔0.5 ms传输,每个字节每位之间的时间间隔则为100 μs。

1.3 管脚规划

单片机STM8S207(MCU1,MCU2,MCU3),分别控制继电器驱动和直流强电检测,5 V输出和弱电检测,12 V输出和强电检测,3块单片机用485通信,再由总芯片控制,工作电压2.95~5.5 V[10]。MCU1控制40路继电器驱动,强电检测(60~400 V)共52路。

2 系统硬件设计

2.1 STM8S207MB芯片特点

它是由全球第5大半导体公司意法半导体生产的8位机,这种8位的STM8S207MB内核在设计时考虑了代码的效率和性能[11]。它的6个内部寄存器都可以在执行程序中直接寻址。共有包括间接变址寻址和相对寻址在内的20种寻址模式和80条指令。其管脚图如图3所示。

2.2 485通信

IC485接口电路的主要功能是:将来自微处理器的发送信号TX通过“发送器”转换成通信网络中的差分信号,也可以将通讯网络中的差分信号通过“接收器”转换成被微处理器接收的RX信号[12]。任一时刻,IC485收发器只能够工作在“接收”或“发送”两种模式之一,因此,必须为IC485接口电路增加一个收/发逻辑控制电路。如图5所示。微处理器的标准串行口通过RXD直接连接IC485R芯片的RO引脚,通过TXD直接连接IC485R芯片的DI引脚。由微处理器输出的R/D信号直接控制IC485R芯片的发送器/接收器使能:R/D信号为“1”,则IC485R芯片的发送器有效,接收器禁止,此时微处理器可以向RS 485总线发送数据字节;R/D信号为“0”,则SP485R芯片的发送器禁止,接收器有效,此时微处理器可以接收来自RS 485总线的数据字节。此电路中,任一时刻IC485R芯片中的“接收器”和“发送器”只能够有1个处于工作状态。连接至A引脚的上拉电阻R7、连接至B引脚的下拉电阻R8用于保证无连接的IC485R芯片处于空闲状态,提供网络失效保护,以提高IC485节点与网络的可靠性。如果将IC485R连接至微处理器STM8S207MB芯片的UART串口,则IC485R芯片的RO引脚不需要上拉;否则,需要根据实际情况考虑是否在RO引脚增加1个大约10 kΩ的上拉电阻。

IC485接口电路收/发逻辑控制电路2.3 其他控制电路

在硬件设计中,还包括控制继电器驱动,如图4所示,它具有控制系统和被控制系统。通常应用于自动控制电路中,它实际上是用较小的电流去控制较大电流的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。

当STM8S207MB单片机输出高电平时,由于电阻R7的分压作用,使三极管饱和导通,使继电器线圈通电,吸合开关,驱动外围电路。

当STM8S207MB单片机输出低电平时,三极管截止,使继电器线圈失电,断开开关。电磁式继电器一般由铁芯、线圈、衔铁、触点簧片等组成的。只要在线圈两端加上一定的电压,线圈中就会流过一定的电流,从而产生电磁效应,衔铁就会在电磁力吸引的作用下克服返回弹簧的拉力吸向铁芯,从而带动衔铁的动触点与静触点(常开触点)吸合。

当线圈断电后,电磁的吸力也随之消失,衔铁就会在弹簧的反作用力返回原来的位置,使动触点与原来的静触点(常闭触点)吸合。这样吸合、释放,从而达到了在电路中的导通、切断的目的。对于继电器的“常开、常闭”触点,可以这样来区分:继电器线圈未通电时处于断开状态的静触点,称为“常开触点”;处于接通状态的静触点称为“常闭触点”。

控制80~400 V交流强电检测隔离检测,XH2输入:

工作原理:如图6所示,由XH2输入80~400 V的电压,通过变压器的隔离变压13 V,在通过4个IN4007整流二极管整流,在经过E1,C10滤波,经过电阻的分压输入单片机的AD转换引脚输入单片机,在经过一定的计算传给上位机PC显示。

变压器TR/DBE128/7201A的变压比K=N1/N2=30,最高电压是380 V, 称为匝比(亦称电压比)。经变压器变压后的电压390/U1=1/30,得U1=13 V。经整流管整流后的电压U2=U1×1.2=15.6 V,经电阻分压后输入单片机的电压(R210/(R210+R209))×15.6=4.2 V还有其他的电压测出电路,如0~24 V弱电检测,60~400 V直流强电检测, 控制5 V和12 V输出, 控制5 V和12 V输出,单线接口模块,带有3级软件优先级设定的嵌套中断,时钟控制器,看门狗设计,电源管理,模数转换等等。

3 系统软件设计

STM8单片机的C语言编译器是COSMIC,是一款专用于ST公司的单片机的编译器。包括MCU1的软件与上位机通信软件程序示,函数声明及变量定义程序、I/O口初始化程序、A/D转化初始化和延时程序、I/O输出函数、电压采样函数、看门狗函数、通信中断函数、TIM4中断函数,以TIM4中断函数为例:

图6 控制80~400 V交流强电检测隔离检测原理图TIM4中断函数程序:

@far @interrupt void TIM4_UPD_OVF_IRQHandler(void)

{

TIM4>SR1 = 0x00;

//清除更新标志;

ncount++;

if(ncount>=250)

{

GPIOD>ODR = GPIOD>ODR ^ 0x10;

//将PD4反相

ncount=0;

}

TIM4>IER = 0x00;

}

void delay(unsigned int count)

{

while(count);

}

void TIM4_delay(void)

{TIM4>IER = 0x00;

//禁止中断

TIM4>EGR = 0x01;

//允许产生更新事件

TIM4>PSCR = 0x04;

//计数器时钟=主时钟/128=2 MHz/16

TIM4>ARR = 249;

//设定重装载时的寄存器值,255是最大值

//TIM4>CNTR = 255;

//设定计数器的初值

//定时周期=(ARR+1)8=2 000 μs

TIM4>CR1 = 0x01;

//b0 = 1,允许计数器工作

//b1 = 0,允许更新

//设置控制器,启动定时器

TIM4>IER = 0x01;

}

voidmain()

{int a;

CLK>SWR = 0xE1;

//选择芯片内部的16 MHz的RC振荡器为?

IO_Init();

AD_Init();

UART1Init();

while(1)

{

DO_output(a);

if(++voltage_channel_ptr>=voltage_channel_total)

{

voltage_channel_ptr=0;

}

sample_loop(voltage_channel[voltage_channel_ptr],50);

}

4 硬件接口连接与调试

将STM8S207MB与外设之间进行连接并进行系统调试,在进行硬件电路的实验调试时,首先检测各电路板的主要模块之间的连通性,即保证电路连接无误,是否有电路,对系统各硬件电路进行检测,保证各模块可以正常工作,同时保证各硬件电路可以由STM8S207MB进行控制,并能保证和上位机之间能正常通信。

(1) 安装stvd软件;

(2) 将软件导入stvd,调试程序有没有错误;

(3) 如果没有错误,就可以用仿真器在程序通过SWIN烧入单片机;

(4) 在把已经通过stvd调试的程序植入硬件电路中,仿真看一下是否跟预期效果相同。

5 结 语

基于STM8S207MB有高性能内核, 抗干扰能力强,品质安全可靠。领先的130 nm制造工艺,优异的性价比。程序空间从4~128 KB,芯片选择从20脚到80脚,宽范围产品系列。

系统成本低,内嵌E2PROM和高精度RC震荡器。开发容易,拥有本地工具支持。由于使用环境、成本等因素,该测试车架-控制继电器驱动,控制电流10 A以下,可以控制40路,可以驱动强电接通,也可以模拟按键,XH2输出;80~400 V交流强电检测,可以检测16路,隔离检测,XH2输入。

0~24 V弱电检测,最多可以检测16路,不隔离检测,XH2输入;60~400 V直流强电检测,最多可检测8路,不隔离检测,XH2输入。5 V输出,MOS管驱动,可以输出12路,XH2输出;12 V输出,要求MOS管驱动,可以输出12路,XH2出。485通信,各单片机与PC之间用芯片MAX 485进行通信,PC可以实时的对检测的电压进行显示。

该测试架可以特别适用电子行业,对PCB板的测试。实验结果证明测试架可以获得基本功能如下:

(1) 继电器驱动,控制电流10 A以下,最多控制40路,可以驱动强电接通,也可以模拟按键,XH2输出;

(2) 80~400 V交流强电检测,最多可以检测16路,隔离检测,XH2输入;

(3) 0~24 V弱电检测,最多可以检测16路,不隔离检测,XH2输入;

(4) 60~400 V直流强电检测,最多可检测8路,不隔离检测,XH2输入;

(5) 5 V输出,MOS管驱动,最多可以输出12路,XH2输出;

(6) 12 V输出,要求MOS管驱动,最多可以输出12路,XH2出;

(7) 485通信,各单片机与PC之间用芯片MAX485进行通信。应用程序以C语言编写,充分利用芯片资源,提高代码的利用效率,减小代码容量,采用去极值平均数字滤波算法对经过A/D转换后的数字信号进行滤波处理。这种方法即可虑去脉冲干扰又可滤去小的随机干扰,不但最大限度地排除现场噪音干扰,降低电压的误测概率。

参 考 文 献

[1] 彭为,黄科,雷道仲.单片机典型系统设计[M].北京:电子工业出版社,2006.

[2] 胡汉才.单片机原理及其接口技术[M].北京:清华大学出版社,2004.

[3] 康华光.电子技术基础[M].北京:高等教育出版社,2005.

[4] 佚名.2005电子报合订版[M].成都:电子科技大学出版社,2005.

[5] 江晓安,董秀峰,杨颂华.数字电子技术[M].3版.西安:西安电子科技大学出版社,2005.

[6] 郑峰,王巧之,陈绘宾,等.51单片机运用系统典型模块开发大全[M].北京:中国铁道出版社,2005.

[7] 云峰.检测技术[M].北京:机械工业出版社,2005.

[8] 梅丽凤,赫万新.单片机原理及应用[M].北京:清华大学出版社,2008.

[9] 何希才.常用传感器应用电路的设计与实践[M].北京:科学出版社,2006.

[10] 陈伯时.电力拖动自动控制系统\[M\].北京:机械工业出版社,2009.

[11] 莫正康.电力电子应用技术\[M\].北京:机械工业出版社,2007.

[12] 卢艳君.单片机原理与应用[M].北京:机械工业出版社,2008.

[13] 施先旺.基于DSP/BIOS实现发动机实时在线状态监测\[J\].火箭推进,2010,36(5):5458.

作者简介: 王 娟 女,1982年出生,硕士,讲师。研究方向为机电一体化。

推荐访问:单片机 测试 设计 系统 STM8S207