版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、/* 河南工业大学电气工程学院 测控 1001 刘欣 如有错误欢迎致电 共同学习 共同进步 */ /* * 程序名称 : 按键控制电机正反转,数码管动感显示正反转 说明:使用本程序你必须把 SE5 设置为 ON(2-3) 短接 ;FOSC = 12MHz ; 步进电机的驱动信号必须为脉冲信号 ! 转动的速度和脉冲的频率成正比 ! ; 本步进电机步进角为 5.625 度 . 一圈 360 度 , 需要 64 个脉冲完成 ! ; A 组线圈对应 P1.4 ; B 组线圈对应 P1.5 ; C 组线圈对应 P1.6 ; D 组线圈对应 P1.7 ; 正转次序 : AB 组-BC 组-CD 组-DA
2、组 ( 即一个脉冲 , 正转 5.625 度) 卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄*卄* */ /* 头文件 */ #include #include #define uint unsigned int #define uchar unsigned char #define _Nop() _nop_() /* 端口定义 */ #define sled_dm_port P0 #define sled_wm_port P2 /* /* 定义LED显示的段码数据脚*/ 定义LED显示的位码数据脚*/ #define motor P1 /*
3、sbit P33 = P 3人4; /* sbit P34 = P 1; /* sbit P10 = P 3人3; /* 步进电机接口 控制正转按键 控制电机停止 控制电机反转 */ */ */ */ uchar code table1=0 x3f,0 x6f,0 xcf,0 x9f; /* uchar code table2=0 x3f,0 x9f,0 xcf,0 x6f; /* 正转表 */ 反转表 */ /* 定义数码管显示字符跟数字的对应数组关系 uchar mun_to_char=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x8
4、0,0 x90,0 x88,0 x83,0 xc6, 0 xa1,0 x86,0 x8e; /*0 1 2 3 4 5 6 7 8 9 a */ code b c d e f */ /* 定义需要点亮的数码管 */ uchar code sled_bit_table=0 x7f,0 xbf,0 xdf,0 xef,0 xf7,0 xfb,0 xfd,0 xfe; uchar data sled_data8=0 xff,0 xc0,0 xc0,0 xff,0 xff,0 xc0,0 xc0,0 xff; /*0-7 缓冲值 */ uchar data led_lighten_bit=0 ; /*
5、LED灯点亮标志位 0-7*/ uchar code SLED_TABLE= /* 数码管动感显示 */ 0 xff,0 xff,0 xce,0 xfe,0 xfe,0 xff,0 xff,0 xff, 0 xff,0 xff,0 xde,0 xfe,0 xfe,0 xfe,0 xff,0 xff, 0 xff,0 xff,0 xfe,0 xfe,0 xfe,0 xfc,0 xff,0 xff, 0 xff,0 xff,0 xff,0 xfe,0 xfe,0 xf8,0 xff,0 xff, 0 xff,0 xff,0 xff,0 xff,0 xfe,0 xf0,0 xff,0 xff, 0
6、xff,0 xff,0 xff,0 xff,0 xf7,0 xf0,0 xff,0 xff, 0 xff,0 xff,0 xff,0 xf7,0 xf7,0 xf1,0 xff,0 xff, 0 xff,0 xff,0 xf7,0 xf7,0 xf7,0 xf3,0 xff,0 xff, 0 xff,0 xff,0 xe7,0 xf7,0 xf7,0 xf7,0 xff,0 xff, 0 xff,0 xff,0 xc7,0 xf7,0 xf7,0 xff,0 xff,0 xff, 0 xff,0 xff,0 xc6,0 xf7,0 xff,0 xff,0 xff,0 xff, 0 xff,0
7、xff,0 xc6,0 xfe,0 xff,0 xff,0 xff,0 xff, 0 xff,0 xff,0 xc6,0 xf6,0 xf6,0 xf0,0 xff,0 xff, ; 号 SLED /* 显示部分程序,采用定时器0产生中断,1MS更新一次 */ void SLED_Disp() interrupt 1 using 3 TH0 = (65536-1000)/256; 输出段码数据到数码管 */ 输出位码数据到数码管 */ 位数码管全动态输出 */ TL0 = (65536-1000)/256; sled_wm_port = 0 xff; /*关闭显示 */ sled_dm_por
8、t = sled_dataled_lighten_bit; /* sled_wm_port = sled_bit_tableled_lighten_bit; /* led_lighten_bit+; if(led_lighten_bit=8) led_lighten_bit=0; /*8 void T0_valueSet() /* TMOD = 0 x01; /* TH0 = (65536-1000)/256; TL0 = (65536-1000)/256; TR0 = 1; EA = 1; ET0 = 1; return; /* /* /* 定义中断方式,中断时间 定时 0,工作在方式 1*
9、/ 启动计数 开总中断 开定时器 */ */ 0 中断 */ */ /*1MS 为单位的延时程序 */ void delay_1ms(uchar x) uchar j; while(x-) for(j=0;j=10) temp1 = 0; temp0+; if(temp011) temp0 = 0; /* else if(yunzhuang=2) motor = table2count; /* temp1+; if(temp110) temp1 = 0; temp0-; if(temp011) temp0 = 11; /* count+; if(count=4) count=0; delay_1ms(10); for(i=0;i8;i+) sled_datai = SLED_TABLEtemp0*8+i; /* 电机正转 */ 显示完成一个周期 */ 电机反转 */ 显示完成一个周期 */ 刷新显示 */ if(P33=0) delay_1ms
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度虚拟现实设备研发与委托生产合同
- 2024年度机械设备买卖合同样本
- 2024年度人力资源外包与招聘服务协议
- 2024年度物流园区建设与运营合同
- 2024年员工保密协议模板
- 2024年度自建房施工合同终止合同
- 2024年工程预付款资金监管协议
- 2024出版社与作者之间的出版合同
- 2024年度企业文化建设合作协议
- 2024年建筑企业与监理单位服务协议
- 中国女性生理健康白皮书
- 天然气巡检记录表
- 甲苯磺酸瑞马唑仑临床应用
- 民法典讲座-继承篇
- 外包施工单位入厂安全培训(通用)
- 糖尿病健康知识宣教课件
- 客户接触点管理课件
- Python语言学习通超星课后章节答案期末考试题库2023年
- 医学-心脏骤停急救培训-心脏骤停急救教学课件
- 高中英语-Book 1 Unit 4 Click for a friend教学课件设计
- 年产30万吨碳酸钙粉建设项目可行性研究报告
评论
0/150
提交评论