五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

第9章-步進電機與蜂鳴器(上:步進電機)

2023-08-27 10:56 作者:feifeiluan2  | 我要投稿

總結:外面步進電機轉(zhuǎn)1圈,對應單片機發(fā)4096次信號

把轉(zhuǎn)幾圈的度數(shù)轉(zhuǎn)換成單片機發(fā)幾次信號,

逆時針轉(zhuǎn)對應那個數(shù)組從0-7依次發(fā)

順時針轉(zhuǎn)對應那個數(shù)組從7-0依次發(fā)

發(fā)送頻率是500,2ms發(fā)一次,發(fā)太快可能不轉(zhuǎn).

一個引腳的輸出有2種情況

輸出0(拉地)+輸出高阻(旁觀),,,或者,,,,輸出0(拉地)+輸出1(電源)


課后第4題,

#include <reg52.h>

typedef unsigned char u8;
typedef unsigned int u16;
typedef unsigned long u32;
typedef signed char i8;
typedef signed int i16;
typedef signed long i32;

i32 beats = 0;

code u8 BeatCode[8] = {0x0E, 0x0C, 0x0D, 0x09, 0x0B, 0x03, 0x07, 0x06};

i32 anyAngle=180;

//正角度是逆時針轉(zhuǎn),負角度是順時針轉(zhuǎn)
void StartMotor(i32 angle)
{
?? ?EA=0;
?? ?beats=(angle*4096)/360;
?? ?EA=1;
}

void StopMotor()
{
?? ?EA=0;
?? ?beats=0;
?? ?EA=1;
}

void TrunMotor()
{
?? ?static u8 index=0;
?? ?u8 tmp;

?? ?if(beats)
?? ?{
?? ??? ?if(beats>0)
?? ??? ?{
?? ??? ??? ?beats--;
?? ??? ??? ?index++;
?? ??? ??? ?index&=0x07;
?? ??? ?}else
?? ??? ?{
?? ??? ??? ?beats++;
?? ??? ??? ?index--;
?? ??? ??? ?index&=0x07;
?? ??? ?}
?? ??? ?tmp=P1;
?? ??? ?tmp&=0xF0;
?? ??? ?tmp|=BeatCode[index];
?? ??? ?P1=tmp;

?? ?}else
?? ?{
?? ??? ?P1|=0x0F;
?? ?}
}


void main(void)
{
?? ?TMOD = 0x01;
?? ?TH0 = 0xFC;
?? ?TL0 = 0x66;
?? ?ET0 = EA = TR0 = 1;

?? ?StartMotor(anyAngle);
?? ?while (1)
?? ?{
?? ??? ?;
?? ?}
}


void Timer0_ISR()interrupt 1
{
?? ?TH0=0xFC;
?? ?TL0=0x66;

?? ?TrunMotor();
}

第9章-步進電機與蜂鳴器(上:步進電機)的評論 (共 條)

分享到微博請遵守國家法律
叙永县| 托克逊县| 安福县| 新丰县| 南开区| 仁怀市| 紫阳县| 陆良县| 马公市| 兴宁市| 长顺县| 扶沟县| 大丰市| 两当县| 宁远县| 阿勒泰市| 泰兴市| 广丰县| 德保县| 临城县| 聂拉木县| 横峰县| 怀远县| 汉沽区| 秭归县| 定陶县| 绍兴市| 宁陵县| 红河县| 萨嘎县| 东乌| 江西省| 清河县| 松滋市| 灵宝市| 桑日县| 宜章县| 兴文县| 武胜县| 蒲江县| 游戏|