好文档 - 专业文书写作范文服务资料分享网站

2019年基于单片机的步进电机控制课程设计报告 doc

天下 分享 时间: 加入收藏 我要投稿 点赞

单片机原理与接口技术课程设计

完成后点击File—>New新建一个程序编辑文件,然后保存即可在其中编辑所需要的程序了,然后点击软件上方的调试按钮没有错误。

进行纠错调试直至

4.2软件设计要求

本设计要求实现用STC89C52单片机实现对步进电机的控制,并能实现步进电机的旋转,及四档不同的速度调节,同时能及时的用液晶显示屏显示步进电机的当前状态

4.3系统软件设计流程

4.3.1软件总体设计框图

图4.1主程序流程图

15

单片机原理与接口技术课程设计

4.4主程序

本设计为使程序可读性好将分模块进行说明。

4.4.1头文件

#ifndef _KYE_H_ #define _KYE_H_

/*常用数据类型简化定义****/ typedef unsigned char uint8; typedef unsigned int uint16; /*****矩阵键盘位定义****/ sbit KeyIn1 = P1^0; sbit KeyIn2 = P1^1; sbit KeyIn3 = P1^2; sbit KeyIn4 = P1^3; sbit KeyOut1 = P1^4; sbit KeyOut2 = P1^5; sbit KeyOut3 = P1^6; sbit KeyOut4 = P1^7; /****液晶控制位定义*****/ sbit RS = P2^5 ; sbit RW = P2^6 ; sbit EN = P2^7 ; sbit BUSY = P0^7;

/****电机转速档位定义***/ #define One 50 #define Two 30 #define Three 16 #define Four 8

/****子程序声明*********/

16

单片机原理与接口技术课程设计

void Dis(void); void wait(void); void w_cmd(uint8 cmd); void w_dat(uint8 dat);

void w_string(uint8 addr_start, uint8 *p); void Init_LCD1602(void); void delay(uint8 t); void keyscan(void); void MoFor(void); #endif

4.4.2主程序

#include #include #include \bit

uint8 Gra = One;//档位变量 ,默认一档

StartEnd = 0;//启动停止标志位, 默认停止

uint8 code FFW[]={0x09,0x01,0x03,0x02,0x06,0x04,0x0c,0x08};//旋转码表

void main(void) { while(1) {

keyscan();//键盘扫描 Dis();//液晶显示初始化 if(StartEnd ==1) { MoFor(); }

17

单片机原理与接口技术课程设计

else

{ P3 = 0; } } }

4.4.3液晶模块

/*** 等待繁忙标志*/ void wait(void) {

P0 = 0xFF; Do { RS = 0; RW = 1; EN = 0;

EN = 1;}while (BUSY == 1); EN = 0; }

/*** 写数据*/ void w_dat(uint8 dat) { wait(); EN = 0; P0 = dat; RS = 1; RW = 0; EN = 1; EN = 0;}

18

单片机原理与接口技术课程设计

/*** 写命令*/ void w_cmd(uint8 cmd) { wait(); EN = 0; P0 = cmd; RS = 0; RW = 0; EN = 1; EN = 0; }

/*** 发送字符串到LCD*/

void w_string(uint8 addr_start, uint8 *p) {

w_cmd(addr_start); while (*p != '\\0') {

w_dat(*p++); } }

/*** 初始化1602*/ void Init_LCD1602(void) {

w_cmd(0x38); // 16*2显示,5*7点阵,8位数据接口w_cmd(0x0C); // 显示器开,不显示光标 w_cmd(0x06); // 写一个字符后,地址指针加1 w_cmd(0x01); // 现实清零,数据指针清零 }

/***液晶显示子程序*/ void Dis(void)

19

2019年基于单片机的步进电机控制课程设计报告 doc

单片机原理与接口技术课程设计完成后点击File—>New新建一个程序编辑文件,然后保存即可在其中编辑所需要的程序了,然后点击软件上方的调试按钮没有错误。进行纠错调试直至4.2软件设计要求本设计要求实现用STC89C52单片机实现对步进电机的控制,并能实现步进电机的旋转,及四档不同的速度调节,同时能及时的用液晶显示屏显示步进电机的
推荐度:
点击下载文档文档为doc格式
893911jxf72r4yi9c8hj79c964hjsm00lgq
领取福利

微信扫码领取福利

微信扫码分享