科技创新2A第5组设计报告 液晶.docx
- 文档编号:3904744
- 上传时间:2022-11-26
- 格式:DOCX
- 页数:44
- 大小:190.15KB
科技创新2A第5组设计报告 液晶.docx
《科技创新2A第5组设计报告 液晶.docx》由会员分享,可在线阅读,更多相关《科技创新2A第5组设计报告 液晶.docx(44页珍藏版)》请在冰豆网上搜索。
科技创新2A第5组设计报告液晶
摘要:
本设计报告详细描述了增益可控线性放大器及其人机界面的主要功能与操作方法,系统硬件与软件的设计和实现方法及原理,系统的技术指标,系统基本功能的调试与进一步的精度调试及误差分析,心得体会等。
关键词:
增益可控线性放大器,单片机小系统,反相运算放大器,字符型液晶模块
目次
1.概述
1.1编写说明
本文的主要内容是对增益可控线性放大器及其人机界面作出说明以及对该实验的心得体会。
撰写此文的目的是为了对此次实验做一个全面的总结,便于老师检查实验情况,及时发现问题给与指导,并作为日后参考资料。
本文适合于任何有一定电路基础知识,有兴趣了解增益可控线性放大器实现方法的电子爱好者。
1.2名词定义
单片机小系统:
以单片机为核心的一块系统板,包括外部扩展存储器,外部扩展接口,译码器,输入输出插座,按键,四位数码管等。
七段显示数码管:
共阳的abcdefg七段,通过加上5V电压点亮发光。
可变增益放大器电路:
应用μA741与4066两芯片来实现由单片机小系统来控制的增益可控放大器的电路。
字符液晶显示模块:
通过输入数据和指令来实现所需的字符显示,由液晶屏、控制驱动电路组成的模块。
1.3缩略语
k:
千,数值单位,103
u:
微,数值单位,10-6
m:
毫,数值单位,10-3
C:
电容
R:
电阻
DC:
直流电
PCB:
印刷线路板
LCD:
字符液晶显示模块
4066:
半导体四重双向转换开关芯片
μA741:
运算法大器芯片
8255:
通用可编程并行输入/输出接口芯片
2.系统总体说明
2.1课题任务规定的设计要求
通过单片机小系统板上提供的人机操作界面,设置放大器的增益等级,相应的增益等级在单片机小系统板上的数码管与液晶屏上显示。
具体指标要求:
最低增益小于0.15倍;最高增益大于1.45倍;
放大器的增益至少包括15个标准值等级:
从0.1倍至1.5倍,以0.1为间隔共15种;
各等级的实际增益值与标准值比较,误差应小于3%,且越精确越好。
[1]
2.2实际完成后的功能
实现了通过小系统板上的按键设置放大器的增益等级,并在数码管与液晶屏上显示增益等级。
具体指标:
最低增益为0.1倍;最高增益大于1.5倍,共15个增益等级,以0.1为间隔;
各等级的实际增益值与标准值比较,误差小于1%。
2.3系统的设计原理与分析
2.3.1系统的设计原理
本系统是由单片机控制的增益可控放大器系统,可以根据用户的按键输入,通过单片机的处理,分别输出到数码管与液晶显示模块,以显示相应的增益等级,并输出信号来控制增益可控放大器电路模块,实现0.1倍到1.5倍,共15个增益等级的电压输出。
2.3.2系统的总体结构
系统总体结构如图2.1所示。
系统的输入为四个按键输入与电压输入Vi。
系统的运算处理在单片机内完成。
系统的输出分为三部分:
数码管增益等级的显示,LCD增益等级的显示,增益可控放大器电路模块的输出增益电压Vo
系统的通信由三条十芯的数据线来实现各个模块间的通信。
图2.1系统组成结构框图
2.3.3系统的功能
1)可控增益放大器:
在单片机的控制下,将输入电压Vi按指定的增益等级增益到输出电压Vo。
2)键盘:
共有四个按键,第一个按键使增益等级达到最大(1.5倍),第二个按键使增益等级达到最小(0.1倍),第三个按键使增益增大一个等级,第四个按键使增益减小一个等级。
3)数码管显示:
显示具体的增益等级值(如“1.3”)
4)液晶显示:
开机滚动画面显示,分两行显示增益等级值(如"Amplifyscale:
a=1.3")
3.系统的硬件结构
3.1硬件总体结构
硬件总体结构如图3.1所示。
系统由三大部分组成:
单片机小系统、增益可控放大器电路模块、液晶显示电路模块。
其中单片机小系统主要包括单片机,按键,数码管与输入输出口,主要有信号输入,信号处理,控制信号输出等功能。
增益可控放大器电路模块:
实现在单片机的控制下将输入电压Vi增益到输出电压Vo的功能。
液晶显示电路模块:
实现在单片机的控制下,开机滚动画面和增益等级的显示功能。
单片机小系统的控制信号通过单片机上的P32…5四个口输出到增益可控放大器电路模块,而单片机小系统与液晶显示电路模块间的通信则由8255的PA,PB口实现。
图3.1系统硬件总体结构图
3.2<增益可控放大器电路模块>描述
3.2.1功能描述
1)从单片机小系统接收4个控制信号
2)根据15种控制信号排出15种不同的电阻并联组合
3)将输入电压Vi根据增益等级增益到输出电压Vo
3.2.2接口定义
本模块用IDC10插座与单片机小系统的P1插座通过IDC10扁平电缆连接,使插座上的7、8、9、10脚与单片机的P3的2、3、4、5口连接。
另有两个一芯跳线棒,用于测量输入电压与输出电压。
3.2.3技术要求
输入电压:
-3V~3V
输出电压:
-4.5V~4.5V
响应时间:
μs级
3.2.4集成电路管脚定义
1)CD4066管脚定义:
4066共有14个管脚,其中2个为电源端,其余12个为4组开关,如图3.2所示。
图3.3芯片4066管脚定义图[2]
1.7,14号管脚为集成电路供电端,14号管脚接5V电压;7号管脚接地。
2.1,2,13号管脚控制一个开关,在本电路中控制电阻R1=10KΩ。
其中,1号,2号管脚为开关输入、输出端,13为控制端。
3.10,11,12号管脚控制一个开关,在本电路中控制电阻R2=5KΩ。
其中,10号,11号管脚为开关输入、输出端,12为控制端。
4.3,4,5号管脚控制一个开关,在本电路中控制电阻R3=2.5KΩ。
其中,3号,4号管脚为开关输入、输出端,5为控制端。
5.6,8,9号管脚控制一个开关,在本电路中控制电阻R4=1.25KΩ。
其中,8号,9号管脚为开关输入、输出端,6为控制端。
2)μA741管脚定义:
μA741的管脚定义如图3.3所示:
图3.3增益器μA741管脚定义图[3]
4,7号管脚为集成电路供电端,7号管脚接5V电压;4号管脚接-5V电压。
2,3号管脚为输入端子,2号管脚为反相输入端子接输入电压Vi,3号管脚为非反相输入端子接地
6号管脚为输出端子,输出输出电压Vo。
1,5号管脚为补偿调整端子,接10KΩ的电位器。
[4]
8号管脚为为空。
3.2.5实现方式
初步实现方案:
查阅资料后,由于要实现增益等级从0.1倍到1.5倍的变化,决定采用反相放大器来实现。
反相放大器电路如图3.4所示。
在反相输入端子经电阻Ri加入输入电压Vi,在输出端子得到输出电压Vo,其增益倍数A=-
,即Vo=-
Vi。
[5]
图3.4反相放大器电路[6]
考虑用4066中的4组开关的15种开闭合排列,与4个适当的电阻组成电阻组代替Ri,以实现增益等级的该变。
有4个电阻串联与4个电阻并联两种方案,在查阅了4066DATASHEET之后,发现开关的通路电阻较大,在200Ω左右,如采用串联方案会造成较大的系统误差,故最终采用了4个电阻并联的方案,以减小误差。
初步实现方案如图3.5所示。
图3.5初步实现方案示意图[7]
具体电阻阻值确定:
在查阅了4066DATASHEET之后,发现开关的通路电阻较大,在200Ω左右,而断路的电阻也非无穷大,在500KΩ左右,为了减小误差,考虑使用1KΩ到10KΩ范围内的电阻。
将Rf固定为1KΩ,经过进一步计算得:
R1=10KΩ,R2=5KΩ,R3=2.5KΩ,R4=1.25KΩ,各增益等级所需阻值与4个电阻组合具体情况如表3.1所示。
增益等级
各档的阻值(KΩ)
电阻的组合
0.1
10.000
R1
0.2
5.000
R2
0.3
3.333
R1//R2
0.4
2.500
R3
0.5
2.000
R1//R3
0.6
1.667
R2//R3
0.7
1.429
R1//R2//R3
0.8
1.250
R4
0.9
1.111
R1//R4
1
1.000
R2//R4
1.1
0.909
R1//R2//R4
1.2
0.833
R3//R4
1.3
0.769
R1//R3//R4
1.4
0.714
R2//R3//R4
1.5
0.667
R1//R2//R3//R4
表3.1各增益等级所需阻值与4个电阻组合表
电路设计:
实际的电路图设计如图3.6所示。
图3.6增益可控放大器电路模块的电路图设计
P1为IDC10插座,P2为测量输入电压Vi的一芯跳线棒,P3为测量输出电压Vo的一芯跳线棒。
U2A,U2B,U2C,U2D为4066的四组开关。
R1,R2,R3,R4对应图3.5中的R1,R2,R3,R4,R5为图3.5中反馈电阻Rf。
阻值由上文计算所得。
R6为10KΩ的电位器,接μA741的1,5号管脚——补偿调整端子,滑动端接-5V,起到微调作用,以减小误差。
其电路如图3.7所示,其原理详见相关资料。
图3.7μA741补偿调整电路示意图[8]
3.3<液晶显示电路模块>描述
3.3.1功能描述
1.接收单片机发出的指令与数据并反馈忙信息
2.开机滚动画面显示“Welcometousethisamplifer!
”
3.分两行显示增益等级值
(如增益等级值为1.3时显示"Amplifyscale:
a=1.3")
3.3.2接口定义
本模块用两个IDC10插座与单片机小系统连接。
插座1与单片机小系统的P5插座通过IDC10扁平电缆连接,使插座1上的6、7、8脚与8255PA的5、6、7口连接。
插座2与单片机小系统的P6插座通过IDC10扁平电缆连接,使插座2上的1-8脚与8255PB的0-7口连接。
3.3.3技术要求
工作温度:
-20℃-70℃
工作电流:
60∽80mA
工作电压:
4.2∽5V[9]
响应时间:
ms级
3.3.4集成电路管脚定义
液晶模块详细的管脚定义如表3.2所示
引脚号
符号
名称
功能
具体定义
1
Vss
接地
0V
接地
2
VDD
电路电源
5V
接5V电压
3
VEE
液晶驱动电压
对比度调节
接电位器滑动端
4
RS
寄存器选择信号
H:
数据寄存器
L:
指令寄存器
接8255的PA5口
5
R/W
读/写信号
H:
读L:
写
接8255的PA6口
6
E
片选信号
下降沿触发,锁存数据
接8255的PA7口
7-14
DB0-DB7
数据线
数据传输
接8255的PB0-7口
表3.2液晶模块管脚定义表[10]
8255部分管脚定义:
[11]
由于8255管脚较多,本报告中仅就所涉及的管脚加以说明。
PA0-7,8255的A并行数据口,其5、6、7号口连接液晶模块,输出控制指令
PB0-7,8255的B并行数据口,其0-7号口连接液晶模块,输出显示字符与指令并从液晶读入忙标注符。
D0-7,8255数据线,双向三态,用来传送数据、控制字和状态字。
本模块中8255工作在方式0下,控制PA,PB口的输入、输出状态。
RESET,8255复位端,用于初始化8255。
3.3.5实现方式
初步实现方案:
液晶模块的实现方案基本参照指导讲义上的做法。
由于单片机的输入输出口有限,使用8255进行输入输出口的扩展,再将8255的PA与PB口与液晶电路模块连接。
从而实现以单片机控制8255,再由8255传送指令与数据来控制液晶显示。
实现方案如图3.8所示。
图3.8液晶模块初步实现方案示意图[12]
电路设计:
实际的电路图设计如图3.9所示。
图3.9液晶模块的电路示意图[13]
液晶模块的1号引脚接地,2号引脚接5V电压,3号引脚就调节对比度的电位器滑动端,电位器的另两端分别接5V电压与接地。
液晶模块的3条控制线,4,5,6号引脚分别与插座1上的6、7、8脚相连,从而与8255PA的5、6、7口连接。
液晶模块的8条数据线,7-14号引脚分别与插座2上的1-8脚相连,从而与8255PB的0-7口连接。
4.系统的软件结构
4.1软件总体结构和功能
软件总体结构:
软件总体结构的框图如图4.1所示。
液晶重新初始化
图4.1软件总体结构框图
软件功能:
1.检测用户的按键,做出响应
2.计算当前的增益等级
3.控制单片机输出控制信号
4.控制数码管显示相应的增益等级
5.控制液晶显示开机滚动字幕与相应的增益等级
软件模块:
系统主要由timer1,timer0两个定时器中断构成。
Timer1实现液晶的初始化和开机滚动字幕显示。
Timer0实现放大器增益等级的输入,控制信号的输出与相应的数码管和液晶的相应显示。
4.2重要的全局变量
1)按键定义:
单片机P10…3口,对应单片机小系统板上自左向右四个按键
sbitKEY1=P1^0;
sbitKEY2=P1^1;
sbitKEY3=P1^2;
sbitKEY4=P1^3;
2)输出端口定义:
单片机P32…5口,CD4066四个开关控制输出口,对应四个并联的电阻
sbitR1=P3^2;
sbitR2=P3^3;
sbitR3=P3^4;
sbitR4=P3^5;
3)存储器映象地址定义:
[14]
ADDR_8SEGXBYTE[0x2000]:
数码管段驱动寄存器地址
ADDR_SELXBYTE[0x4000]:
数码管位驱动和指示灯驱动寄存器地址
PAXBYTE[0xE000]:
8255PA口寄存器地址
PBXBYTE[0xE001]:
8255PB口寄存器地址
CONTROLXBYTE[0xE003]:
8255控制字寄存器地址
4.3流程逻辑
程序的流程逻辑如图4.2所示。
图4.2软件流程逻辑图
在系统初始化后,随即进入定时中断1中,反复循环直到检测到有任意按键按下,跳出定时中断1循环,进入定时中断0的循环中。
4.4<定时中断1>描述
4.4.1功能描述
实现液晶的初始化和开机滚动字幕显示功能。
滚动字幕显示“Welcometousethisamplifer!
”每0.5秒字幕整体向左移一位,以达到滚动的效果。
4.4.2输入输出项描述
输入:
按任意键跳出开机滚动字幕状态,进入定时中断0的主循环中。
输出:
液晶屏第一行滚动显示“Welcometousethisamplifer!
”
4.4.3数据结构
1)寄存器:
PAXBYTE[0xE000]:
8255PA口寄存器地址
PBXBYTE[0xE001]:
8255PB口寄存器地址
CONTROLXBYTE[0xE003]:
8255控制字寄存器地址
2)全局变量:
unsignedcharbdatabusy:
8255PB口输入输出缓存,可位寻址最高位
sbitBF=busy^7
unsignedcharpos:
液晶输出位置指针
sbitRST=P1^4:
8255复位端变量
3)记录状态变量:
unsignedcharcount1:
液晶移位时间间隔计数器
4.4.4调用函数说明
timer1()interrupt3using0
功能:
定时中断1,每5ms进入中断
输入:
无
输出:
无
详细说明:
定时器1从初始的EE00开始计数直到FFFF溢出,进入中断。
voidinitialize()
功能:
液晶初始化,清屏,清除显示缓存区内容
输入:
无
输出:
无
详细说明:
函数流程如图4.3所示。
图4.3initialize()函数流程图[15]
voidwait_busy();
功能:
液晶忙信号检测与等待
输入:
无
输出:
无
详细说明:
函数流程如图4.4所示。
图4.4wait_busy()函数流程图[16]
由于要从液晶模块读入标志位BF,需要将8255B口改为输入状态,并在BF=0时,改回输出状态,需要改变D0-7控制字,如表4.1所示。
控制字
A口
B口
D7
D6
D5
D4
D3
D2
D1
D0
十六进制
1
0
0
0
0
0
0
0
80H
输出
输出
1
0
0
0
0
0
1
0
82H
输出
输入
表4.18255在方式0在输入/输出组合[17]
voidlcdpos();
功能:
液晶输出位置控制
输入:
无
输出:
pos位置指针右移或换行
详细说明:
当一行满了16个字符则换行,否则右移一位。
voidlcdoutput(charn);
功能:
液晶屏输出字符n
输入:
字符n
输出:
液晶屏上显示字符n
详细说明:
先调用lcdpos()确定显示字符的位置,然后再将显示指令与要显示的数据传给液晶
4.4.5流程图
定时中断1的流程图如图4.3所示。
图4.3定时中断1的流程图
4.5<定时中断0>描述
4.5.1功能描述
实现放大器增益等级的输入,控制信号的输出与相应的数码管和液晶的相应显示。
4.5.2输入输出项描述
输入:
键盘共有四个按键,第一个按键使增益等级达到最大(1.5倍),第二个按键使增益等级达到最小(0.1倍),第三个按键使增益增大一个等级,第四个按键使增益减小一个等级(循环进行)。
输出:
数码管显示:
显示具体的增益等级值(如“1.3”)
液晶显示:
开机滚动画面显示,分两行显示增益等级值
(如增益等级值为1.3时显示"Amplifyscale:
a=1.3")
4.5.3数据结构
1.寄存器:
ADDR_8SEGXBYTE[0x2000]:
数码管段驱动寄存器地址
ADDR_SELXBYTE[0x4000]:
数码管位驱动和指示灯驱动寄存器地址
2.全局变量:
unsignedcharbdataoutput_sel;数码管位驱动和指示灯驱动信号输出缓存可位寻址的变量[18]
sbitled_1=output_sel^5;
sbitled_2=output_sel^6;
sbitled_3=output_sel^7;
sbitled_4=output_sel^4;
unsignedchardigi_scaner:
数码管扫描驱动指针
unsignedchardigi[4]:
数码管4位输出数组变量,十进制表示,
unsignedcharcount:
增益倍数变量
3.记录状态变量:
unsignedchartime:
按键检测时间间隔计数器
4.5.4调用函数说明
timer0()interrupt1using0
功能:
定时中断0,每5ms进入中断
输入:
无
输出:
无
voidkeyboard();
功能:
每0.15秒检测按键,使相应的指示灯亮,digi[]变为相应的数值,并将增益倍数变量count改变到相应的值
输入:
键盘输入
输出:
数码管4位输出数组变量digi[],增益倍数变量count改变到相应的值
voidswitch_output();
功能:
由增益倍数变量count,计算CD4066控制输出口的输出值
输入:
增益倍数变量count
输出:
CD4066控制输出口的信号R1,R2,R3,R4
unsignedcharNUMTOSEG7(unsignedcharDATA)[19]
功能:
7段数码显示译码
输入:
需要显示的数字或符号DATA
输出:
7段译码结果(D7~0=PGFEDCBA)
voiddigital_output();[20]
功能:
经NUMTOSEG7(DATA)译码,动态扫描数码管4位显示
输入:
数码管4位输出数组变量digi[]
输出:
数码管4位显示
4.5.5流程图
定时中断0的流程图如图4.4所示。
图4.4定时中断0的流程图
5.系统功能及技术指标测试
5.1测试项目
1.测试增益放大器的增益等级,输出从0.1到1.5的15不同等级。
各等级的实际增益值与标准值比较,误差应小于3%,且越精确越好。
2.数码管显示相应的增益等级值(如“1.3”)
3.液晶板显示开机滚动字幕,以及同步显示增益放大系数。
4.按键具备应有的功能:
第一个按键使增益等级达到最大(1.5倍),第二个按键使增益等级达到最小(0.1倍),第三个按键使增益增大一个等级,第四个按键使增益减小一个等级(循环进行),按键灵敏度检测。
5.2测试的资源
测试设备:
直流稳压电源1V,5V,-5V、万用表、电脑
测试环境:
电信群楼4-105实验室
5.3测试方法
在接口处分别接入1V左右(输入电压Vi),5V和-5V(为μa741供电),万用表接在输出端测量电压。
通过按键改变增益值,计算增益倍数以及增益误差是否符合规定。
同时测试液晶屏与数码管所显示的信息是否和当前输出电压相同并检测按键的灵敏度。
5.4测试结果及分析
实测增益值和与标准值误差分析如表5.1所示。
输入电压(V)
输出电压(V)
显示增益
实测增益
误差(%)
1
0.9997
0.0992
0.1
0.0992
-0.7702%
2
0.9995
0.2002
0.2
0.2003
0.1501%
3
0.9995
0.301
0.3
0.3012
0.3835%
4
0.9993
0.3994
0.4
0.3997
-0.0801%
5
0.9993
0.5001
0.5
0.5005
0.0901%
6
0.9992
0.601
0.6
0.6015
0.2469%
7
0.9992
0.7017
0.7
0.7023
0.3231%
8
0.9991
0.8062
0.8
0.8069
0.8658%
9
0.999
0.9068
0.9
0.9077
0.8564%
10
0.9989
1.0077
1.0
1.0088
0.8810%
11
0.9988
1.1083
1.1
1.1096
0.8756%
12
0.9987
1.2064
1.2
1.2080
0.6642%
13
0.9986
1.307
1.3
1.3088
0.6794%
14
0.9985
1.4078
1.4
1.4099
0.7082%
15
0.9986
1.5085
1.5
1.5106
0.7077%
表5.1实测增益值和与标准值误差分析
测试结果分析:
增益误差均在±1%之内符合要求,液晶板与数码管显示达到设计要求,按键灵敏度稍欠,但功能正常
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 科技创新2A第5组设计报告 液晶 科技 创新 设计 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)