标题: 单片机天车控制系统仿真和源程序 [打印本页]

作者: xieqiang520    时间: 2018-7-1 17:17
标题: 单片机天车控制系统仿真和源程序
天车控制系统仿真加控制
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


单片机源程序如下:
  1. #include "AT89X52.h"
  2. #include "intrins.h"

  3. // Definition for output port and input pins
  4. #define out_port  P3

  5. unsigned char const sequence[8] = {0x02,0x06,0x04,0x0c,0x08,0x09,0x01,0x03};

  6. sbit key_for = P1 ^ 2;
  7. sbit key_rev = P1 ^ 3;

  8. sbit Inc = P1 ^ 0;
  9. sbit Dec = P1 ^ 1;
  10. sbit Dir = P2 ^ 0;
  11. sbit PWM = P2 ^ 1;

  12. int speed;

  13. void delay(unsigned int j)
  14. {
  15.   for(; j>0; j--);
  16. }
  17. void delayms(unsigned int j)
  18. {
  19.   unsigned char i;
  20.   for(; j>0; j--)
  21.   {
  22.     i = 120;
  23.     while (i--);  
  24.   }
  25. }

  26. void DCMotoDeal(void)
  27. {
  28.       if(!Inc)
  29.       {
  30.          speed = speed > 0 ? speed - 1 : 0;
  31.       }
  32.       if(!Dec)
  33.       {
  34.          speed = speed < 500 ? speed + 1 : 500;
  35.        }
  36.       PWM=1;
  37.       delay(speed);
  38.       PWM=0;
  39.       delay(500-speed);
  40. }

  41. void StepMotoDeal(void)
  42. {
  43.     unsigned char i;
  44.     if (!key_for)
  45.     {
  46.        i = i<8 ? i+1 : 0;
  47.          out_port = sequence[i];
  48.          delayms(50);
  49.     }
  50.     else if (!key_rev)
  51.     {
  52.         i = i>0 ? i-1 : 7;       
  53.         out_port = sequence[i];
  54.         delayms(50);
  55.     }
  56. }

  57. void main(void)
  58. {
  59.    // 选择方向和时间
  60.    Dir = 1;
  61.    if (Dir)
  62.    {
  63.       speed = 400;
  64.     }
  65.    else
  66.    {
  67. ……………………

  68. …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码

所有资料51hei提供下载:
天车控制系统.zip (57.32 KB, 下载次数: 16)



作者: 664695681    时间: 2019-1-8 18:54
谢谢楼主 不过不好下载啊,有联系方法吗?





欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1