毕业论文-基于at89c51单片机的三相信号源设计内容摘要:
机在计算机外围设备中的应用:单片机广泛应用于打印机、绘图机等多种计算机的外围设备,特别是用于智能终端,可大大减轻主机负担,提高系统的运行速度。 ⑥ 单片机在家用电器中的应用:单片具有体积小、重量轻、价格便宜等特点,所以家电产品中配上微电脑后,使其身价百倍,功能更强,使用方便,灵活,深得用户欢迎。 ⑦ 单片机在通信中的应用:单片机广泛应用于移动通信领域,使移动电话的功能更强大,操作更方便。 节 89C51 和 DAC0832 芯片介绍 (a) 89C51 芯片 89C51[4]的内 部结构 及一般接口电路结构如图 、 所示。 单片机 基本系统即 单片机 正常工作不可缺少的部分,进行设计都要在此系统基础上进行。 (1) 外接晶振引脚 XTAL1 与 XTAL2 单片机 之所以要加振荡器是因为 单片机 内的 CPU在执行指定程序时,要经过 “取指 ”、 “译码 ”,再定时给相关电路发出控制信号,以实现 “机器码指令 ”所要求的功能。 这就要求内部必 须有一个基准时钟。 可通过外接晶振或振荡信号二种方式来实现,一般采用外接晶振的方法较方便。 三亚学院毕业论文(设计) 第 8 页 图 89C51结构图 图 XTAL1(19), XTAL2(18)为外接晶振的两个引脚。 接入晶振时,还要接入两个 20~30 pF 的瓷片电容 C1, C2,晶振频率因 单片机 工作速度而异, Intel MCS51 系列为 ~12 MHz, ATMEL89C 系列为 0~ 24 MHz,目前常采用 6 MHz, MHz 和 12 MHz。 石英晶振起振后, XTAL2(18)脚有一个 3 V 左右的正弦波。 C1, C2 短路、晶振不良,AT89C51(18), (19)脚内部反相器会损坏。 VCC 电源未加上等故障可能造成晶振不起振,使 单片机 无法工作。 当采用外部振荡器时,信号接入 (19)脚, (18)脚悬浮。 振荡器的 12分频为一个机器周期,当外接 12 MHz 晶振时,一个机器周期为 1μs。 MCS51 大多数指令为一个机器周期。 (2)复位与复位电路 单片机 必须进行复位,是因为 单片机 内的 CPU“取指 ”过程即为 CPU从 PC 指针所指定的程序存储器 ROM 地址单元中读取 “机器码 ”的过程。 单片机 加电后, PC 指针应指向ROM 中某个固定的单元,当然,程序开始的第一条指令也应放在 ROM 的这一地址单元内,这样整个程序才能有序地执行。 这个单元就是 ROM 的 0000H单元。 只有上电复位正常后, PC 值才为 0000H,即指向 ROM 的 0000H单元。 此外,专用寄存器 SFR中的 SP 为 07H,即指向片内数据存储器 (片内 RAM)07H单元, P0~ P3 值为 0FFH,其余的专用寄存器值大多为 00H。 复位的方法:当振荡器正常工作时, RST(9)脚上出现的两个机器周期的高电平将使 三亚学院毕业论文(设计) 第 9 页 单片机 有效复位。 考虑到振荡器有一定的起振时间,该引脚必须保持 10 ms 以上高电平,才能有效复位。 复位电路有开机自动复位和手动复位。 注意:复位信号为 2 个以上机器周期的高电平, 单片机 复位后正常工作时应该为 低电平,如果未加复位电平或复位后复位电平仍未撤除,则 单片机 不能正常工作,此时,可检查 RST 电压及相关器件。 在掉电期问 RST/ VPD 引脚如接入备用电源 VPD(5 V177。 V),则可保存片内数据。 当 VCC 下降到某一规定值时, VPD 便向片内 RAM 供电。 (3)EA/ VDD 片内程序存储器选用端 单片机 复位后, PC 指针可能指向片内 ROM0000H或片外 ROM0000H单元,这取决于 EA/ VDD(31)脚外接高电平 (指向片内 ROM0000H)还是低电平 (指向片外ROM0000H)。 AT89C51 内部有 4 kB ROM,这时 EA(31)脚需外接高电位 VCC。 在编程期间,此引脚作编程电压 VDD 的输入端。 (b) DAC0832 芯片 DAC0832 是具有 20条引脚的双列直插式 COMS 器件,它内部具有两级数据寄存器,完成 8 位电流 D/ A转换。 其结构框图及信号引线如图 所示。 图 0832系统框图 以下是其三种不同的工作方式: (1)直通方式 将 WR1, WR2, XFER, CS 接地, ILE 接高电平,就能使得两个寄存器的输出跟随输入的数字量变化, DAC0832 的输出也同时跟随变化。 直通方式常用于连续反馈控制的环路 三亚学院毕业论文(设计) 第 10 页 中。 (2)单缓冲方 式 单缓冲方式就是将其中一个寄存器工作在直通状态,另一个处于受控的锁存器状态。 在实际应用中,如果只有一路模拟量输出,或虽有几路模拟量但并不要求同步输出,就可采用单缓冲方式。 (3)双缓冲方式 所谓双缓冲方式就是将两个寄存器都处于受控的锁存方式。 为了实现两个寄存器的可控,应当给它们各分配一个端口地址,以便能按照端口地址进行操作。 D/ A转换 采用两步写操作来完成。 可在 DAC0832 转换输出前一个数据的同时,将下一个数据传送到输入寄存器,以提高 D/ A 转换 速度。 还可用于多路数模转换系统,以实现多路模拟信号同步输 出的目的。 在所设计的电路中 DAC0832 采用的是单缓冲方式。 (c) 74LS373 锁存芯片 图 74LS373系统框图 74LS373 的一般接口电路如图 所示。 74LS373[8] 的输出端 Q0~ Q7 可直接与总线相连。 当三态允许控制端 OE 为低电平时, Q0~ Q7为正常逻辑状态,可用来驱动负载或总线。 当 OE 为高电平时, Q0~ Q7 呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响。 当锁存允许端 LE 为高电平时, Q 随数据 D 而变。 当 LE 为低电平时, D 被锁存在已建立的数据电平。 当 LE 端施密特触发器的输入滞后作用,使交流和直流噪声抗扰度被改善 400mV。 引出端符号: 三亚学院毕业论文(设计) 第 11 页 D0~ D7 数据输入端 OE 三态允许控制端(低电平有效) LE 锁存允许端 Q0~ Q7 输出端 节 基本模块 电路 单片机的时钟信号 [3]用来提供单片机内各种微操作的时间基准;复位操作则使单片机的 片内电路初始化,使单片机从一种确定的状态开始运行。 (a) 时钟电路 时钟信号产生电路如图 所示。 单片机的时钟信号通常用两种电路形式得到:内部振荡和外部振荡方式。 图 时钟部分电路图 在引脚 XTAL1 和 XTAL2 外接晶体振荡器或陶瓷谐振荡器,构成了内部振荡方式。 由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自积振荡,并产生振荡时钟脉冲。 晶振通常选用 6MHZ、 12MHZ、或 24MHZ。 单片机的时序单位 振荡周期 :晶振的振荡周期,又称时钟周期,为最小的时序单位。 状态周期 :振荡频率经单片机内的二分频器分频后提供给片内 CPU的时钟周期。 因此一个状态周期包含 2 个振荡周期。 机器周期 :1 个机器周期由 6 个状态周期 12 个振荡周期组成,是计算机执行一种基本操作的时间单位。 指令周期 :执行一条指令所需的时间。 一个指令周期由 14 个机器周期组成,依据指令不同而不同 . (b) 复位电路 复位电路如图 所示。 当 MCS5l 系列单片机的复位引脚 RST(全称 RESET)出现 2个机器周期以上的高电平时,根据应用的要求,复位操作通常有两种基本形式:上电复位和上电或开关复位。 上电复位要求 接通电源后,自动实现复位操作。 上电或开关复位 三亚学院毕业论文(设计) 第 12 页 要求电源接通后,单片机自动复位,并且在单片机运行期间,用开关操作也能使单片机复位。 上电后,由于电容 C3 的充电和反相门的作用,使 RST 持续一段时间的高电平。 当单片机已在运行当中时,按下复位键 K 后松开,也能使 RST 为一段时间的高电平,从而实现上电或开关复位的操作。 图 复位电路 单片机的复位操作使单片机进入初始化状态,其中包括使程序计数器 PC= 0000H,这表明程序从 0000H 地址单元开始执行。 单片机冷启动后,片内 RAM 为随机值,运行中的复位 操作不改变片内 RAM 区中的内容, 21 个特殊功能寄存器复位后的状态为确定值统复位是任何微机系统执行的第一步,使整个控制芯片回到默认的硬件状态下。 51单片机的复位是由 RESET 引脚来控制的,此引脚与高电平相接超过 24 个振荡周期后,51 单片机即进入芯片内部复位状态,而且一直在此状态下等待,直到 RESET 引脚转为低电平后,才检查 EA 引脚是高电平或低电平,若为高电平则执行芯片内部的程序代码,若为低电平便会执行外部程序。 51 单片机在系统复位时,将其内部的一些重要寄存器设置为特定的值,至于内部 RAM 内部的数据则不变。 节 运放电路及 1602 频率显示 图 1602部分电路图 显示外接 电路如图 所示。 LCD1602[5]引脚及其功能介绍如表 31所示。 表 31 三亚学院毕业论文(设计) 第 13 页 管脚号 管脚名称 LEVER 管脚功能描述 1 VSS 0V 电源地 2 VDD 电源电压 3 VEE 对比调整电压 4 RS H/L RS=“ H” ,表示 DB7~DB0 为显示数据 RS=“ L” ,表示 DB7~DB0 为显示指令数据 5 R/W H/L R/W=“ H” ,E=“ H” ,数据被读到 DB7~DB0 R/W=“ L” ,E=“ H→ L” DB7~DB0 的数据被写到 IR 或 DR 6 E H/L 使能信号: R/W=“ L” ,E信号下降沿锁存 DB7~DB0 R/W=“ H” E=“ H” DRAM 数据读到 D7~D0 7 D0 H/L 数据线 8 D1 H/L 数据线 9 D2 H/L 数据线 10 D3 H/L 数据线 11 D4 H/L 数据线 12 D5 H/L 数据线 13 D6 H/L 数据线 14 D7 H/L 数据线 节 键盘电路 键盘电路如图 所示, 对应的 按键有启动和停止作用, 对应的按键 是减少频率, 对应的按键是加频率。 图 键盘电路图 三亚学院毕业论文(设计) 第 14 页 第 IV 条 第 4 章 系统软件流程图 节 主 程序流程图 主流程图如图 所示。 节 系统 程序设计 include //头文件 define uchar unsigned char define uint unsigned int sbit lcdrw=P3^3。 //位变量的定义 sbit lcdrs=P3^2。 //位变量的定义 开始 初始化 S1 按下 有按键按下。 S3 按下 S2 按下 S1num+1 延时增 f 减小 延时减 f 增大 S1num=1 S1num=2 输出正弦波 液晶显示 f 无输出 S1num=0 液晶显示 f 液晶显示 f N Y 图 三亚学院毕业论文(设计) 第 15 页 sbit lcde=P3^4。 //位变量的定义 sbit s1=P2^0。 //位变量的定义 sbit s2=P2^1。 //位变量的定义 sbit。毕业论文-基于at89c51单片机的三相信号源设计
相关推荐
EPROM 的存储内容如表 所示。 哈尔滨广厦毕业设计 12 表 四相步进电机八拍工作方式存储状态表 地址 内容 D C B A 励磁状态 00H 01H 0001 A 01H 03H 0011 AB 02H 02H 0010 B 03H 06H 0110 BC 04H 04H 0100 C 05H 0CH 1100 CD 06H 08H 1000 D 07H 09H 1001 DA 08H
{ display[5]=0x0a。 flag2=0。 } }//最高位为 0 时都不显示 } // // /**************主函数 ****************/ main() { double templ。 ser_init()。 Disdata=0xff。 //初始化端口 discan=0xff。 for(h=0。 h4。 h++){display[h]=0。
常分为左箕型、右箕型、斗型 、拱型和尖拱型,如图 2 6 ( 1) 左箕型 ( 2)右箕型 ( 3)斗型 ( 4)拱型 ( 5)尖拱型 图 2 各种类型的指纹 ( ii)模式区: 模式区是指纹图像上包含了总体特征的区域,从模式区上 能够辨出指纹属于那种类型。 ( iii)核心点: 核心点位于指纹纹路的渐近中心,它常用作读取指纹和比对指纹时的参考点。 ( iv)三角点:
teTemp=1。 break。 case 0xFD:state=2。 stateTemp=2。 break。 case 0xFB:state=3。 stateTemp=3。 break。 case 0xF7:state=4。 stateTemp=4。 break。 default:break。 } } void _int()interrupt 2 using 2 { if(flag==0) {
oid:layout_height=wrap_content android:layout_gravity=right android:layout_marginRight=2dip android:text=退出 android:background=@drawable/button/ /LinearLayout 相对布局参见图 32: 图示 32 相对布局 核心技术代码: ?xml
used[x][y] = calculateUsedTiles(x, y); } } //游戏结束 int num=0。 for(int i=0。 i81。 i++){ if(puzzle[i]!=0) num++。 } if(num==81){ Intent t=new Intent(this,)。 sec=time。 //计算用户用时分秒 =false。 //停止计时 (aaa,flag