5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年)

标题: 昨天看到有人卖混控,不忿,一天时间自制混控成功,共享! [打印本页]

作者: suncxc    时间: 2005-4-16 02:53
标题: 昨天看到有人卖混控,不忿,一天时间自制混控成功,共享!
昨天看到有人卖混控,不忿,一天时间自制混控成功,共享!
源程序 1.0版本,写了一个小时,没有优化,轻微有点抖舵,有时间再修改!
#include<reg51.h>
unsigned char sig=0;
unsigned int elevator=1500;
unsigned int aileron=1500;
sbit int_0=P3^2;
sbit int_1=P3^3;
sbit CH0=P1^6;
sbit CH1=P1^7;
/********************************************/
void int_sever(unsigned int temp)
{
unsigned char sum;
TMOD=0x01;
temp=65535-temp;
sum=(unsigned char)(temp>>0x08);
TH0=sum;
sum=(unsigned char)(temp&0xff);
TL0=sum;
TR0=1;
while(!TF0){;}
TF0=0;
TR0=0;
TH0=0x00;TL0=0x00;
}
/********************************************/
V_DSP()
{
unsigned int E;
unsigned int A;
unsigned char E_sig;
unsigned char A_sig;
if(elevator>=1500)    {E=elevator-1500;E_sig=1;}
else                  {E=1500-elevator;E_sig=0;}
if(aileron>=1500)     {A=aileron-1500;A_sig=1;}
else                  {A=1500-aileron;A_sig=0;}  

if(E_sig==1)          {elevator=1500+E; aileron=1500+E;}
else                  {elevator=1500-E; aileron=1500-E;}
if(A_sig==1)          {elevator+=A; aileron-=A;}
else                  {elevator-=A; aileron+=A;}
}
/********************************************/
unsigned int impluse_A()
{
unsigned int counter;
unsigned char sum;
sum=TH0;
counter=sum;
counter=(counter<<0x08)|TL0;
TH0=0x00;TL0=0x00;
return(counter);
}
/********************************************/
unsigned int impluse_B()
{
unsigned int name;
unsigned char sum;
sum=TH1;
name=sum;
name=(name<<0x08)|TL1;
TH1=0x00;TL1=0x00;
return(name);
}
/********************************************/
void main()
{
CH0=0;CH1=0;
while(1)
{
   TMOD=0x99;
   TH0=0x00;TL0=0x00;TH1=0x00;TL1=0x00;
    while((int_0==1)||(int_1==1))
    {
     if(int_0==1)
     {TR0=1;while(int_0==1){;}TR0=0;  aileron=impluse_A(); sig++;}
     else if(int_1==1)
     {TR1=1;while(int_1==1){;}TR1=0; elevator=impluse_B(); sig++;}
     else;
    }
   while(sig>=2)
   {
  V_DSP();
    CH0=1;int_sever(aileron);  CH0=0;
    CH1=1;int_sever(elevator); CH1=0;
        sig=0;
   }
}
}

[ Last edited by suncxc on 2005-7-28 at 23:37 ]
作者: hllxg    时间: 2005-4-16 08:00
:em26::em26:
作者: dafangli2002    时间: 2005-4-16 11:36
:em00::em00::em00:支持
作者: 网络害虫    时间: 2005-4-16 12:48
:em26::em26::em26:
作者: 转速    时间: 2005-4-16 21:45
好同志.
作者: SUPERMAN    时间: 2005-4-17 14:25
:em26::em26::em26::em24:
作者: 天缘    时间: 2005-4-17 16:02
党的好儿女!
敬佩!!:em26:
作者: 三子    时间: 2005-4-17 16:17
技术交流就要这样,:em26::em26::em26:好,
作者: hzku    时间: 2005-4-17 23:08
有没有电路图啊?我想试试看啊。。用什么单片机呢?我的ISP实验板只支持AT89S51的。。可惜可惜。写不到其它的芯片。。
作者: keyzheng    时间: 2005-4-18 09:38
程序上加一些注释就好了
作者: 风物    时间: 2005-4-18 14:24
是用2051?那你还需要加上MAX706,防止程序跑乱。不同的遥控器输出的信号宽度有差别的,这样会造成舵机运转的不平滑。
作者: 紫电清霜    时间: 2005-4-21 11:39
高实在是高!
作者: darren    时间: 2005-4-26 03:06
高高高高高高高高高高高高高高高高高高高高高高高高高手手手手手手手高高高高
高高高高高高高高高高高高高高高高高高高高高高手手手手手手手手手手手手高高
高高高高高高高高高高高高高高高高高高手手手手手手手手手手手手手手手高高高
高高高高高高高高高高高高高高高手手手手手手手手手手手手手手手手手手高高高
高高高高高高高高高高高手手手手手手手手手手手手手手手手高高高高高高高高高
高高高高高高高高手手手手手手手手手手手高高手手手手手高高高高高高高高高高
高高高手手手手手手手手手手手手高高高高高高手手手手高高高高高高高高高高高
高手手手手手手手手手手手手手手高高高高高高手手手手高高高高高高高高高高高
高手手手手手手手手手手手手高高高高高高高手手手手手手手手手手手高高高高高
高手手手手手手手手手手手手高高高高高高手手手手手手手手手手手手手手高高高
高高手手手手手手手手手手高高高高高手手手手手手高高高手手手手手手手高高高
高高高高高高高高手手手手高高高高高手手手手高高高高高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高高手手高高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高高手手手手高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高高手手手手高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高高手手手高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高高手手手高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高手手手手高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高手手手手高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高手手手手高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高手手手手高高手手手手手高高高高
高手高高高高高高手手手手高高高高手手手高高手手手手高高手手手手手高高高高
高高手手高高高手手手手手高高高高手手手高高手手手高高高手手手手手高高高高
高高手手手手手手手手手手高高高高高手手高高手手高高高高手手手手手高高高高
高高高手手手手手手手手手高高高高高高高高手手手高高高高高手手手手高高高高
高高高高高手手手手手手手高高高高高高高高手手手高手手手手高高高高高高高高
高高高高高高手手手手手手高高高高高高高手手手手高高手手手手手高高高高高高
高高高高高高高高高手手手高高高高高手手手手手手高高高高手手手手手高高高高
高高高高高高高高高高高高高高高手手手手手手手高高高高高高手手手手手手高高
高高高高高高高高高高高高高高手手手手手手高高高高高高高高高手手手手手手高
高高高高高高高高高高高高高手手手手手高高高高高高高高高高高高手手手手手高

