|
這是作者個(gè)人參加51單片機(jī)比賽的資料,歡迎參考
0.png (42.28 KB, 下載次數(shù): 61)
下載附件
2017-11-7 03:29 上傳
單片機(jī)源程序如下:
- //=======================================================
- //工程名稱:步進(jìn)電機(jī)精準(zhǔn)定位、轉(zhuǎn)向、轉(zhuǎn)速
- //工程作者:馮奇
- //工程硬件:STC89C52RC
- //======================包含文件=================================
- #include<reg52.h> //包含頭文件
- #include"LCD1602.H" //包含文件---LCD1602顯示屏
- #include"Stepmotor.H" //包含文件---兩相五線步進(jìn)電機(jī)
- #include"DELAY.H" //包含文件---延時(shí)
- #include"KEYx3.H" //包含文件---三個(gè)按鍵
- //======================定義變量=================================
- unsigned int count=256; //角度初始值
- float t;
- unsigned char mode=0; //按鍵1設(shè)置模式
- extern unsigned int speed;//速度值
- bit stop,zf; //stop=1 步進(jìn)電機(jī)啟動(dòng)
- //stop=0 步進(jìn)電機(jī)暫停
- //zf=1 右轉(zhuǎn)
- //zf=0 左轉(zhuǎn)
- //======================主函數(shù)=================================
- void main()
- {
- // KEYx3_Init();//初始化按鍵
- Step_Init();//步進(jìn)電機(jī)復(fù)位
- Step_R();
- // speed=3; //初始化轉(zhuǎn)速
- // delay_ms(100);
- //zf=1;
- //Init_LCD1602(); //LCD1602初始化
- // LCD1602_ShowStr(6,1,"R");
- // while(1)
- // {
- // if(KEYx3_1_Gets())
- // {
- // mode++; //模式切換
- // delay_ms(10);
- // }
- // switch(mode)
- // {
- // case 1: //模式1控制轉(zhuǎn)動(dòng)角度
- // {
- // if(KEYx3_2_Gets())
- // {
- // count=count+2; //加步進(jìn)電機(jī)角度的度數(shù)
- // delay_ms(10);
- // if(count>512)
- // {
- // count=0;
- // }
- // }
- // if(KEYx3_3_Gets())
- // {
- // count=count-2; //加步進(jìn)電機(jī)角度的度數(shù)
- // delay_ms(10);
- // if(count<0)
- // {
- // count=512;
- // }
- // }
- // break;
- // }
- // case 2: //模式2控制轉(zhuǎn)動(dòng)方向
- // {
- // if(KEYx3_2_Gets())
- // {
- // zf=1;
- // LCD1602_ShowStr(6,1,"R");//LCD1602顯示方向--右
- // }
- // if(KEYx3_3_Gets())
- // {
- // zf=0;
- // LCD1602_ShowStr(6,1,"L");//LCD1602顯示方向--左
- // }
- // break;
- // }
- // case 3: //模式3控制轉(zhuǎn)動(dòng)速度
- // {
- // if(KEYx3_2_Gets())
- // {
- // speed++; //加速度
- // delay_ms(5);
- // if(speed>6)
- // {
- // speed=1;
- // }
- // }
- // if(KEYx3_3_Gets())
- // {
- // speed--; //減速度
- // delay_ms(5);
- // if(speed<1)
- // {
- // speed=6;
- // }
- // }
- // break;
- // }
- // case 4: //模式4控制啟動(dòng)/暫停
- // {
- // if(KEYx3_3_Gets())
- // {
- // stop=~stop;
- // }
- // break;
- // }
- // default:
- // {
- // mode=0;
- // break;
- // }
- // }
- // LCD1602_ShowStr(0,0,"Angle:");//LCD1602顯示名詞
- // LCD1602_ShowStr(0,1,"Direc:");
- // LCD1602_ShowStr(10,0,"mode:");
- // LCD1602_ShowStr(9,1,"speed:");
- // LCD1602_SetsArea(0,0);
- // LCD1602_Show_1_Numb(15,1,speed);//LCD1602顯示速度
- // LCD1602_Show_1_Numb(15,0,mode);//LCD1602顯示模式
- // Step_An(count);//轉(zhuǎn)動(dòng)角度
- // t=count*0.703125+0.05;//角度轉(zhuǎn)換
- // LCD1602_Show_3_Numb(6,0,t); //LCD1602顯示角度
- // }
- }
- ……………………
- …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼
所有資料51hei提供下載:
Desktop.7z
(346.04 KB, 下載次數(shù): 100)
2017-11-6 22:30 上傳
點(diǎn)擊文件名下載附件
51單片機(jī)個(gè)人比賽資料 下載積分: 黑幣 -5
|
評(píng)分
-
查看全部評(píng)分
|