




如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
倒立摆初步调式程序 第一篇:倒立摆初步调式程序/*/*****************************************************此为倒立摆程序,共分为六个模式//************************************************************************************************************************************************************/#include#include#defineuintunsignedint#defineucharunsignedcharsbitA1=P2^0;//步进电机方向控制sbitA2=P2^1;//步进电机的速度调整sbitA3=P2^2;//待定接口sbitA4=P2^3;//待定接口sbitB1=P1^0;//按键接口由模式1到模式6,模式6必须在完成模式5所设定功能启动sbitB2=P1^1;sbitB3=P1^2;sbitB4=P1^3;sbitB5=P1^4;sbitB6=P1^5;sbitZx=P3^2;//增量式编码器接口z用于判断起点sbitAx=P3^3;//A,B联立用于判断方向sbitBx=P2^4;sbitrs=P2^5;//1602的数据/指令选择控制线sbitrw=P2^6;//1602的读写控制线sbiten=P2^7;//1602的使能控制线voidmoshi1();//倒立摆的不同模式函数voidmoshi2();voidmoshi3();voidmoshi4();voidmoshi5();voidmoshi6();//***********************************************//lcd显示函数声明voidfuzhi1(ucharn2,ucharn3);voidfuzhi(ucharn2,ucharn3);voidlcd_w1(ucharff);voidlcd_w2(uchardat);voidlcd_init();voiddisplay();//************************************************//pid参数及其计算函数声明voidPID_init();voidchushihua();floatPID_jisuang(floatshuzhi);//**************************************************voiddianji(intv,ints,charm);//电机函数intzhuanghua(floatshijizhi1);//pid控制量转化为电机运转角度函数floatzengliangzhi,jiaodu,Py;ucharflag=1,a=0,j=0,j1=0,su=0,time,time1,time2,y=0;uchartable[]={“jiaodu1=00.00”};uchartable1[]={“p=0000,x=0;”};uintmc,n,Pw,d1,d2,d3,d4,d5,m1;//*********************************************************//延时函数voiddeplay(uintms){uchari;while(ms--)for(i=0;i}//*********************************************voidmain(){PID_init();chushihua();while(1)}//*************************************************voidchushihua(){{while(B1)moshi1();while(B2)moshi2();while(B3)moshi3();while(B4)moshi4();while(B5)moshi5();}EA=1;//开总中断1优先级TMOD=0x01;//T0定时方式1TH0=(65536-200)/256;TL0=(65536-200)%256;}//******************************************************voidbianmaA()interrupt2{if((time1-time2)>=2){time2=time1;if(Bx)IT0=1;IT1=1;EX0=1;PX0=1;//下降沿触发//下降沿触发//开外部中断0//外部中断0高TR0=1;//启用定时器T0ET0=1;//控制打开T0j++;elsej1++

一吃****书竹
实名认证
内容提供者


最近下载