作者: su31    时间: 2005-4-26 07:01
还是好人多啊!!!!!
顶!!!
作者: ollie    时间: 2005-4-26 10:11
把元器件的参数写上就OK了。


    :em24::em24::em24:
作者: cst    时间: 2005-4-26 21:12
没有电路图?用什么单片机呢?我的实验板支持hen duo xin pian。ke yi 写hao duo 的芯片
作者: 老菜    时间: 2005-4-26 22:10
这里的高人可真多呀,高实在是高.
作者: suncxc    时间: 2005-4-27 00:53
ollie  在 2005-4-26 10:11 AM 发表:

把元器件的参数写上就OK了。


    :em24::em24::em24:


   电路很简单的,看PCB就行拉,至于说到程序跑飞的问题,我觉得2051相当的稳定,加上程序陷阱就没问题了,不至于加狗,我的就一点问题都没有,没试过程序跑死的:em08:
  写这个东西,主要是抛砖引玉,让大家把好东西都发上来,支持共享,至于商家,我觉得也不至于把我的这个小东西拿来发财:em05:
发张这个混控在我的非以上的样子


作者: suncxc    时间: 2005-4-27 21:41
cst  在 2005-4-26 09:12 PM 发表:

没有电路图?用什么单片机呢?我的实验板支持hen duo xin pian。ke yi 写hao duo 的芯片


可以QQ交流啊,我加了你了啊,电池还要靠老大你呢:em05:
作者: douyacai    时间: 2005-4-28 13:35
呵呵,好长时间没写程序了看代码好亲切
作者: sdabcd    时间: 2005-4-28 17:51
又一个高人,顶啊!
作者: lisi    时间: 2005-4-29 13:58
太强了吧
作者: XQY1972    时间: 2005-4-29 17:15
suncxc  在 2005-4-27 12:53 AM 发表:

电路很简单的,看PCB就行拉,至于说到程序跑飞的问题,我觉得2051相当的稳定,加上程序陷阱就没问题了,不至于加狗,我的就一点问题都没有,没试过程序跑死的:em08:
  写这个东西,主要是抛砖引玉,让大家把好东 ...


2051没有你说的那么稳定,先天结构上决定其抗干扰能力差,你觉得稳定只能说明你实践太少,没有遇到程序跑飞的时候,2051用做玩具还可以,用在模型上就有点不妥了,建议不采用它.用PIC要好的多.
作者: lym0610    时间: 2005-4-29 20:28
电调和混控用MCU都是容易到极的事
作者: 铁皮    时间: 2005-5-25 02:39
XQY1972  在 2005-4-29 17:15 发表:

2051没有你说的那么稳定,先天结构上决定其抗干扰能力差,你觉得稳定只能说明你实践太少,没有遇到程序跑飞的时候,2051用做玩具还可以,用在模型上就有点不妥了,建议不采用它.用PIC要好的多.


同意,51的程序好编但很罗唆,而且我总感觉51的速度不够
作者: suncxc    时间: 2005-5-25 11:25
铁皮  在 2005-5-25 02:39 AM 发表:

同意,51的程序好编但很罗唆,而且我总感觉51的速度不够


