- 博客(0)
- 资源 (2)
- 收藏
- 关注
dsp28335LCD程序
#define LCD_DATA (*((volatile Uint16 *)0x2001))
#define EN GpioDataRegs.GPFDAT.bit.GPIOF2
#define RW GpioDataRegs.GPFDAT.bit.GPIOF1
#define RS GpioDataRegs.GPFDAT.bit.GPIOF0
#define LOW 0
#define HIGH 1
#define CLEAR_SCREEN 0x01 //清屏指令:清屏且AC值为00H
#define AC_INIT 0x02 //将AC设置为00H。且游标移到原点位置
#define CURSE_ADD 0x06 //设定游标移到方向及图像整体移动方向(默认游标右移,图像整体不动)
#define FUN_MODE 0x30 //工作模式:8位基本指令集
#define DISPLAY_ON 0x0c //显示开,显示游标,且游标位置反白
#define DISPLAY_OFF 0x08 //显示关
#define CURSE_DIR 0x14 //游标向右移动:AC=AC+1
#define SET_CG_AC 0x40 //设置AC,范围为:00H~3FH
#define SET_DD_AC 0x80
extern uchar A[]={"南京研旭"};
extern uchar B[]={"电气科技有限公司"};
extern uchar C[]={"www.armdsp.net"};
extern uchar D[]={"www.njyxdq.com"};
extern uchar E[]={"tel:02558747116"};
Uint16 p, x,y;
2017-09-15
dspic30f4011闭环控制无刷直流电机程序
基于dspic30f4011的无刷直流电机程序
#include "p30f4011.h"
#include "oled.h"
#include "Mypid.h"
#include "timer.h"
#include "interrupt.h"
#include "ADC.h"
#include "moter.h"
//配置位
_FOSC(0X0304);//FCKSM = 00;时钟切换使能 FOS = 11主振荡器XT晶振模式外部4MHz
_FWDT(0X0000);//关狗
_FBORPOR(0X3A2);//MCLREN禁止 欠压2.7V 上电延时16MS
_FGS(0X03);
void Delay_1ms(unsigned int t);//t = 1000大概1s
void System_Init(void)//系统初始化
{
TRISB = 0x0000;
TRISE = 0x0000;
PWMCON1 = 0x0000;//通用IO
}
int main()
{
System_Init();
Timer1_Init();
ADC_Init();
Init_pid();
set = 350;//设置PID基准
OLED_Init(); //初始化OLED
OLED_Clear();
disn(4,0,55);disn(5,0,69);disn(6,0,76);disn(7,0,67);disn(8,0,79);disn(9,0,77);disn(10,0,69);//Welcome
while(1)
{
disn(4,1,Filter()/10000);disn(5,1,Filter()000/1000);disn(6,1,Filter()00/100);disn(7,1,Filter()0/10);disn(8,1,Filter());
disn(4,2,rout/10000);disn(5,2,rout000/1000);disn(6,2,rout00/100);disn(7,2,rout0/10);disn(8,2,rout);
duty_cycle(Filter());//进入占空比调节
// if((PWM == 0)&&(Filter()>351))
// motor_FFZ();
// if((PWM == 1)&&(Filter()<349))
// motor_FFW();
if((PWM == 0)&&(Filter()!=350))
motor_FFW();
if((PWM == 1)&&(Filter()!=350))
motor_FFZ();
}
}
2017-09-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人