历史上的今天

今天是:2024年11月07日(星期四)

正在发生

2020年11月07日 | STM32用IO口控制步进电机的简单程序

发布者:小悟空111 来源: eefocus关键字:STM32  IO口控制  步进电机 手机看文章 扫描二维码
随时随地手机看文章

练习IO口库函数操作。


//相序  

uint16_t phasecw[4] ={0x2000,0x0001,0x0004,0x0008};// D-C-B-A  

uint16_t phaseccw[4]={0x0008,0x0004,0x0001,0x2000};// A-B-C-D  



//步进电机相关IO口初始化  

// IN4: PC13  

// IN3: PC0  

// IN2: PC2  

// IN1: PC3  

void Moto_Init(void)  

{  

    GPIO_InitTypeDef GPIO_InitStructure;  

  

    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);            //GPIO CLOCK ENABLE  

      

    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;  

    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;    //推挽输出        

    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;   //50MHz速率  

    GPIO_Init(GPIOC, &GPIO_InitStructure);            

    GPIO_ResetBits(GPIOC,GPIO_Pin_13);                  //输出低电平  

  

    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;  

    GPIO_Init(GPIOC, &GPIO_InitStructure);  

    GPIO_ResetBits(GPIOC,GPIO_Pin_0);  

  

    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;  

    GPIO_Init(GPIOC, &GPIO_InitStructure);  

    GPIO_ResetBits(GPIOC,GPIO_Pin_2);  

  

    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3;  

    GPIO_Init(GPIOC, &GPIO_InitStructure);  

    GPIO_ResetBits(GPIOC,GPIO_Pin_3);  

}  


 


[cpp]  view plain copy

//电机正转  

void Motorcw(void)  

{  

    uint8_t i;  

  

    for(i=0;i<4;i++)  

    {  

        GPIO_Write(GPIOC,phasecw[i]);  

        delay_ms(4);  

    }  

}  

  

//电机反转  

void Motorccw(void)  

{  

    uint8_t i;  

    for(i=0;i<4;i++)  

    {  

        GPIO_Write(GPIOC,phaseccw[i]);  

        delay_ms(4);  

    }  

}  

  

//点击停止  

void MotorStop(void)  

{  

    GPIO_Write(GPIOC,0x0000);  

}  


记得使能IO口时钟。


关键字:STM32  IO口控制  步进电机 引用地址:STM32用IO口控制步进电机的简单程序

上一篇:stm32AD单通道与多通道转换(DMA)
下一篇:ucosi操作系统移植到STM32

推荐阅读

据科技日报报道,在6日开幕的第十二届中国国际航空航天博览会上,一架拥有巨幅翼展的无人机引人注目。据悉,这是中国航天科技集团十一院(以下简称十一院)研制的一型高空、高速、隐身、长航时无人机“彩虹-7”,可在高危环境下执行持续侦察、警戒探测、防空压制、作战支援、发射或引导其它武器对高价值目标发动打击等作战任务。据十一院彩虹无人机技术专...
进入HALT注意事项将未使用到的IO口设置为输出低;关闭所有用到的外设时钟(如 ADC、USART等);失能所使用到的外设;实测进入HALT模式待机约为0.3uA下面列出示例代码,如有错误,还请广大网友指出。 ^_^#include "stm8l15x.h"uint8_t sys_1ms_flg = 0;uint16_t SleepTime = 0;/*LED工作2S灭 进入HALT模式 外部唤醒 */void main(void){ CLK_...
到目前为止,几乎所有人都知道苹果计划发布新的 13 英寸 MacBook Pro 和 13 英寸 MacBook Air,这两款产品都将采用苹果定制的基于 ARM 的芯片。根据 000leaker 的最新爆料,新款 13 英寸 MacBook Air 的起售价为 799 美元(约 5375 元,未含税),而 13 英寸的 MacBook Pro 起售价则为 1,099 美元(约 7394 元,未含税)。...
摆脱芯片供应短缺问题 双芯片代工策略见效 11月4日,高通股价飙涨逾12%,相较同业,高通在面对芯片更显得心应手,并看好明年业绩将持续成长。 高通执行长 Crisano Amon 于电话会议上表示,预计12月底供应问题将明显好转,明年下半年将有足够的供应满足需求,预期 2022财年EPS有望年增20%。 Lily点评:芯片短缺一直影响5G手机的出货量。高通作为全...

史海拾趣

问答坊 | AI 解惑

组装好仪器后液晶屏花屏

我的仪器组装好后,就是把板子和液晶装到外壳后,液晶在过一段时间后就会花屏,不装到外壳里就没事,弄了好长时间了也不知道怎么回事,请大家帮忙。…

查看全部问答∨

WinCE5.0挂接IDE硬盘的疑惑?

WinCE5.0挂接IDE硬盘的疑惑? 有个项目,想使用IDE44pin接口挂接最少64GB的外部存储器,现有如下问题和大家讨论: 1.工作电压: 现在手头上的IDE电路是直接从S3C2440上IO口引出,鉴于3.3V的IO电压,似乎不能正常驱 ...…

查看全部问答∨

本人大四学生

已经学习了c51单片机,想问下各位老师,如果以后要从事单片机开发的话,需要再学习哪些大学未传授的知识,谢谢…

查看全部问答∨

求binArrayStart和binArrayEnd的定义的线索

问题描述:         大家好。我最近在修改Boot程序。在bootinit.c文件中有如下定义: IMPORT UCHAR        binArrayStart [];                    & ...…

查看全部问答∨

【芯币兑换】AVR单片机学习板及编程器最详细元器件清单

一、USB型51/AVR单片机编程器元器件清单   二、AVR ATmega16单片机学习板元器件清单           [ 本帖最后由 tiankai001 于 2010-8-8 15:35 编辑 ]…

查看全部问答∨

一个2407产生对称PWM的问题````

因为刚学DSP,做的是用2407产生6路3对对称PWM,一开始摸索的时候程序老是编译有问题,今天才把程序搞好``却发现我的板子出了问题,因为编的第一个程序所以没有把挖想放上来大家帮我看看这样写是不是能产生6路3对对称PWM``` 主程序如下 #include \\" ...…

查看全部问答∨

help

本人初学msp430 想找个好点的视频学习学习…

查看全部问答∨

紧急求助!!!

麻烦各位大侠给小弟指导一下。 我用的是2274芯片,编写的程序已经在线仿真调试通过,现在想把程序脱机下载至芯片,不知该怎么操作?麻烦各位大侠给点具体的操作方法。…

查看全部问答∨

求一可用的串口通讯程序

折腾了好几天,实在弄不出来了,哪位有好使的串口程序赏一个,谢谢了。…

查看全部问答∨

基于LED点阵显示屏9路抢答器的设计制作程序

基于LED点阵显示屏9路抢答器的设计制作程序…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved