5iMX宗旨:分享遥控模型兴趣爱好

5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年)
查看: 11859|回复: 39
打印 上一主题 下一主题

昨天看到有人卖混控,不忿,一天时间自制混控成功,共享!

[复制链接]
跳转到指定楼层
发表于 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 ]

欢迎继续阅读楼主其他信息

39
发表于 2012-2-15 13:21 | 只看该作者
51,单片机入门基础,呵呵
不过总感觉这家伙速度不够快,在PC上写程序多了,被大量的系统资源给惯坏了。。
一个舵机控制,我都想整俩51来协同处理,hoho
38
发表于 2012-2-15 10:38 | 只看该作者
原帖由 suncxc 于 2005-5-25 11:33 发表
再说2051怎么也算是工控档次的MCU,模型最多也就是商用档次把?只要加上看门狗我不认为有什么不妥的。不用PIC是我的个人原因,我最常用的是51,最喜欢用的是AVR,最讨厌的单片机就是PIC,次讨厌的是凌阳,最向往的是 ...

支持,樓主一直在講是  拋磚引玉  ;
用什麼MCU是個人的事情,而且51是入門級的MCU,    大家不要有意見,其實在許多的設備上面51依然還健在(90左右的台灣的簡易設備,用到至今),而且現在的老虎機用51的也不在少數, 自動麻將機的驅動板。。。等等,大家不要一上來就將51不好。。。。
以上僅個人建議。歡迎大家拍磚。
37
发表于 2012-2-14 08:20 | 只看该作者
楼主愿意给简单介绍下原理吗?
36
发表于 2012-2-8 07:58 | 只看该作者
这贴必须顶
35
发表于 2012-2-7 03:00 | 只看该作者
有点小复杂
34
发表于 2012-1-14 03:02 | 只看该作者
高高高高高高高高高高高高高高高高高高高高高高高高高手手手手手手手高高高高
高高高高高高高高高高高高高高高高高高高高高高手手手手手手手手手手手手高高
高高高高高高高高高高高高高高高高高高手手手手手手手手手手手手手手手高高高
高高高高高高高高高高高高高高高手手手手手手手手手手手手手手手手手手高高高
高高高高高高高高高高高手手手手手手手手手手手手手手手手高高高高高高高高高
高高高高高高高高手手手手手手手手手手手高高手手手手手高高高高高高高高高高
高高高手手手手手手手手手手手手高高高高高高手手手手高高高高高高高高高高高
高手手手手手手手手手手手手手手高高高高高高手手手手高高高高高高高高高高高
高手手手手手手手手手手手手高高高高高高高手手手手手手手手手手手高高高高高
高手手手手手手手手手手手手高高高高高高手手手手手手手手手手手手手手高高高
高高手手手手手手手手手手高高高高高手手手手手手高高高手手手手手手手高高高
高高高高高高高高手手手手高高高高高手手手手高高高高高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高高手手高高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高高手手手手高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高高手手手手高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高高手手手高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高高手手手高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高手手手手高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高手手手手高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高手手手手高高手手手手手高高高高
高高高高高高高高手手手手高高高高手手手手高手手手手高高手手手手手高高高高
高手高高高高高高手手手手高高高高手手手高高手手手手高高手手手手手高高高高
高高手手高高高手手手手手高高高高手手手高高手手手高高高手手手手手高高高高
高高手手手手手手手手手手高高高高高手手高高手手高高高高手手手手手高高高高
高高高手手手手手手手手手高高高高高高高高手手手高高高高高手手手手高高高高
高高高高高手手手手手手手高高高高高高高高手手手高手手手手高高高高高高高高
高高高高高高手手手手手手高高高高高高高手手手手高高手手手手手高高高高高高
高高高高高高高高高手手手高高高高高手手手手手手高高高高手手手手手高高高高
高高高高高高高高高高高高高高高手手手手手手手高高高高高高手手手手手手高高
高高高高高高高高高高高高高高手手手手手手高高高高高高高高高手手手手手手高
高高高高高高高高高高高高高手手手手手高高高高高高高高高高高高手手手手手高
33
发表于 2012-1-2 10:07 | 只看该作者
楼主强大。。。。
32
发表于 2005-7-28 21:04 | 只看该作者
haohaohao
31
发表于 2005-6-25 19:12 | 只看该作者
我是新来的,之前尝试弄调速器不怎么成功。今天见到高人了,佩服佩服
30
发表于 2005-5-27 17:19 | 只看该作者
绝对支持这样的好同志!!!!!!!!!!!!!!!
29
 楼主| 发表于 2005-5-25 11:33 | 只看该作者
再说2051怎么也算是工控档次的MCU,模型最多也就是商用档次把?只要加上看门狗我不认为有什么不妥的。不用PIC是我的个人原因,我最常用的是51,最喜欢用的是AVR,最讨厌的单片机就是PIC,次讨厌的是凌阳,最向往的是ARM,但是AT90S1200要卖20元(在我这里),2051只要1元(二手市场),狗可以申请,这就是我用2051的原因
28
 楼主| 发表于 2005-5-25 11:25 | 只看该作者
铁皮  在 2005-5-25 02:39 AM 发表:

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


我也知道51的速度不足,但你觉得混控上有必要使用更快的MCU吗?我用51在12M上就可以达到1uS的分辨率,在这种档次的有提高的必要么?
27
发表于 2005-5-25 02:39 | 只看该作者
XQY1972  在 2005-4-29 17:15 发表:

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


同意,51的程序好编但很罗唆,而且我总感觉51的速度不够
26
发表于 2005-4-29 20:28 | 只看该作者
电调和混控用MCU都是容易到极的事
25
发表于 2005-4-29 17:15 | 只看该作者
suncxc  在 2005-4-27 12:53 AM 发表:

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


2051没有你说的那么稳定,先天结构上决定其抗干扰能力差,你觉得稳定只能说明你实践太少,没有遇到程序跑飞的时候,2051用做玩具还可以,用在模型上就有点不妥了,建议不采用它.用PIC要好的多.
24
发表于 2005-4-29 13:58 | 只看该作者
太强了吧
23
发表于 2005-4-28 17:51 | 只看该作者
又一个高人,顶啊!
22
发表于 2005-4-28 13:35 | 只看该作者
呵呵,好长时间没写程序了看代码好亲切
21
 楼主| 发表于 2005-4-27 21:41 | 只看该作者
cst  在 2005-4-26 09:12 PM 发表:

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


可以QQ交流啊,我加了你了啊,电池还要靠老大你呢:em05:
20
 楼主| 发表于 2005-4-27 00:53 | 只看该作者
ollie  在 2005-4-26 10:11 AM 发表:

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


    :em24::em24::em24:


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

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

关闭

【站内推荐】上一条 /1 下一条

快速回复 返回顶部 返回列表