freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

自動(dòng)控制升降旗系統(tǒng)的設(shè)計(jì)論文-閱讀頁(yè)

2024-09-16 21:57本頁(yè)面
  

【正文】 define PIN_I11 0000000000100000b //IO PIN 5.define PIN_PH1 0000000000000001b //IO PIN 0.define PIN_I02 0000000000010000b //IO PIN 4.define PIN_I12 0000000001000000b //IO PIN 6.define PIN_PH2 0000000000000010b //IO PIN 1.define PIN_MOTOR PIN_I01+PIN_I11+PIN_PH1+PIN_I02+PIN_I12+PIN_PH2//================================================// 步進(jìn)電機(jī)最高速度定義//================================================.define MOTOR_MAXSPEED 150 // 單位為拍/秒()//================================================// 電機(jī)工作模式定義//================================================.define STEP_FULL 0x0001 // 整步//================================================// 中斷常量定義//================================================.define P_INT_Mask 0x702d.define C_IRQ4_4KHz 0x0040//================================================// 公有函數(shù)聲明//================================================.public _StepMotor_Init.public F_StepMotor_Init.public _StepMotor_SetMode.public F_StepMotor_SetMode.public _StepMotor_SetSpeed.public F_StepMotor_SetSpeed.public _StepMotor_Forward.public F_StepMotor_Forward.public _StepMotor_Backward.public F_StepMotor_Backward.public _StepMotor_Stop.public F_StepMotor_Stop.public _StepMotor_Status.public F_StepMotor_Status.public _StepMotor_Drive.public F_StepMotor_Drive//================================================// 工作方式的控制時(shí)序表//================================================.dataTbl_SMotor_Full: // 整步 .dw PIN_PH1+PIN_PH2 .dw PIN_PH2 .dw 0x0000 .dw PIN_PH1 .dw PIN_PH1+PIN_PH2 .dw PIN_PH2 .dw 0x0000 .dw PIN_PH1//================================================// 變量定義//================================================.iram SMotor_StartPtr: .dw 0 // 控制時(shí)序表起始地址 SMotor_CurPtr: .dw 0 // 時(shí)序表中當(dāng)前拍的時(shí)序指針 SMotor_Dir: .dw 0 // 電機(jī)轉(zhuǎn)動(dòng)方向 SMotor_TimerSet: .dw 0 // 定時(shí)器預(yù)置數(shù)值 SMotor_CurTimer: .dw 0 // 定時(shí)器計(jì)數(shù)值 SMotor_Steps: .dw 0 // 電機(jī)剩余轉(zhuǎn)動(dòng)步數(shù).code//======================================================// 函數(shù)名稱: StepMotor_Init// C調(diào)用: void StepMotor_Init(void)// 匯編調(diào)用: F_StepMotor_Init// 實(shí)現(xiàn)功能: 步進(jìn)電機(jī)驅(qū)動(dòng)初始化(將開(kāi)啟IRQ4_4KHz中斷)//======================================================_StepMotor_Init:F_StepMotor_Init: push r1 to [sp] INT OFF r1 = [P_Motor_Attr] r1 |= PIN_MOTOR [P_Motor_Attr] = r1 r1 = [P_Motor_Dir] r1 |= PIN_MOTOR [P_Motor_Dir] = r1 r1 = [P_Motor_Buf] r1 |= PIN_MOTOR [P_Motor_Data] = r1 r1 = Tbl_SMotor_Full [SMotor_StartPtr] = r1 [SMotor_CurPtr] = r1 r1 = 0x0000 [SMotor_TimerSet] = r1 [SMotor_CurTimer] = r1 [SMotor_Steps] = r1 [SMotor_Dir] = r1 r1 = [P_INT_Mask] r1 |= C_IRQ4_4KHz [P_INT_Mask] = r1 INT FIQ,IRQ pop r1 from [sp]retf//======================================================// 函數(shù)名稱: StepMotor_SetMode// C調(diào)用: void StepMotor_SetMode(unsigned ModeCode)// 匯編調(diào)用: F_StepMotor_SetMode// 實(shí)現(xiàn)功能: 設(shè)置步進(jìn)電機(jī)工作模式// 入口參數(shù): ModeCode(r1) 步進(jìn)電機(jī)工作模式,可以是下列數(shù)值之一:// STEP_FULL 整步模式//======================================================_StepMotor_SetMode: push r1 to [sp] r1 = sp + 4 r1 = [r1] call F_StepMotor_SetMode pop r1 from [sp]retfF_StepMotor_SetMode: push r1 to [sp] cmp r1, STEP_FULL jne ?IsHalf?Full: r1 = Tbl_SMotor_Full jmp ?SetPtr?SetPtr: [SMotor_StartPtr] = r1 [SMotor_CurPtr] = r1 pop r1 from [sp]retf//======================================================// 函數(shù)名稱: StepMotor_SetSpeed// C調(diào)用: void StepMotor_SetSpeed(unsigned Speed)// 匯編調(diào)用: F_StepMotor_SetSpeed// 實(shí)現(xiàn)功能: 設(shè)置步進(jìn)電機(jī)轉(zhuǎn)速// 入口參數(shù): Speed(r1) 轉(zhuǎn)速值,單位為拍/秒(),范圍從1到MOTOR_MAXSPEED//======================================================_StepMotor_SetSpeed: push r1 to [sp] r1 = sp + 4 r1 = [r1] call F_StepMotor_SetSpeed pop r1 from [sp]retf.external __divu1 // 除法函數(shù),F(xiàn)_StepMotor_SetSpeed: push r1,r2 to [sp] r2 = r1 // TimerData=4096/pps (4kHz Timer) jz ?Exit cmp r2, MOTOR_MAXSPEED jna ?SetTimer r2 = MOTOR_MAXSPEED?SetTimer: r1 = 4096 push r1,r2 to [sp] call __divu1 sp += 2 r2 = r2 lsl 1 //余數(shù)與4096比較,四舍五入 cmp r2, 4096 jb ?NoCarry?Carry: r1 += 1?NoCarry: [SMotor_TimerSet] = r1 r1 = 0 [SMotor_CurTimer] = r1?Exit: pop r1,r2 from [sp]retf//======================================================// 函數(shù)名稱: StepMotor_Forward// C調(diào)用: void StepMotor_Forward(unsigned Step)// 匯編調(diào)用: F_StepMotor_Forward// 實(shí)現(xiàn)功能: 使電機(jī)正向轉(zhuǎn)動(dòng)// 入口參數(shù): Steps(r1) 使電機(jī)轉(zhuǎn)動(dòng)的拍數(shù),范圍從1~65535// 當(dāng)Steps設(shè)置為0時(shí),電機(jī)將持續(xù)轉(zhuǎn)動(dòng)//======================================================_StepMotor_Forward: push r1 to [sp] r1 = sp + 4 r1 = [r1] call F_StepMotor_Forward pop r1 from [sp]retfF_StepMotor_Forward: push r1 to [sp] [SMotor_Steps] = r1 r1 = [SMotor_StartPtr] [SMotor_CurPtr] = r1 r1 = 1 [SMotor_Dir] = r1 pop r1 from [sp]retf//======================================================// 函數(shù)名稱: StepMotor_Backward// C調(diào)用: void StepMotor_Backward(unsigned Step)// 匯編調(diào)用: F_StepMotor_Backward// 實(shí)現(xiàn)功能: 使電機(jī)反向轉(zhuǎn)動(dòng)// 入口參數(shù): Steps(r1) 使電機(jī)轉(zhuǎn)動(dòng)的拍數(shù),范圍從1~65535// 當(dāng)Steps設(shè)置為0時(shí),電機(jī)將持續(xù)轉(zhuǎn)動(dòng)//======================================================_StepMotor_Backward: push r1 to [sp] r1 = sp + 4 r1 = [r1] call F_StepMotor_Backward pop r1 from [sp]retfF_StepMotor_Backward: push r1 to [sp] [SMotor_Steps] = r1 r1 = [SMotor_StartPtr] r1 += 7 [SMotor_CurPtr] = r1 r1 = 1 [SMotor_Dir] = r1 pop r1 from [sp]retf//======================================================// 函數(shù)名稱: StepMotor_Drive// C調(diào)用: void StepMotor_Drive(void)// 匯編調(diào)用: F_StepMotor_Drive// 實(shí)現(xiàn)功能: 實(shí)現(xiàn)電機(jī)轉(zhuǎn)動(dòng),該函數(shù)僅被IRQ4_4KHz中斷服務(wù)程序調(diào)用//======================================================_StepMotor_Drive:F_StepMotor_Drive: push r1,r2 to [sp] r1 = [SMotor_TimerSet] jz ?Exit r2 = [SMotor_Dir] jz ?Exit r2 = [SMotor_CurTimer] r2 += 1 [SMotor_CurTimer] = r2 cmp r2, r1 jb ?Exit r1 = [SMotor_CurPtr] r2 = [P_Motor_Buf] r2 amp
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1