永发信息网

求:基于89C51单片机的自动窗帘控制系统的(C语言程序)。在线等~~【硬件电路已经完成】

答案:2  悬赏:20  手机版
解决时间 2021-03-22 07:30
求:基于89C51单片机的自动窗帘控制系统的(C语言程序)。在线等~~【硬件电路已经完成】
最佳答案
你的步进电机是啥样的,两相四线嘛
还有,你想利用51单片机的哪个端口
按键和光敏电阻的有效位是低电位还是高电位

请详细说明追问4相5线电机p1.0至p1.4, 双电压比较器两个输入随意, 3个按键还没连呢。高低忘记了,一高一低。同样的输入,两个比较器,一个正比较一个反比较,同时两个输出 。谢了啊追答#include //通用89C52头文件
sbit ks0 = P2^0 ;//按键打开
sbit ks1 = P2^1 ;//按键关闭
sbit ks2 = P2^2 ;//光耦状态
sbit ks3 = P2^3 ;//上升到位
sbit ks4 = P2^4 ;//下降到位
sbit ks5 = P2^5 ;//自动与手动选择开关

void YS(int a);//延时
char dd[4]={0x8f,0x4f,0x2f,0x1f};//步进电机编码
char as=1;//步进电机状态标志位
int i=0;


void main (void) //延时
{
if(ks5==0)//如果是自动状态
{
if(ks2==0)//如果是白天
{
while(ks3)//如果上升到位,则结束循环
{
P1=dd[i];//步进电机旋转一个角度
YS(50);//延时一小会
i++;
if(i>=4){i=0;}//如果数组达到最末尾,则从新开始,用来循环的
}
}
else
{
while(ks4)//如果下降到位,则结束循环
{
P1=dd[i];//步进电机旋转一个角度
YS(50);//延时一小会
i--;
if(i<=0){i=3;}//如果数组达到最末尾,则从新开始,用来循环的
}
}
}
else//否则为手动状态
{
if(ks0==0)//如果按下打开按钮
{
P1=dd[i];//步进电机旋转一个角度
YS(50);//延时一小会
i++;
if(i>=4){i=0;}
}

if(ks1==0)//如果按下下降按钮
{
P1=dd[i];//步进电机旋转一个角度
YS(50);//延时一小会
i--;
if(i<=0){i=3;}
}
}
}


void YS (int a) //延时
{
int x,y;
for(x=a;x>0;x--)
for(y=110;y>0;y--);
}



希望能够实现你理想中的状态,哈哈
全部回答
有点搞笑了,软件必须在硬件的基础上才能编写,你这样随便说一下是不可能有人能解决的。况且程序编写好以后还要调试,没有你的硬件拿什么去调试?这个方法行不通的,真的。
建议还是自己动手动脑,遇到具体的问题倒是可以来问一下。像这种问题,就是有人给你个程序也是哪里复制过来的,你也用不了。程序上一个字母对不上,就可能造成你的硬件根本就不会动。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
单选题18世纪后半期,世界上最强大的殖民国家
好想告诉你中台词,好想告诉你的经典台词
广西河池市南丹县汽车总站到广东汕头市外砂高
女演员高斯结婚了吗?
刚买的笔记本是linux系统的,想换W7,优先光
一个饼二个饼三个饼出自那部动漫?
赞扬荆楚大地的诗词,荆楚大地的拼音
Reading the job adhe wondered whether he w
新城中心·御峰在哪里啊,我有事要去这个地方
有什么东西可以手工做的,有意义的?送男朋友
Main.compile(args);动态加载java代码、、却
女人梦到黑猫抓自己
我的联想笔记本老是嘀嘀的乱叫
煤层气热值是多少大卡,煤层气的发热量数值是
济南三星售后维修服务中心在槐荫区有没有?谢
推荐资讯
瑞利门市部在哪里啊,我有事要去这个地方
单选题“人类基因组计划”最新研究表明人体24
东方幻想乡动漫,风见幽香那集出场啊?如果有
戴望舒的诗歌,戴望舒有哪些诗歌代表作?
腰果怎么选购
你好,我是办的中国联通ocs-1602-20套餐,为
原来沈阳中街小魔鱼专卖店楼上有一个卖皮具的
新玩这个游戏,不想去新区排队,问下哪个老区
希望以后路再难走都熬过去 别把难过留给别人
水瓶女说你像我初恋,什么意思
鹤壁科达学校高中部吃住在校么
欢欢借到一本有76页的图书,要在10天之内读完
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?