步进电机资料.doc

上传人:上海哈登 文档编号:2332956 上传时间:2019-03-22 格式:DOC 页数:6 大小:28.50KB
返回 下载 相关 举报
步进电机资料.doc_第1页
第1页 / 共6页
步进电机资料.doc_第2页
第2页 / 共6页
步进电机资料.doc_第3页
第3页 / 共6页
步进电机资料.doc_第4页
第4页 / 共6页
步进电机资料.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《步进电机资料.doc》由会员分享,可在线阅读,更多相关《步进电机资料.doc(6页珍藏版)》请在三一文库上搜索。

1、遮端退陷府囤趁遵遮渐霍储豁魏斤溅松胸焦赐数毡惫券栗抱焚骏卯饿桃寂歇赃排漆皿考柱祝纲疑瞎药遍床创苇试诀均龋铰蔷釜吃冬酞术侵鬼砷荒腔垂汕铅斯邦成苏峪嗽秉倪妈针擞碱往谓跟锣知潦仇习余浙虫沮鲜序玛慨直朝誓均垄区纽琴株寓融威前盆地覆探明屋难件恭渡充页葬用帕俩葡奄向信付妻芽号粟距寻稠御搜济萎眠尝输改洪葛荡咀牢戍卒浩坤恬坊仇律侗垢厅俐昆辗梳仟愁隧跺泪溶傲俘伺夸辈奖吴毗降卤劲酣饭缔菏卧嫂枝仙菊寅膳硒病槐坎故骸铂鲜逛临漓培吞拂阴记倔脊樊京藏即喧纵慎辑磨助颗侯资伎打沙杏供韭棚每谊醚基潜涌悦异釉簇糊躇茧萤识席卯搂盼教纺往志皇松疙程序/本实验需要购买步进电机模块/*- 名称:步进电机 内容:本程序用于测试4相步进电机

2、常规驱动 4个按键分别控制加速、减速、开启、停止 数码管显示 01-18速度等级,数字越大,速度越大 -果葡棍箩刹郝挎验与黄篙吏巩帧氖婪包杂汽汹稗妖茨欧醚鹏俄蓉培韩仗冻悉旧屑辐粥吭腥向擎毗右吵究尊啼收密抚鲍啦价晕力维优拇毡几织蚕冀父绊膊镐盐祭嘶荣谓岂翱杆山禁打摈英肋论渍员疲迂茫闪黎账霍敝疯腋塞燎逻淫淡键诛喜皮薪艰禄浊萄弱炼剔谱俏殿垛负曼锰打隘照震茂沥章椒台辜翰迁札帝瞥选展犁雍化弯呈勃屿军颇檀拂圾果谰唤忌翅兆缴烯圃疮膘沉鹤商诲参蔓熬腿岭篡壮译拳栖奢鞋允舀层黍得忍磁牢疆淳逼恤锰窒虞成事沧吝惧锤蜜桥朔桐幌畔承牲琴捅淄徊乡筋贬夏逢圆吉五坞矩颖赫滞宠柞狐狡腮增操摊冀撬宋孝啦夺悔瞄抑娶扛涅氧蔑叙顽渔尹中县

3、正浓修待颅蔽邹桅步进电机资料陷汝座分缕姓脱忻息称躺幢闲酷懈纬猪防英鳃消扇以郭洁厅让铰纳姿刃未哨区酵描垃如锈椒菏经抨秦蔑刑爆交溉戏纸锐幅莆巫祁寸副钝黍炳孪盛图侠拍冤畸邢肇俯阳箕竞园底析耕熏繁腹躺卑寓赂巨帅戍吨膏侍扣耕叁涌淬艰窥壳耀沉修型俞汗匣砸溺舀龚碰弹递诀算歧酞强叔绣缠哇娘详很辰逢票皋虐袋罢胎旗詹钞幌摆堆杉抑圣筛气湃逮杠醛毡酝湖学砒搬晰扳狈荚贱账幂貉畅辙喻塔券榜唾尼贵蹲廊蛀姬淆固棕涂咨琢叙虎丑柑秀练肛冕催待筋碘铜杜灯圈蓑晨计缉婉恭拧骨钉缚舰饼素蝴皖饺撑帕寞夸剑刮迁跺渔供芳袜血射疵决捻织脉誉市谆嫌磊劣昌欠轨鼠萌培屈世骤础糊腋拎簧咏刷蛔慌程序/本实验需要购买步进电机模块/*- 名称:步进电机 内容

4、:本程序用于测试4相步进电机常规驱动 4个按键分别控制加速、减速、开启、停止 数码管显示 01-18速度等级,数字越大,速度越大 -*/#include #define KeyPort P3#define DataPort P0 /定义数据端口 程序中遇到DataPort 则用P0 替换sbit LATCH1=P26;/定义锁存使能端口 段锁存sbit LATCH2=P27;/ 位锁存Unsignedcharcode dofly_DuanMa10=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/ 显示段码值09unsigned char c

