基于AT89S52与PIC16F877A的在线编程控制系统

时间:2012-02-10来源:网络

  PIC16F877A部分电路原理如图3所示。

PIC16F877A部分电路原理

  4 软件设计

  4.1 AT89S52部分

  首先执行系统初始化,初始时钟,全局变量,定时器,IO端口,键盘中断服务子程序。

  然后进入MAINLOOP循环程序,等待接受键盘中断。如果键盘有输入动作,系统产生键盘中断,进入键盘中断服务子程序。

  键盘中断服务子程序的主要功能是生成命令数据包,并根据用户指令处理该命令数据包。

  命令数据包的格式如下:

命令数据包的格式

  若用户确认,则发送到PIC16F877A执行;

  若用户取消,则退出键盘中断服务子程序,重新进入等待状态。系统运行流程图如图4所示。

系统运行流程图

  4.2 PIC软件结构

  PIC系统初始化后首先按默认参数启动PWM输出,在启动过程中不断地进行A/D转换,将采集到的数据根据PID策略调节PWM的占空比,从而达到调节电机转速的目的,同时不问断的监听PSP通道,若收到AT89S52的命令数据包,马上更新默认启动参数,让电机以新参数模式运行在新转速状态。

  PIC16F877A执行软件运行流程图如图5所示。

PIC16F877A执行软件运行流程图

  5 结 语

  利用AT89S52作为主处理器,PIC16F87X作为从处理器,使控制精度大为提高,可达10位PWM精度。AT89S52与PIC16F87X具有在线编程功能,功能齐全,片上资源丰富,可以满足系统升级要求。随着带有系统在线编程功能的单片机得到广泛应用与发展,ISP技术成了未来发展方向,基于在线编程技术的控制系统应用也将越来越广泛。

1 2

关键词: 编程 控制系统 在线 PIC16F877A AT89S52 基于

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版