我也知道51的速度不足,但你觉得混控上有必要使用更快的MCU吗?我用51在12M上就可以达到1uS的分辨率,在这种档次的有提高的必要么?
作者: suncxc    时间: 2005-5-25 11:33
再说2051怎么也算是工控档次的MCU,模型最多也就是商用档次把?只要加上看门狗我不认为有什么不妥的。不用PIC是我的个人原因,我最常用的是51,最喜欢用的是AVR,最讨厌的单片机就是PIC,次讨厌的是凌阳,最向往的是ARM,但是AT90S1200要卖20元(在我这里),2051只要1元(二手市场),狗可以申请,这就是我用2051的原因
作者: 米奇生活    时间: 2005-5-27 17:19
绝对支持这样的好同志!!!!!!!!!!!!!!!
作者: BTBU    时间: 2005-6-25 19:12
我是新来的,之前尝试弄调速器不怎么成功。今天见到高人了,佩服佩服
作者: wujin715    时间: 2005-7-28 21:04
haohaohao
作者: eternity    时间: 2012-1-2 10:07
楼主强大。。。。
作者: 静静的回忆    时间: 2012-1-14 03:02
高高高高高高高高高高高高高高高高高高高高高高高高高手手手手手手手高高高高
高高高高高高高高高高高高高高高高高高高高高高手手手手手手手手手手手手高高
高高高高高高高高高高高高高高高高高高手手手手手手手手手手手手手手手高高高
高高高高高高高高高高高高高高高手手手手手手手手手手手手手手手手手手高高高
高高高高高高高高高高高手手手手手手手手手手手手手手手手高高高高高高高高高
高高高高高高高高手手手手手手手手手手手高高手手手手手高高高高高高高高高高
高高高手手手手手手手手手手手手高高高高高高手手手手高高高高高高高高高高高
高手手手手手手手手手手手手手手高高高高高高手手手手高高高高高高高高高高高
高手手手手手手手手手手手手高高高高高高高手手手手手手手手手手手高高高高高
高手手手手手手手手手手手手高高高高高高手手手手手手手手手手手手手手高高高
高高手手手手手手手手手手高高高高高手手手手手手高高高手手手手手手手高高高
高高高高高高高高手手手手高高高高高手手手手高高高高高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高高手手高高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高高手手手手高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高高手手手手高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高高手手手高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高高手手手高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高手手手手高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高手手手手高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高手手手手高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高手手手手高高手手手手手高高高高
高手高高高高高高手手手手高高高高手手手高高手手手手高高手手手手手高高高高
高高手手高高高手手手手手高高高高手手手高高手手手高高高手手手手手高高高高
高高手手手手手手手手手手高高高高高手手高高手手高高高高手手手手手高高高高
高高高手手手手手手手手手高高高高高高高高手手手高高高高高手手手手高高高高
高高高高高手手手手手手手高高高高高高高高手手手高手手手手高高高高高高高高
高高高高高高手手手手手手高高高高高高高手手手手高高手手手手手高高高高高高
高高高高高高高高高手手手高高高高高手手手手手手高高高高手手手手手高高高高
高高高高高高高高高高高高高高高手手手手手手手高高高高高高手手手手手手高高
高高高高高高高高高高高高高高手手手手手手高高高高高高高高高手手手手手手高
高高高高高高高高高高高高高手手手手手高高高高高高高高高高高高手手手手手高
作者: w839389340    时间: 2012-2-7 03:00
有点小复杂
作者: eternity    时间: 2012-2-8 07:58
这贴必须顶
作者: 旺财的朋友    时间: 2012-2-14 08:20
楼主愿意给简单介绍下原理吗?
作者: XIE2099    时间: 2012-2-15 10:38
原帖由 suncxc 于 2005-5-25 11:33 发表
再说2051怎么也算是工控档次的MCU,模型最多也就是商用档次把?只要加上看门狗我不认为有什么不妥的。不用PIC是我的个人原因,我最常用的是51,最喜欢用的是AVR,最讨厌的单片机就是PIC,次讨厌的是凌阳,最向往的是 ...

支持,樓主一直在講是  拋磚引玉  ;
用什麼MCU是個人的事情,而且51是入門級的MCU,    大家不要有意見,其實在許多的設備上面51依然還健在(90左右的台灣的簡易設備,用到至今),而且現在的老虎機用51的也不在少數, 自動麻將機的驅動板。。。等等,大家不要一上來就將51不好。。。。
以上僅個人建議。歡迎大家拍磚。
作者: gyro    时间: 2012-2-15 13:21
51,单片机入门基础,呵呵
不过总感觉这家伙速度不够快,在PC上写程序多了,被大量的系统资源给惯坏了。。
一个舵机控制,我都想整俩51来协同处理,hoho




欢迎光临 5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年) (http://bbs.5imx.com/) Powered by Discuz! X3.3