直流电机PID控制源码c语言,51单片机PID+PWM直流电机转速闭环控制源码(12864液晶显示)...

该博客分享了一段使用C语言编写的51单片机直流电机PID控制及PWM调速的源码,包括键盘扫描、定时器设置、LCD显示和电机控制函数。通过12864液晶显示器实时显示当前转速、设定转速和占空比。代码中详细定义了PID参数,并提供了按键操作以调整电机转速。
摘要由CSDN通过智能技术生成

#define uchar unsigned char

#define uint unsigned int

#define GPIO_KEY P2

sbit PWM=P1^4;

sbit P10=P1^0;

sbit P12=P1^2;

uchar speed1[4]={"0000"};//设定转速

uchar speed2[3]={"000"};//占空比

uchar speed[]={"0000"};//当前转速

uchar KeyValue=0;

uint AA,count=0,flag;

float pid_p=0.003,pid_i=0.003,pid_d=0.002;        //PID三个参数 初值

uint SpeedSet=3000,CurrentSpeed;//设定转速 当前转速

unsigned char pid_val_mid;//pid_val_mid脉冲宽度

unsigned int lastError=0;

long int sumError=0;//sum偏差和

void delay1(unsigned int i)

{

unsigned int j;

for(;i>0;i--)

for(j=0;j<333;j++)

{;}

}

/********************* 键盘扫描*************/

void KeyDown(void)

{

GPIO_KEY=

  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值