AD课程设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于单片机的系统设计

题 目 AD 转换 学 院 电子信息工程学院 学科门类 单片机 班 级 08电工 指导教师 王虹 小组成员 陈德浩 2008445224 蔡星涵 2008445232 张国栋 2008445179 日 期 2011年12月10日

一、 实验目的

(1)学习基于单片机的系统设计;

(2)学习单片机电路设计和制版工艺;

(3)学会数据采集电路设计;

4)学会VB 编写上位机,实现和单片机通信;

线

(5)学习单片机的软件设计;

二、实验要求

(1)要求每位同学设计单片机最小系统;

(2)每位同学自己设计硬件电路设计和程序编写;

(3)每位同学自己完成调试;

(4)认真细心的安装焊接。

三、使用的主要器材

(1)单片机,TLC549及其他元件一套;

(2)工具一套;

(3)PC机一台;

四、TLC549简介

4.1引脚排列

⏹/CS:片选低有效

⏹GND:地

⏹VCC:电源

⏹ANALOG IN:模拟信号输入

⏹DATA OUT :数据串行输出

⏹I/O CLOCK:外接输入输出时钟

⏹REF+:正基准电压输入端,REF+ 大于等于2.5V 小于等于Vcc+0.1V

⏹REF-:负基准电压输入端,REF+ 大于等于-0.1V 小于等于2.5V ,切要求REF+-

REF-大于等于1V

4.2内部结构

4.3时序分析

TLC549是SPI三总线器件,其时序见上图,当/CS为高电平时候,AD正在进行内部转换,转换时间大概为17us,当/CS有高电平变为低电平时候,这时候上次的采样转换结果的最高位A7首先出现在DATA OUT端,其余7位将会在7个I/O CLOCK的上升沿时候出现在DATA OUT端,在第4个I/O CLOCK的下降沿启动采样保持电路,开始采样模拟输入量,并在第8个I/O CLOCK的下降沿开始保持,这时候,/CS由低电平变为高电平,在其上升沿开始启动AD转换,这时候/CS需保持17us,保证本次的采样转换完成,

然后按上次一样步骤,输出AD转换结果和输入模拟采样。

五、上位机

5.1上位机简介

上位机软件通过串口,实现单片机和PC机的通信,以简单可视化的窗口,实现对单片机的监控。本次课程设计采用VB编写上位机,VB拥有功能强大的可视化窗口控件和串口控件Microsoft Comm Control 6.0,从而减少了编写上位机的难度。

5.2上位机思路

应为本次的课程设计要求,只是在PC机上通过串口显示电压,那么就不需要上位机通过串口发送指令,控制单片机。所以,编写上位机时候,我没有编写发送部分的指令。其次,本次采集的电压,电压范围为0v—5v,为充分利用数码管,我采用了一位整数和五位小数,并且在单片机内完成了二进制到BCD码的转换。在编写上位机传送程序时候,我想发送一针就包括小数和整数,这样编写单片机发送程序和上位机接收程序,就会简单,并且发送的是十进制BCD,这样就减少了上位机的运算。

下位机思路:因为一针是8为数据,那么最大为255,如果想一针包含两位小数,那么就需要把整数扩大100,第一位小数扩大10倍,然后相加:一针=整数位*100+第一位小数位*10+第二位小数位,因为采集的电压范围为0v—5v,这时候就由可能超出255的范围,如果一针包含一位整数和一位小数,那么他的范围为0v—50v,这时候不会超出255的范围,所以我发送的一针就包含一位整数和一位小数,即:一针=整数位*10+第一位小数位。采用9600波特率,1位开始为,1位结束位,8位数据位,没有校验位。

上位机思路:就收一针存于A,然后和10整除,结果存于B,然后C=A-10*B,那么B就是整数部分,C就是小数部分,显示即可

5.3上位机设计界面

5.4上位机程序

Public style1 As Integer

Public style As Integer Private Sub Form_Load()

If MSComm1.PortOpen = True Then MSComm1.PortOpen = False Else

End If

Combo1.AddItem "COM1"

Combo1.AddItem "COM2"

Combo1.AddItem "COM3"

Combo1.AddItem "COM5"

Combo1.AddItem "COM6"

Combo1.AddItem "COM7"

Combo1.AddItem "COM8"

Combo1.AddItem "COM9"

Combo1.AddItem "COM10"

Combo1.AddItem "COM11"

Combo1.AddItem "COM12"

Combo1.ListIndex = 0

mPort = 3

MSComm1.Settings = "9600,n,8,1" Command2.Caption = "打开串口" Shape1.FillColor = &HFFFFC0

Option2.Value = True

Combo2.AddItem "256000"

Combo2.AddItem "128000"

Combo2.AddItem "115200"

Combo2.AddItem "57600"

Combo2.AddItem "38400"

Combo2.AddItem "28800"

Combo2.AddItem "19200"

相关文档
最新文档