资源简介
自己做的课程设计,打包上传,电机pid调速带仿真,

代码片段和文件信息
/***********************************************************
51系列单片机直流电机闭环调速实验
***********************************************************/
#include“reg51.h“
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
/*****************引脚定义*********************************/
sbit output=P2^5;
/********************************/
sbit CLOCK=P3^1;
sbit D_IN=P2^7;
sbit D_OUT=P2^6;
sbit _CS=P3^0;
/********************************/
sbit lcdrs=P2^0;
sbit lcdrw=P2^1;
sbit lcden=P2^2;
/********************************/
sbit led=P3^2;
sbit speak=P3^3;
/*****************引脚定义*********************************/
/*****************变量定义(申明)*********************************/
int freq=500pwm=0;
uchar setflag=0pageflag=0ok=0;
uint adnum=0;
float pwm_temp=0;
float KP=0.00000001KI=1KD=0; //(默认PID的值)(可更改和在线调试)
//float KP=5KI=3KD=0; //(默认PID的值)(可更改和在线调试)
uint pul_count=0;
float Uk=0ek=0ek1=0ek2=0;
uchar code str2[16]=“set-V now-V “ ;
uchar code str3[16]=“P: I: D:“ ;
uchar code str4[16]=“set-P: “ ;
uchar code str5[16]=“set-I: “ ;
uchar code str6[16]=“set-D: “ ;
void Init(void);
uint adcread(uchar port);
void delay(uint n);
void writecom(uchar com);
void writedata(uchar date);
void initlcd();
float keyscan(void);
uchar keyscans(void);
void lcdnumdisplay(uchar posdouble f);
void lcdnumdisplays(uchar posdouble f);
uint read_pul();
void mypid(float Kpfloat Kifloat Kduint countuint point);
/*****************变量定义(申明)*********************************/
void main()
{
uchar i;float scantemp;
bit init0init1init2init3init4;
Init();
initlcd();
while(1)
{
pwm_temp=500*(float)(adnum)/4095;
//pwm=pwm_temp;(测试用)
mypid(KPKIKDpul_countpwm_temp);
scantemp=keyscan();
if(pul_count>=pwm_temp-1&&pul_count<=pwm_temp+1)
{
led=0;speak=1;
}
else {led=1;speak=0;}
if(setflag==0)
{
adnum=adcread(0);
if(init0==0)
{
initlcd();
writecom(0x80);
for(i=0;i<16;i++)writedata(str2[i]);
init0=1;init1=0;init2=0;init3=0;init4=0;
}
lcdnumdisplays(0x80+0x40(float)pwm_temp);
lcdnumdisplays(0x80+0x4a(float)pul_count);
}
if(setflag!=0&&pageflag==0)
{
if(init1==0)
{
initlcd();
writecom(0x80);
for(i=0;i<16;i++)writedata(str3[i]);
init0=0;init1=1;init2=0;init3=0;init4=0;
}
lcdnumdisplays(0x80+0x40KP);
lcdnumdisplays(0x80+0x46KI);
lcdnumdisplays(0x80+0x4CKD);
}
if(setflag!=0&&pageflag==1)
{
if(init2==0)
{
initlcd();
writecom(0x80);
for(i=0;i<16;i++)writedata(str4[i]);
init0=0;init1=0;init2=1;init3=0;init4=0;
}
lcdnumdisplays(0x80+0x40scantemp);
if(ok==1)KP=scantemp;
}
if(setflag!=0&&pageflag==2)
{
if(init3==0)
{
initlcd();
writecom(0x80);
for(i=0;i<16;i++)writedata(str5[i]);
init0=0;init1=0;init2=0;init3=
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 33356 2014-12-27 15:07 51单片机电机PID调速\51电机pid调速
文件 21962 2014-12-27 15:07 51单片机电机PID调速\51电机pid调速.hex
文件 78 2014-12-27 15:07 51单片机电机PID调速\51电机pid调速.lnp
文件 33730 2014-12-27 15:07 51单片机电机PID调速\51电机pid调速.M51
文件 1899 2014-12-27 15:07 51单片机电机PID调速\51电机pid调速.plg
文件 55718 2014-12-27 15:10 51单片机电机PID调速\51电机pid调速.uvopt
文件 13451 2014-12-25 20:06 51单片机电机PID调速\51电机pid调速.uvproj
文件 55714 2014-12-27 14:45 51单片机电机PID调速\51电机pid调速_uvopt.bak
文件 0 2014-12-25 12:14 51单片机电机PID调速\51电机pid调速_uvproj.bak
文件 155287 2014-12-27 14:45 51单片机电机PID调速\Last Loaded 课程设计-直流调速系统.DBK
文件 6376 2009-05-07 14:37 51单片机电机PID调速\STARTUP.A51
文件 14077 2014-12-27 15:07 51单片机电机PID调速\STARTUP.LST
文件 749 2014-12-27 15:07 51单片机电机PID调速\STARTUP.OBJ
文件 15192 2014-12-27 15:07 51单片机电机PID调速\综合设计-直流调速.c
文件 36980 2014-12-27 15:07 51单片机电机PID调速\综合设计-直流调速.LST
文件 44909 2014-12-27 15:07 51单片机电机PID调速\综合设计-直流调速.OBJ
文件 155287 2014-12-27 15:10 51单片机电机PID调速\课程设计-直流调速系统.DSN
文件 792 2017-02-21 06:33 51单片机电机PID调速\课程设计-直流调速系统.PWI
目录 0 2017-02-21 06:33 51单片机电机PID调速
----------- --------- ---------- ----- ----
645557 19
相关资源
- 基于STM32RCT6的步进电机驱动程序
- FTP课程设计(服务端+客户端)
- 高压无刷电机的硬件资料
- 直流无刷电机方波驱动 stm32 例程代码
- F28335无刷直流电机开闭环控制
- 基于MCS_51单片机的工业屏柜散热方案
- MCS_51单片机与8255A的接口设计
- 51单片机PWM程序,占空比、周期可调整
- 带有死区延时的H桥直流电机驱动电路
- 高频电子线路课程设计报告收音机
- 直流稳压电源的课程设计、安装及调
- EDA课程设计_密码锁
- 51单片机多功能自行车测速仪
- 单片机课程设计 篮球计分器
- 00
- 用51单片机实现G代码翻译
- 简易的电阻电容测量电路
- 数据结构课程设计 6 1 彩票系统
- 端口扫描课程设计详细的报告
- 51单片机基于protues的几个仿真实例
- 步进电机课程设计(个人设计)
- 51单片机PCB设计图
- PC -- 单片机的串口数据传输系统设计
- 校园网络规划与设计课程设计
- 51单片机控制舵机程序
- 编译原理课程设计:词法语法编译器
- 永磁直流电机设计软件
-
simuli
nk 课程设计 qpsk - FPGA在步进电机驱动上的应用实例及代
- 武汉理工大学 单片机课程设计 16*16点
评论
共有 条评论