完整的单片机控制步进电机程序_第1页
完整的单片机控制步进电机程序_第2页
完整的单片机控制步进电机程序_第3页
完整的单片机控制步进电机程序_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 include reg52 h include INTRINS H include include define uint unsigned int define uchar unsigned char void check addr void 地址核对 uchar code slave addr 4 00 01 02 255 从机地址 uchar idata T0low T0high common count input order cmd in permit interval uchar sent ok speed change start up start end address true i uint y1 uint code add 100 60006 62771 63693 64154 64430 64614 64746 64845 64922 64983 65033 65075 651 11 65141 65167 65190 65211 65229 65245 65260 65273 65285 65296 65306 65315 65323 65331 6 5339 65345 65352 65358 65363 65368 65373 65378 65382 65387 65390 65394 65398 65401 654 04 65407 65410 65413 65416 65418 65421 65423 65425 65428 65430 65432 65434 65435 65437 6 5439 65441 65442 65444 65445 65447 65448 65450 65451 65452 65453 65455 65456 65457 654 58 65459 65460 65461 65462 65463 65464 65465 65466 65467 65468 65469 65469 65470 65471 6 5472 65472 65473 65474 65475 65475 65476 65477 65477 65478 65478 65479 65480 65480 654 81 sbit P2 0 P2 0 作输入步进电机的脉冲信号发送口 sbit P2 2 P2 2 作输入步进电机的旋转方向信号发送口 sbit P1 0 P1 0 作串口输出信号的使能口 P1 0 0 时接通串口 输出信号 sbit WD P1 7 看门狗 main P2 0 0 P2 2 0 步进电机的旋转方向待试验后确定 P1 0 1 开机时需要关断 串口发送功能 需要时再接通 WD 1 看门狗先为 1 电平翻转为喂狗 i 0 common count 0 cmd in permit 0 input order 0 interval 0 address true 1 speed change 0 start up 0 2 start end 0 sent ok 0 允许发送 EA 1 开放总中断 TMOD 0 x21 TH1 0 xFD 波特率 9600 TL1 0 xFD SCON 0 xd0 设定串行口工作方式 PCON 波特率不倍增 SM2 1 TR1 1 ES 1 启动定时器 1 T2MOD 00 T2CON 0 x00 RCAP2H 0 xEE 赋 T2 的预置值 0 xA600 25MS 0 xB800 20MS 0 xCA00 15MS 0 xDC00 10MS 0 xEE00 5MS RCAP2L 0 x00 TR2 1 启动定时器 ET2 1 打开定时器 2 中断 do if address true 1 address true 0 check addr if start up 1 T0high uchar y1 8 取 y1 的高 8 位 T0low uchar y1 取 y1 的低 8 位 TR0 1 ET0 1 允许 T C0 中断 start end 1 if speed change 1 if interval 0 if interval common count common count common count 1 3 speed change 0 if sent ok 1 sent ok 0 P1 0 0 for i 0 i 20 i nop TI 0 SBUF T0high while TI 0 TI 0 TI 0 SBUF T0low while TI 0 TI 0 P1 0 1 for i 0 i 8 取 y1 的高 8 位 T0low uchar y1 取 y1 的低 8 位 TH0 T0high 高 8 位 T0high 送定时器 0 的 TH0 TL0 T0low 低 8 位 T0low 送定时器 0 的 TL0 void timer2 void interrupt 5 using 2 TF2 0 T2 溢出中断需软件清 0 speed change 1 速度可以改变标示 以便主程序处理 WD WD MAX813 喂狗 void inte SERIAL interrupt 4 using 1 串口 0 中断服务子程序 uchar key in key in 0 if RI 4 key in SBUF RI 0 if SM2 1 if key in slave addr 2 SM2 0 address true 1 if SM2 0 if key in 0 xfe 接收主机命令引导字节 准备接收主机命令 cmd in permit 1 if cmd in permit 1 input order input order 1 if input order 2 接收主机命令 使从机开始调节电机 cmd in permit 0 input order 0 interval 代表控制器发给电机的转速期望值 interval key in sent ok 1 if start up 0 start up 1 void check addr void 地址核对成功

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论