-
大小: 4KB文件類型: .c金幣: 1下載: 0 次發(fā)布日期: 2021-06-08
- 語言: C/C++
- 標(biāo)簽: 鍵盤控制??步進(jìn)電機(jī)??正反轉(zhuǎn)??調(diào)速??
資源簡介
鍵盤控制步進(jìn)電機(jī)正反轉(zhuǎn)和調(diào)速c語言程序
#include //51芯片管腳定義頭文件
#include //內(nèi)部包含延時函數(shù) _nop_();
#define uchar unsigned char
#define uint unsigned int
uchar code FFW[8]={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09};
uchar code REV[8]={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01};
sbit K1 = P3^5; //正轉(zhuǎn)
sbit K2 = P3^3; //反轉(zhuǎn)
sbit K3 = P3^5;
sbit K4 =P3^6 ;
sbit K5 =P3^7; //停止
代碼片段和文件信息
#include????????//51芯片管腳定義頭文件
#include? ?//內(nèi)部包含延時函數(shù)?_nop_();
#define?uchar?unsigned?char
#define?uint??unsigned?int
uchar?code?FFW[8]={0x010x030x020x060x040x0c0x080x09};
uchar?code?REV[8]={0x090x080x0c0x040x060x020x030x01};
sbit??K1???=?P3^5;???????//正轉(zhuǎn)
sbit??K2???=?P3^3;???????//反轉(zhuǎn)
sbit??K3???=?P3^5;
sbit??K4???=P3^6?;
sbit??K5???=P3^7;???//停止
//sbit??BEEP?=?P3^6;???????//蜂鳴器
/********************************************************/
/*??????????????????????????????????????????????????
/*?延時t毫秒?
/*?11.0592MHz時鐘,延時約1ms?????????????????????????????????????
/*??????????????????????????????????????????????????????
/********************************************************/
void?delay(uint?t)
{???????????????????????????
???uint?k;
???while(t--)
???{
?????for(k=0;?k<125;?k++)
?????{?}
???}
}
/**********************************************************/
void?delayB(uchar?x)????//x*0.14MS
?{
???uchar?i;
???while(x--)
???{
?????for?(i=0;?i<13;?i++)
?????{?}
???}
?}
/**********************************************************/
void?beep()
?{
???uchar?i;
???for?(i=0;i<100;i++)
????{?
?????delayB(4);
???//??BEEP=!BEEP;?????????????????//BEEP取反
????}?
?//????BEEP=1;????????????????????//關(guān)閉蜂鳴器
?}
/********************************************************/
/*
/*步進(jìn)電機(jī)正轉(zhuǎn)
/*
/********************************************************/
void??motor_ffw()
?{?
???uchar?i;
???uint??j;
???for?(j=0;?j<1;?j++)?????????//轉(zhuǎn)1*n圈?
????{?
????if(K5==0)
????????{break;}????????????????//退出此循環(huán)程序
??????for?(i=0;?i<8;?i++)???????//一個周期轉(zhuǎn)45度
????????{
??????????P1?=?FFW[i];??????????//取數(shù)據(jù)
??????????delay(2);????????????//調(diào)節(jié)轉(zhuǎn)速
????????}
????}
?}
/********************************************************/
/*
/*步進(jìn)電機(jī)反轉(zhuǎn)
/*
/********************************************************/
void??motor_rev()
{
?????uchar?i;
?uint??j;
?for?(j=0;?j<1;?j++)???????//轉(zhuǎn)1×n圈
??????{
????if(K5==0)
?????????{break;}???????????????//退出此循環(huán)程序
????????for?(i=0;?i<8;?i++)?????//一個周期轉(zhuǎn)45度1
????????{
??????????P1?=?REV[i];??????????//取數(shù)據(jù)
??????????delay(2);???
評論
共有 條評論