简单图示仪制作方法二 - 简单图示仪制作大全(两种简单图示仪制作方法)
简单图示仪制作方法二:
系统组成
本系统由硬件和软件两部分组成。系统的总体硬件结构如图1所示。以C8051F020单片机为核心,构成基极电流阶梯波发生电路、集电极阶梯波发生电路,辅以V/I转换电路、键盘控制单元和LCD显示电路等。软件部分主要完成信号的检测及处理,设备的控制和驱动等功能。
硬件电路设计
1.基极阶梯电流产生电路
由C8051F020控制片内外设DAC1产生8阶阶梯电压。C8051F020中的DAC是电压输出型,需要再通过V/I转换电路(电压/电流转换电路)转换成电流。晶体管基极电流一般在几微安到几十微安左右,可直接将V/I转换输出做为晶体管基极电流。
极性转换电路是为了测试NPN和PNP晶体管时改变输出极性而设的,电路图如图2所示。
当对NPN管进行测量时,S1闭合,S2断开,C8051F020的DAC端口输出的正电压直接加到放大电路或V/I转换电路上;当对PNP管进行测量时,S1断开,S2闭合,DAC端口输出的正电压经一级反相后变为负电压加到放大电路或V/I转换电路上。
V/I转换电路原理如图3所示,由运放A1组成同相加法电路,运放A2构成电压跟随器,将UB经隔离后反馈到输入端起到补偿作用,图中R1=R2=R3=R4=10K。显然,UO2=UB。当UI保持恒定时,IR0保持恒定,由于A2的隔离作用,IB也保持恒定,与UBE的大小无关。
2.集电极扫描电压产生电路
由C8051F020控制片内外设DAC0产生阶梯电压,由于集电极扫描电压一般需要20V以上,DAC0转换出来的电压远远不足提供晶体管集电极扫描电压,因此需要再经过放大电路放大电压直至所需的集电极扫描电压大小。
3.调理电路
调理电路接在负载电阻RC两端,由极性转换部分和幅度变换部分构成,对测量的电压信号进行调理,使之满足A/D转换器对信号要求。两路调理电路完全相同,图4为其中一路。
RC作为集电极负载电阻,同时也兼作测量IC的取样电阻。为了减少测量电路的负载效应,提高IC的测量精度,调理电路的输入电阻应较大。
4.LCD液晶显示控制电路
本系统所使用的LCD液晶屏为PG12864LRS-JNN-H,它是一块128X64字符显示点阵的液晶显示模块,它有8个并行线数据通信端口,以黑色点阵,换色背景形式显示,拥有独立的LED背光电源,工作温度宽,超薄外型,属工业级LCM。表1给出了该液晶显示模块的引脚说明。
PG12864LRS-JNN-H的液晶显示电路如图5所示。当C8051F020单片机与液晶屏如此连接之后,就必须在软件中给出单片机与液晶的连接端口定义:
#defineLCM12864_DB7_DB0P4//定义LCM12864的数据总线
sbitLCM12864_RS=P2^6;
//定义LCM12864的RS控制线
sbitLCM12864_RW=P2^1;
//定义LCM12864的RW控制线
sbitLCM12864_E=P2^4;
//定义LCM12864的E控制线
sbitLCM12864_CS1=P2^7;
//定义LCM12864的CS1控制线
sbitLCM12864_CS2=P2^5;
//定义LCM12864的CS2控制线
sbitLCM12864_RESET=P2^3;
//定义LCM12864的RESET控制线
5.系统PCB图
系统PCB设计如图6所示。
软件设计
主程序功能是初始化及按键监控。如图7所示,T0定时每30μS中断一次,其功能是在每次增加UCE后,延时30μS,待Ic稳定后再进行A/D转换,在T0中断服务程序中,停止T0,启动A/D,并启动T1。T0定时器在T1中断服务程序中启动,从而使T0、T1交替工作。
基极阶梯波由C8051F020单片机内的数模转换(DAC1)来产生,通过编程控制发生8级基极阶梯波。本系统中,设定每增加一级基极阶梯波,送到基极的电压就增加0.3V,即IB增加3μA。
集电极扫描电压由C8051F020单片机内的数模转换(DAC0)来实现。由于DAC0是12位的数模转换,为便于运算计数,将集电极扫描电压UCE计数105次为一个扫描周期,经计算十六进制数每27H,UCE加1。如图8程序流程图所示,当UCE计数溢出,集电极阶梯波IB增加一级。
定时器1每125μS中断一次,UCE加1,经D/A输出后使UCE上升一个阶梯,当UCE从0变到104,变化了一个周期时,IB加1,经D/A输出后IB增长一个阶梯。当IB从1变到8溢出时,IB置1,显示完一族输出特性曲线。
因此使用描点法就可以画出晶体管输出特性曲线,在DAC0和DAC1每转换一次是获得IC值和UCE值,再通过DrawPoint()函数在坐标屏上画出该点,直至画完一族输出特性曲线。DrawPoint()函数程序代码如下:
voidDrawPoint(unsignedcharx,unsignedchary)
{
unsignedcharDX=(y》》3);
//计算出属于哪个字节
unsignedcharBX=y-(DX《《3);
//计算属于字节哪一位
unsignedcharTempData=0;
TempData=LCM12864_Read1Byte_X_Y(x,7-DX);
TempData|=(1《《(7-BX));
LCM12864_Write1Byte_X_Y(x,7-DX,TempData);
}
LCM12864_Read1Byte_X_Y()函数从LCM12864指定点读取一字数据,LCM12864_Write1Byte_X_Y()函数向LCM12864指定点写入一字节数据,具体程序代码可查阅PG12864LRS-JNN-H技术手册。
- 第 1 页:简单图示仪制作大全(两种简单图示仪制作方法)
- 第 2 页:简单图示仪制作方法二
本文导航
非常好我支持^.^
(0) 0%
不好我反对
(0) 0%
相关阅读:
- [电子说] Multisim中虚拟伏安特性图示仪的使用 2023-05-18
- [今日头条] Tektronix泰克370A 晶体管图示仪 2022-11-09
- [电子说] 晶体管图示仪的设计与制作,Transistor characteristic exhibit instrument 2018-09-20
- [集成电路] 晶体管图示仪使用方法及使用注意事项 2018-03-19
- [电子说] 晶体管图示仪主要用途_晶体管图示仪使用方法 2018-03-19
- [ARM] 基于ARM的数控算法图示仪设计 2011-10-08
- [半导体器件] 晶体管特性图示仪,晶体管特性图示仪是什么意思 2010-03-05
- [PLD技术] 应用于晶体管图示仪的CPLD控制器设计 2009-12-30
( 发表人:姚远香 )