王旭涛副本.docx
- 文档编号:5056320
- 上传时间:2023-05-07
- 格式:DOCX
- 页数:11
- 大小:358.08KB
王旭涛副本.docx
《王旭涛副本.docx》由会员分享,可在线阅读,更多相关《王旭涛副本.docx(11页珍藏版)》请在冰点文库上搜索。
王旭涛副本
科信学院
电子应用系统综合训练(二级)项目
设计说明书
(2012/2013学年第一学期)
题目:
基于单片机微电压传感器信号测量仪
专业班级:
电子信息09-21
学生姓名:
学号:
指导教师:
耿志卿马永强
李丽宏刘会军
设计周数:
1周
设计成绩:
2013年1月17日
1.CDIO设计目的
1.1主要任务
1查阅相关资料了解题目设计原理及相关知识,
2熟悉所用开发软件和工具的使用方法
3对指定题目进行电路图设计
4实现设计电路编写单片机程序进行测试和记录
1.2技术要求
1差模电压放大倍数1-200,可手动调节,输出电压0-5V,非线性误差<0.5%.。
2画出电路原理图,确定元器件一元件参数。
3电路仿真。
4SCH文件生成与打印输出。
5画出PCB版图;搭建电路硬件,是此案其功能。
2、CDIO设计正文
2.1系统分析
2.1.1 系统ADC0832芯片芯片的简介
ADC0832具有以下特点:
(1)8位分辨率;
(2)双通道A/D转换;(3)输入输出电平与TTL/CMOS相兼容;(4)5V电源供电时输入电压在0~5V之间;(5)工作频率为250KHZ,转换时间为32μS;(6)一般功耗仅为15mW;(7)8P、14P—DIP(双列直插)、PICC多种封装;(8)商用级芯片温宽为0°Cto+70°C,工业级芯片温宽为40℃-+85℃
引脚及功能:
图1DAC0832引脚图
CS:
片选使能,低电平有效
CH0:
模拟输入通道0,或作为IN+/-使用
CH1:
模拟输入通道1,或作为IN+/-使用
GND:
芯片参考0电位(地)
DI:
数据信号输入,选择通道控制
DO:
数据信号输出,转换数据输出
CLK:
芯片时钟输入
VCC:
电源输入
ADC0832为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。
其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在0~5V之间。
芯片转换时间仅为32μS,具有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。
独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。
通过DI数据输入端,可以轻易的实现通道功能的选择。
正常情况下ADC0832与单片机的接口应为4条数据线,分别是CS、CLK、DO、DI。
但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI并联在一根数据线上使用。
时序图:
图2ADC0832时序图
CS作为选通信号,在时序图中可以看到,从CS置为低电平开始,一直到置为高电平结束。
CLK提供时钟信号。
当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,CLK和DO/DI的电平可任意。
当要进行A/D转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束。
此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。
在第1个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。
在第2、3个脉冲下沉之前DI端应输入2位数据(SGL、Odd)用于选择通道功能,当此2位数据为“1”、“0”时,只对CH0进行单通道转换。
当2位数据为“1”、“1”时,只对CH1进行单通道转换。
当2位数据为“0”、“0”时,将CH0作为正输入端IN+,CH1作为负输入端IN-进行输入。
当2位数据为“0”、“1”时,将CH0作为负输入端IN-,CH1作为正输入端IN+进行输入。
在完成输入启动位、通道选择之后,到第3个脉冲的下沉之后DI端的输入电平就失去输入作用,此后DO/DI端则开始利用数据输出DO进行转换数据的读取。
从第4个脉冲下沉开始由DO端输出转换数据最高位DATA7,随后每一个脉冲下沉DO端输出下一位数据。
直到第11个脉冲时发出最低位数据DATA0,一个字节的数据输出完成。
也正是从此位开始输出下一个相反字节的数据,即从第11个字节的下沉输出DATA0。
随后输出8位数据,到第19个脉冲时数据输出完成,也标志着一次A/D转换的结束。
最后将CS置高电平禁用芯片,此时就可以开始读出数据,转换得到的数据会被送出二次,一次高位在前传送,一次低位在前传送,连续送出。
在程序读取二个数据后,我们可以加上检验来看看数据是否被正确读取。
作为单通道模拟信号输入时ADC0832的输入电压是0~5V且8位分辨率时的电压精度为19.53mV。
如果作为由IN+与IN-输入的输入时,可将电压值设定在某一个较大范围之内,从而提高转换的宽度。
但值得注意的是,在进行IN+与IN-的输入时,如果IN-的电压大于IN+的电压,则转换后的数据结果始终为00H。
2.1.2AD620的基本特点
1)精确度高、使用简单、低噪声
2)高输入阻抗:
10GΩ||2pF
3)高共模具斥比高(CMR):
100dB
4)低输入抵补电压(InputoffsetVoltage):
50uV
5)低输入偏移电流(Inputbiascurrent):
1.0nA
6)低功耗电流:
1.3mA
7)具有过电压保护功能.
8)性能更加稳定.
9)使用方便
10)编程控制简单
AD620规格参数表如表1所示
表1AD620规格参数表
项目
规格特性
备注
增益范围
1-1000
只需要一个电阻即可设定
电压供应范围
-2.3V-18V
低耗电量
Maxsupplycurrent=1.3mA
可用电池驱动。
方便应用于可携带器材中
精确度高
低补偿电压:
VOFFSET(max)=50uV飘移电压:
0.6uV
应用场合
ECG量测与医疗器械。
压力量测、数据撷取系统
AD620内部结构框图如下图3AD420内部结构图所示:
图3AD420内部结构图
图4AD620引脚示意图所示为AD620仪表放大器的外围引脚图。
其中1、8脚需跨接一电阻来调整放大倍率,4、7脚需提供正负相等的工作电压,由2、3脚接输入的放大的电压即可从6脚输出放大后的电压值。
5脚则是参考基准,如果接地则第6脚的输为输为与地之间的相对电压。
AD620的放大增益关系所示,由此二式我们即可推算出各种增益所要使的
电阻值RG了。
图4AD620引脚示意图
引脚功能如下:
1和8、外接增益调节电阻;2、反向输入端;3、同向输入端;4、负电源;5、基准电压;6、共地信号输出;7、正电源;
2.2整体电路
本系统的整体电路如下图5所示
图5系统的的整体电路图
2.2.1程序流程图
2.2.2系统的代码实现
2.2.2.1adc0832程序代码
/******************adc0832****************************
sbitCLK=P3^4;//时钟接口
sbitDI=P3^3;//数据输入接口
sbitDO=P3^3;//数据输出接口
sbitCS=P3^5;//片选使能接口
0x02就是单通道0;0x03就是单通道1;
0x00就是双通道ch0="+";ch0="-"
0x01就是双通道ch0="-";ch0="+"
*****************************************************/
2.2.2.2主程序代码
#include
#include
#include
#defineuintunsignedint
#defineucharunsignedchar
sbitCS=P3^5;//片选使能接口
sbitCLK=P3^4;//时钟接口
sbitDI=P3^3;
sbitDO=P3^3;
sbitRS=P2^0;
sbitRW=P2^1;
sbitE=P2^4;
ucharResult_ADC0832=0;//转换结果变量
ucharDisplay_Buffer[2][16]={
{"CurrentVoltage:
"},
{"CH=0.00V"}
};
//函数声明
ucharGet_Value_ADC0832();//获取指定通道的A/D转换结果
voidRefesh_Disp_Buffer();//刷新显示缓冲
voidLCD_Busy_Check();//忙检查
voidLCD_Write_Command(ucharcmd);//向LCD写入命令
voidWrite_LCD_Data(uchardat);//向LCD写入数据
voidInitialize_LCD1602();//液晶初始化函数
voidLCD_Display(ucharstr[]);//在LCD上显示字符串
voidDelayMS(uintX);//延时程序
ucharRead_State();//读取LCD的状态
//--------------------------------------------------------------
//主程序
//-----------------------------------------------------------------
voidmain()
{
ucharj;
Initialize_LCD1602();//液晶初始化函数
while
(1)
{
for(j=0;j<2;j++)
{
Get_Value_ADC0832();//通道0.1,A/D转换
Refesh_Disp_Buffer();//刷新显示缓冲
if(j==0)
{
LCD_Write_Command(0x80);//写LCD命令,设置从第0行位置开始显示
LCD_Display(Display_Buffer[j]);//在LCD上显示字符串
}
else
{
LCD_Write_Command(0xC0);//写LCD命令,设置从第1行位置开始显示
LCD_Display(Display_Buffer[j]);//在LCD上显示字符串
}
}
}
}
3.设计总结或结论
本节课我们主要学习了如何应用ADC0832设计一个数字电压表。
知道了在硬件上ADC0832芯片和单片机的连接,在软件方面,我们着重介绍了如何获取A/D转换结果函数的设计,这需要我们从ADC0832芯片的技术资料中获得设计程序的方法。
这充分说明利用单片机控制硬件芯片时,芯片的引脚功能、控制逻辑和控制时序对程序的设计是多么的重要。
通过这次课程设计的练习,让我们对电路系统的设计和实施有了更加完整的了解,增加了课程的兴趣。
4.参考文献
[1]周元一.电机与电气控制.机械工业出版社.2006.8
[2]曹克澄.单片机原理及应用.机械工业出版社.2005.
[3]靳达编著.单片机应用系统开发实例导航.北京:
人民邮电出版社,2003
[4]南建辉、熊鸣、王军茹.MCS-51单片机原理及应用实例.清华大学出版社,2004
[5]万福君.单片微机原理系统设计与开发应用.中国科学出版社,1995
[6]张友德、赵志英等.单片机原理应用与实验.上海复旦大学出版社,1992
课程设计
评语
课程设计
成绩
指导教师
(签字)
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 王旭涛 副本