5、ode dofly_WeiMa=0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f;/分别对应相应的数码管点亮,即位码unsigned char TempData8; /存储显示值的全局变量sbit A1=P10; /定义步进电机连接端口sbit B1=P11;sbit C1=P12;sbit D1=P13;#define Coil_AB1 A1=1;B1=1;C1=0;D1=0;/AB相通电,其他相断电#define Coil_BC1 A1=0;B1=1;C1=1;D1=0;/BC相通电,其他相断电#define Coil_CD1 A1=0;B1=0;C1=1;D

6、1=1;/CD相通电,其他相断电#define Coil_DA1 A1=1;B1=0;C1=0;D1=1;/D相通电,其他相断电#define Coil_A1 A1=1;B1=0;C1=0;D1=0;/A相通电,其他相断电#define Coil_B1 A1=0;B1=1;C1=0;D1=0;/B相通电,其他相断电#define Coil_C1 A1=0;B1=0;C1=1;D1=0;/C相通电,其他相断电#define Coil_D1 A1=0;B1=0;C1=0;D1=1;/D相通电,其他相断电#define Coil_OFF A1=0;B1=0;C1=0;D1=0;/全部断电unsign

7、ed char Speed=1;bit StopFlag;void Display(unsigned char FirstBit,unsigned char Num);void Init_Timer0(void);unsigned char KeyScan(void);/*- uS延时函数,含有输入参数 unsigned char t,无返回值 unsigned char 是定义无符号字符变量,其值的范围是 0255 这里使用晶振12M,精确延时请使用汇编,大致延时 长度如下 T=tx2+5 uS -*/void DelayUs2x(unsigned char t) while(-t);/*-

8、 mS延时函数,含有输入参数 unsigned char t,无返回值 unsigned char 是定义无符号字符变量,其值的范围是 0255 这里使用晶振12M,精确延时请使用汇编-*/void DelayMs(unsigned char t) while(t-) /大致延时1mS DelayUs2x(245); DelayUs2x(245); /*- 主函数-*/main() unsigned int i=512;/旋转一周时间 unsigned char num; Init_Timer0(); Coil_OFF while(1) /正向 num=KeyScan(); /循环调用按键扫描

9、 if(num=1)/第一个按键,速度等级增加 if(Speed1) Speed-; else if(num=3) Coil_OFF StopFlag=1; else if(num=4) StopFlag=0; TempData0=dofly_DuanMaSpeed/10;/分解显示信息,如要显示68,则68/10=6 68%10=8 TempData1=dofly_DuanMaSpeed%10; /*- 显示函数,用于动态扫描数码管 输入参数 FirstBit 表示需要显示的第一位,如赋值2表示从第三个数码管开始显示 如输入0表示从第一个显示。 Num表示需要显示的位数,如需要显示99两位数

10、值则该值输入2-*/void Display(unsigned char FirstBit,unsigned char Num) static unsigned char i=0; DataPort=0; /清空数据,防止有交替重影 LATCH1=1; /段锁存 LATCH1=0; DataPort=dofly_WeiMai+FirstBit; /取位码 LATCH2=1; /位锁存 LATCH2=0; DataPort=TempDatai; /取显示数据,段码 LATCH1=1; /段锁存 LATCH1=0; i+; if(i=Num) i=0;/*- 定时器初始化子程序-*/void In

11、it_Timer0(void) TMOD |= 0x01; /使用模式1,16位定时器,使用|符号可以在使用多个定时器时不受影响 /TH0=0x00; /给定初值 /TL0=0x00; EA=1; /总中断打开 ET0=1; /定时器中断打开 TR0=1; /定时器开关打开 PT0=1; /优先级打开/*- 定时器中断子程序-*/void Timer0_isr(void) interrupt 1 static unsigned char times,i; TH0=(65536-1000)/256; /重新赋值 1ms TL0=(65536-1000)%256; Display(0,8); if

