91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 6KB
    文件類型: .c
    金幣: 1
    下載: 0 次
    發布日期: 2021-06-16
  • 語言: 其他
  • 標簽: stm32??步進電機??

資源簡介

stm32單片機控制42步進電機,能夠實現x,y軸水平移動。

資源截圖

代碼片段和文件信息

/*******************************************************************************
*?文件名??????????:?main.c
*?作者????????????:?jackice
*?時間 ??:2013/8/10
*?文件描述????????:?EN:PA.0?CLK:PA.1;DIR:PA.2
******兩個電機同時走動,可以通過給定不同頻率的脈沖、不同脈沖數達到兩個電機走速不同,走的距離不同************
**********134個脈沖?電機走1mm;1345個脈沖?電機走10mm;13450個脈沖電機走100mm;******
********************************************************************************/

/*?頭文件????------------------------------------------------------------------*/

#include?“stm32f10x_lib.h“


#define?en0_0()???GPIO_ResetBits(GPIOA??GPIO_Pin_0) ??//宏定義
#define?en0_1()???GPIO_SetBits(GPIOA??GPIO_Pin_0)
#define?en1_0()???GPIO_ResetBits(GPIOA??GPIO_Pin_4) ??//宏定義
#define?en1_1()???GPIO_SetBits(GPIOA??GPIO_Pin_4)
#define?clk0_0()??GPIO_ResetBits(GPIOA??GPIO_Pin_1)
#define?clk0_1()??GPIO_SetBits(GPIOA??GPIO_Pin_1)
#define?clk1_0()??GPIO_ResetBits(GPIOA??GPIO_Pin_5)
#define?clk1_1()??GPIO_SetBits(GPIOA??GPIO_Pin_5)
#define?dir0_0()??GPIO_ResetBits(GPIOA??GPIO_Pin_2) ??
#define?dir0_1()??GPIO_SetBits(GPIOA??GPIO_Pin_2)
#define?dir1_0()??GPIO_ResetBits(GPIOA??GPIO_Pin_3) ??
#define?dir1_1()??GPIO_SetBits(GPIOA??GPIO_Pin_3)



/*?自定義同義關鍵字????--------------------------------------------------------*/

/*?自定義參數宏????????--------------------------------------------------------*/

/*?自定義函數宏????????--------------------------------------------------------*/

/*?自定義變量??????????--------------------------------------------------------*/

/*?自定義函數聲明??????--------------------------------------------------------*/

void?RCC_Configuration(void);
void?GPIO_Configuration(void);
void?delay(u32?i);
void?motor_contrl(u32?Xstepsu8?Xdirectionu16?Xspeedu32?Ystepsu8?Ydirectionu16?Yspeedu32?setps);



/*******************************************************************************
*?函數名 ?:?main
*?函數描述???????:?無
*?輸入參數???????:?無
*?輸出結果???????:?無
*?返回值?????????:?無
*******************************************************************************/

int?main(void)
{
???
?? /*?設置系統時鐘?*/
?? RCC_Configuration();

?? /*?設置GPIO端口?*/
?? GPIO_Configuration();

/*打開使能端*/
??en0_1();
en1_1();
??while(1)
?{
? motor_contrl(10310313450);
delay(100000);
motor_contrl(11311313450);
delay(100000);
?}
}



/*******************************************************************************
*?函數名 :?RCC_Configuration
*?函數描述??:?設置系統各部分時鐘
*?輸入參數??:?無
*?輸出結果??:?無
*?返回值????:?無
*******************************************************************************/

void?RCC_Configuration(void)
{
/*?定義枚舉類型變量?HSEStartUpStatus?*/
ErrorStatus?HSEStartUpStatus;

?? /*?復位系統時鐘設置*/
?? RCC_DeInit();

?? /*?開啟HSE*/
?? RCC_HSEConfig(RCC_HSE_ON);

?? /*?等待HSE起振并穩定*/
?? HSEStartUpStatus?=?RCC_WaitForHSEStartUp();

/*?判斷HSE起是否振成功,是則進入if()內部?*/
?? if(HSEStartUpStatus?==?SUCCESS)
?? {
???? /*?選擇HCLK(AHB)時鐘源為SYSCLK?1分頻?*/
???? RCC_HCLKCon

評論

共有 條評論