- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机在缓冲器中应用
单片机在缓冲器中应用
摘要:介绍了单片机对电机旋转速度进行测试和对缓冲器进行控制,并对频压转换进行了分析,详细地介绍了单片机在缓冲器的应用过程中的软、硬件的设计过程。
关键词:单片机 频压转换
0 引言
某产品电机旋转,根据产品的要求和技术指标,不允许电机正转转速超过7000转/秒和负向转速超过500转/秒,如要超过则产品会受到损伤,产品缓冲器是对产品电机旋转的一种保护装置。该装置的一项重要的功能是产品电机正向或负向超过规定转速时,装置立刻启动,增加产品电机的负载,使产品电机转速立刻慢下来或者停止,从而达到了保护产品的目的。
1电机旋转速度的测试和分析
电机在旋转的过程中,输出一种类似于正弦波的交流信号,与电机旋转速度同频,关于旋转速度的测试,通常是利用频率计进行测试,或者将其正弦波信号转化为方波信号,利用单片机的计数功能进行测试。 这种方法有缺点,每秒钟测试一次电机旋转的速度,并不是时时测试电机的旋转,同时对缓冲器的控制增加了难度。本文介绍一种基于频压转换的方法对电机旋转速度进行转换,并用单片机对转换信号进行采集,对缓冲器进行控制。
2缓冲器的原理设计
在控制方面,使用MCS-51系列芯片中的AT89C52单片机,该芯片所具有的功能:8位CPU,多功能的I/O端口,16位定时器/计数器,全双功的异步串行通信接口,具有多个中断源,两个中断优先级的中断控制系统,片内闪速存储器等。就其两个外部中断源是从INT0(P3.2)和INT1(P3.1)引脚输入,外部请求中断触发信号有两种,既电平触发和下跳沿触发,可由软件通过控制寄存储器来选择。CPU检测到或收到中断申请后,都会使各自的标志位置位,CPU则在下一个机器周期检测这些标志位,以决定是否要响应中断,这些标志位分别位于有关控制寄存器的响应位。
在特殊功能寄存器中,IE是中断允许寄存器,字节地址是A8H,位地址是A8H~AFH。IE控制CPU对中断源总的开放或禁止以及每个中断源是否允许中断,具体格式如表一:
EA是CPU中断允许位,EA=1,CPU开放中断;EA=0,CPU禁止所有的中断申请。EX0和EX1分别是外部中断0和外部中断1的中断允许位,当EX0=1,允许外部中断0发生中断;EX0=0,禁止外部中断0发生中断。
VFC32是一种通用单片集成化V/F变换器,也可作为F/V变换器使用,该芯片允许正或负的输入电压模式和正的输入电流模式,集电级开路输出,逻辑输出电压与DTL、TTL和CMOS兼容,具有六个数量级的范围。
AD574A是快速、逐次比较型、12位模/数转换器,转换速度最大为35μs,转换精度小于等于0.05%,是目前我国场应用最广泛,价格适中的A/D变换器。AD574A片内具有三态输出缓冲电路,因而可直接与各种典型的8位或16位控制器相连,且能与CMOS及TTL电平兼容。通过改变引脚8、10、12的外接电路,可进行单极性和双级性模拟信号的转换。由于片内包含高精度的参考电压源和时钟电路,集成度高,外围元件少,这使它在不需要任何外部电路和时钟信号的情况下完成一切A/D转换功能,应用十分方便。
以下是基本电路原理图:
频率信号通过频压转换器件VFC32,变成直流电压信号,电压信号在输入AD转换芯片AD574A,将模拟信号转换成数字信号,由单片机AT89C52将数据读入并进行处理。AD574A是全十二位转换,单片机AT89C52是八位微控器,在读取数据时要分两次进行,芯片AD574的4管脚(A0)的电平决定了高八位和低四位数据的读出,当A0=0时,高八位有效,当A0=1时,低四位数据有效,在读数据时应遵循左对齐原则。AD574A的28管脚(STS)是输出状态引脚,当A/D转换开始时,STS达到高电平,转换过程保持高电平,转换完成时,返回低电平,STS可以作为状态信息被CPU查讯,也可以用它的下降沿向CPU发出中断申请,通知A/D转换已完成,CPU可读取转换数据。
3 软件的编制
编程使用的语言是C51,下面是0.1秒定时0中断子程序,晶振是6M Hz, xx是字节变量,起到计时作用,由于C51语言在转化汇编语言在定时方面有一定的偏差,具体的程序还需要进一步的调整,其基本程序如下:
void T1-int(void) interrupt 3
{
clr cy;
TL1=TL1+176;//T1低位寄存器幅值
TH1=TH1+60;// T1高位寄存器幅值
TR1=1;ET1=1;// 启动T1,允许T1发生中断
xx=xx+1; // 计时变量加1
}
下面是AD转换子程序,主要是读入AD转换数据,并进行
文档评论(0)