完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
程序能调通,步进电机也能运行,可是步进电机不能在额定的脉冲数和额定的圈数停下来,中间的程序应该属哪有问题?还有就是想控制步进电机一步一步走,该怎么改呢?
#include #define rateNUM 6 #define uchar unsigned char ***it MotorEn = P2^1; // 使能 ***it FX = P2^0; // 方向 ***it CLK = P2^2; // 脉冲 uchar count=0,number=0,number1=0; uchar q=0; uchar snum=2,snum1=2; //设定圈数 uchar rate[6] = {6,5,4,3,2,1}; //设定速率 uchar g_MotorNum=0; void T0_Init(); unsigned char Recive(); // 串口接收主程序 void main(void) { unsigned char lsData = 0; T0_Init(); // 定时器0 1 初始化 MotorEn=0; // 使能关闭 FX=0; // 方向 CLK=0; while(1) { lsData = Recive(); if(lsData == 'A') // 启停 { // on_off = on_off ^ 0x01; // MotorEn ^= 1; TR0 = 1; //T0启动 // TR0=0; // TR1=1; //T1启动 } else if(lsData == 'B') // 方向 { // dir=dir^0x01; FX=FX^0x01; } else if(lsData == 'C') { g_MotorNum++; if(g_MotorNum > rateNUM) {g_MotorNum = rateNUM;} } else if(lsData == 'D') { g_MotorNum--; if(g_MotorNum < 0) g_MotorNum= 0; } } } void T0_Init() { TMOD = 0x21; //定时器0工作方式1;定时器1工作方式2 C/T=0为定时器方式,为“1”为计数器方式 SCON = 0x50; // 设置串口方式1且允许串口接收 PCON = 0x00; TH0 = (65535-100)/256; // 1ms TL0 = (65535-100)%256; TH1 = 0xf3; // 12MHZ 2400波特率 TL1 = 0xf3; EA = 1; //总中断允许 ET0 = 1; //T0中断允许 // ET1 = 1; //T1中断允许 TR1 = 1; //T1启动 (定时器1作为波特率发生器用?) REN = 1; //允许串口接收 } unsigned char Recive() // 串口接收程序 { unsigned char date; while(RI == 0); //只要接收中断标志位RI没有被置“1”,等待,直至接收完毕(RI=1) RI = 0; //为了接收下一帧数据,需将RI清0 date = SBUF; //将接收缓冲器中的数据存于date return date; } /********定时器0中断*****************/ void T0_time() interrupt 1 { TH0 = (65535-100)/256; TL0 = (65535-100)%256; q++; if(q < rateNUM) {return;} else { q=0; count++; // CLK=CLK^0x01; // 输出脉冲 } if(count==50) { snum--; count=0; number1++; } if(number1==snum1) { TR0=0; MotorEn^=1; } } |
|
相关推荐
4个回答
|
|
感觉有问题就慢慢改啊
|
|
|
|
中断里面用return?
|
|
|
|
我也在调试,可是频率和转速对不上啊
|
|
|
|
请问你的驱动器信号控制端口是直接接开发板的I/O口吗?
|
|
1 条评论
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
【RA-Eco-RA2E1-48PIN-V1.0开发板试用】(第三篇)ADC采集+PWM输出
54 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第四十五章 人脸识别实验
395 浏览 0 评论
439 浏览 0 评论
如何用OpenCV的相机捕捉视频进行人脸检测--基于米尔NXP i.MX93开发板
1265 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第四十章 YOLO2人手检测实验
529 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11749 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-20 08:48 , Processed in 0.841912 second(s), Total 91, Slave 70 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号