打印
[AVR单片机]

如何将两个互相独立的程序整合成一个程序,

[复制链接]
1304|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
nature0|  楼主 | 2014-11-27 23:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
ningling_21| | 2014-11-28 11:08 | 只看该作者
程序合并时,函数,变量和管脚定义不能重复

使用特权

评论回复
板凳
nature0|  楼主 | 2014-11-29 16:33 | 只看该作者
ningling_21 发表于 2014-11-28 11:08
程序合并时,函数,变量和管脚定义不能重复



你好,请再回答我一个问题,这有一个四线双极性步进电机正转程序,如何改成反转程序。
大神原谅我,问的问题有点低级。



void Go()
{        char i ,temp;
     //A
    PH1 = 0;  //PH1为0 则A线圈为反向电流
        for(i = 0; i<3; i++)
        {  temp = P1;
           P1 = TableA;
           P1 = P1&temp;
           delay(1);
         }
       

        PH2 = 0;  //PH2为0 则B线圈为反向电流
        I02 = 1;
        I12 = 1;   //输出0

        delay(speed);
        //0
        PH1 = 0;  //PH1为0 则A线圈为反向电流
    I01 = 1;  //输出0
        I11 = 1;
       

        PH2 = 1;  //PH2为1 则B线圈为正电流
        for(i = 0; i<3; i++)
        {  temp = P1;
           P1 = TableB;
           P1 = P1&temp;
           delay(1);
         }

        delay(speed);
        //B
        PH1 = 1;   //PH1为1 则A线圈为正向电流
        for(i = 0; i<3; i++)
        {  temp = P1;
           P1 = TableA;
           P1 = P1&temp;
           delay(1);
         }

        PH2 = 1;  //PH2为1 则B线圈为正向电流
        I02 = 1;  //输出0
        I12 = 1;
                   ////
        delay(speed);
        //0
        PH1 = 1;   //PH1为1 则A线圈为正向电流
        I01 = 1;
        I11 = 1;
       

        PH2 = 0;   //PH2为0 则B线圈为反向电流
        for(i = 0; i<3; i++)
        {  temp = P1;
           P1 = TableB;
           P1 = P1&temp;
           delay(1);
         }
        delay(speed);
               

}

使用特权

评论回复
地板
ningling_21| | 2014-11-29 16:37 | 只看该作者
nature0 发表于 2014-11-29 16:33
你好,请再回答我一个问题,这有一个四线双极性步进电机正转程序,如何改成反转程序。
大神原谅我,问 ...

你只要明白步进电机 驱动的原理就能自己改了

使用特权

评论回复
5
ayb_ice| | 2014-12-3 10:56 | 只看该作者
建个函数,调用两次就可以了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

8

帖子

0

粉丝