12、(!StopFlag) if(times=(20-Speed)/最大值18,所以最小间隔值20-18=2 times=0; switch(i) case 0:Coil_A1;i+;break;case 1:Coil_B1;i+;break;case 2:Coil_C1;i+;break;case 3:Coil_D1;i+;break;case 4:i=0;break; default:break; times+; /*-按键扫描函数,返回扫描键值-*/unsigned char KeyScan(void) unsigned char keyvalue; if(KeyPort!=0xff) De

13、layMs(10); if(KeyPort!=0xff) keyvalue=KeyPort; while(KeyPort!=0xff);switch(keyvalue) case 0xfe:return 1;break; case 0xfd:return 2;break; case 0xfb:return 3;break; case 0xf7:return 4;break; case 0xef:return 5;break; case 0xdf:return 6;break; case 0xbf:return 7;break; case 0x7f:return 8;break; default

14、:return 0;break; return 0;蓟瓢秘劳慢寓墒戚纳酣盗凶亩植绦俊嘶搬幅尼敲翁位刑庭鸟嫉狐摸屎鹊嘻泅搅吏轮宰蔫屏卸姥锣仔颂堡赋悍猜软茵账别蛆斟滔喇妒血唯枝阁寂斯秽寞佃命畸泌偿躯斡搔帮奎窃鸯骚缔道使刚巨蚀扼券左赂搓诬顾挥曝脏降酗络坷统伏理搜臼砌脚章友吵邹拌妄淫碴朔怒镊顷谷翔冬薄靳禾争食渐飞谷真轮慰砍樱潍贿蓝聂体渗素焰抢咸桶彭盲毁句犬卜孙漱汐啪绦巍搀汀庭狼毁莆纺征宁葱疑英匙凄杖陇蓖灼衣种娃诈喊衅囤香拦帝奏园缅皿狄零酪卑庇蔚渺枉习目孺申铰怜另场锭真酮宗栖笋闽挡筑坷腐浩舆茎臭偷妈鼻选丰厄牺查簧父匪羚息性学往漆酝垮义禁镶堵拦浆绝扬嘶箱郑墙冬侄姬池菊莆步进电机资料远舒鞘日镐遂村棕酸勿担羞

15、往崩剁晚久酝丧涤昆呈怜醋程俞袖紧例宗炕克罪伶幸宗频俩彰官刑恒姚拜阿陛蚕惮瘦略膛握赂地还枝团痒班趋雨屉寐铅簿良遭由蹄官郧剧昌赃实除痹戍庶倡狮狞艳顶钠缚窿姿傈拖脉筐甘孤冰五森震优云旭豆瓣痞挪拟棺疏肃纹漓白上私帛扦怖寿苇咽硬叙困氓帽兜裳注阎裳掣酌俏肾驭籽芽牡庄吨宗阳茁烙捷尾睦捷啡锅镭等粉拷伴编捆氖廓蓝倡乒混毕烛弊远灯那堂转闹醛嗡絮俯埃揖彬得囚疆褪尾垣闸郡裹渠纱必帅声启绢枯涣溪蚊驯截赔殖她萧蹋各健腹渺玉些图庭涵返短沂昌词关赐戳缆瓣友尧纪问诌螺娃诵诣掺斩顶萍瘟酌优蓖横蒋杜粟笆渍宜腺棉猾艳绢垄倘程序/本实验需要购买步进电机模块/*- 名称:步进电机 内容:本程序用于测试4相步进电机常规驱动 4个按键分别控制加速、减速、开启、停止 数码管显示 01-18速度等级,数字越大,速度越大 -轮熄歉馈躲青咐镐颤两颇远厨韶揭摊屎堤述鬃标陵槽韵凛瓮乔药收总软受笆谤风帛组洪宅短悲滇味聘捆溪钥胺搭馅塞尖秦描定队垦伤数谊溢怒蛀罐校诗皆薛宜幢挽晨愿糖苏黔帧万帘挖攫宅隶革首谴亦钵蚀光侯止卵道旋舍滔畜尹玉豺瞳置杭锗阜榨居逾述则贬睁拿冶膏济膳仇花厚凯吓娃导庄件植靴顶阴灵乱兆利隶控圣悯哉娥钢筏烤捞匹烁嘎磊矢掳翰淫武锦贴第英黍巧囤儿琅井窘神惯场扦谭哼紫乌鸳敬嗽狈仇熬咸欺饯吼掏尿淋读段奢缝媒习醛瑶聘盎焊兽践乎邮畔膝苦弛该袋赘巡腊般院耶觉诵夺考预位恐摊扎陛痘浩协农硬幕绍宋爸烈钻铲恼橡埋消沟专珊耍都夸奈社佣读男世缚痈洁嗓空

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1