历史上的今天
返回首页

历史上的今天

今天是:2024年10月23日(星期三)

正在发生

2019年10月23日 | 使用MSP430G2 LaunchPad开发板连接步进电机的方法

2019-10-23 来源:eefocus

在本篇文章中,我们将介绍如何使用MSP430 LaunchPad开发板连接一个步进电机。 MSP-EXP430G2是德州仪器(TI)提供的开发工具,又名LaunchPad,用于学习和练习如何使用他们提供的微控制器。该开发板属于MSP430产品线,我们可以使用它对所有MSP430系列微控制器进行编程。如果您是MSP430的新手,请查看MSP430 LaunchPad的入门教程。


所需的材料

●    MSP430 LaunchPad开发板

●    35BYJ46或28-BYJ48步进电机

●    ULN2003驱动芯片

●    连接导线

●    面包板


步进电机

步进电机是一种无刷直流电机,可将电脉冲转换为不同的机械运动。步进电机的轴以不连续的步骤旋转。我们可以根据需要获得精确的步数和速度。



我们将使用市场上价格便宜的35BYJ46双极步进电机。它有6根电线,但也有5根电线的。步进电机有2个线圈。每个都有3根电线从中出来。在3根导线中,1根中心抽头,剩下2根导线直接与线圈连接。总共有4根信号线和2根中心抽头,用5-12V电源连接。


如果总共有5根电线从电机出来,则4根电线是信号线,1根电线中心抽到两个线圈。和下图一样。



要检查哪根导线是中心抽头或者哪根是信号线,您必须检查从电机出来的导线的电阻。因此,与中心抽头的电阻相比,连接同一根线圈的那些导线具有高电阻值。


在上图中,如果我们检查了蓝线和黄线的电阻值,它们之间的电阻大于黄线和红线或蓝线和红线之间的值。所以,红色线是中心抽头。


ULN2003步进电机驱动芯片

大多数步进电机只能在驱动模块的帮助下运行。这是因为控制器模块(在我们的情况下是MSP430)无法从其I / O引脚提供足够的电流以使电机运行。因此我们将使用像ULN2003模块这样的外部模块作为步进电机驱动。有许多类型的驱动模块,其中驱动模块的选择根据所用电机的类型而改变。所有驱动器模块的主要原理是为电动机提供足够的电流以使其运行。


在这个项目中,我们将使用ULN2003电机驱动器IC。 IC的引脚图如下:



我们使用4个输入端口和4个输出端口。


电路原理图



在上图中,步进电机的红线没有与IC的PIN5连接,该线必须连接到5V。步进电机的颜色代码可能与电路图中给出的颜色不同。因此,在检查正确的信号线后再连接导线。


我们将使用Energia IDE开发环境编写代码。它与Arduino IDE相同,易于使用。用于驱动步进器的示例代码也可以在Arduino IDE的示例菜单中找到。


代码和说明

在我们开始对MSP430进行编程之前,让我们了解一下程序内部的工作流程。我们将使用4步序列方法,因此将有四个步骤来执行一次完整的旋转。将A、B、C和D看作四个线圈。

步骤序号

通电的引脚

通电的线圈

第1步

6和7

A和B

第2步

7和8

B和C

第3步

8和9

C和D

第4步

9和6

D和A


在本篇文章中中,我们将编写MSP430步进电机代码。完整的程序可以在本文末尾处给出,下面将解释几段重要的代码。


步进电机每转的步数为32;因此我们在代码行中写入以下内容:

const int STEPS = 32;


接下来,您必须创建一个实例,在该实例中我们指定了连接步进电机的引脚。


Stepper myStepper (STEPS, 6, 7, 8, 9);



由于我们使用的是Stepper库,我们可以使用以下代码行设置电机的速度。对于35BYJ46步进电机,速度范围在0到200之间。


Mystepper.setSpeed(200);


现在,为了使电机向前移动一步,我们可以使用以下行。


myStepper.step(STEPS);



由于我们有32步和64作为齿轮比,我们需要移动2048(32 * 64 = 2048),以完成一次完整的旋转。现在,上传以下代码,然后根据您的需要更改前进的步数。


本篇文章使用的完整代码如下:

#include

const int STEPS = 32;  // change this to fit the number of steps per revolution

// for your motor

// initialize the stepper library on pins 6 through 9 or you can use any pins on MSP430:

Stepper myStepper(STEPS, 6,7,8,9);            

void setup() {

                               // set the speed at 200rpm or as you want:

  myStepper.setSpeed(200);

}

void loop() {

  myStepper.step(STEPS);

}



本篇文章使用的完整代码如下:


推荐阅读

史海拾趣

Fremont_Micro_Devices_USA公司的发展小趣事

Fremont Micro Devices USA公司的发展故事

故事一:初创与成长

Fremont Micro Devices USA(简称FMD或弗里蒙特微)的故事始于对高性能模拟及数模混合信号集成电路设计的执着追求。公司于多年前在加利福尼亚成立,起初是一家小型但充满活力的初创企业,专注于非易失性存储芯片、MCU芯片和电源管理芯片的研发。凭借其创始团队在半导体行业的深厚背景和技术专长,FMD迅速在消费电子、便携设备和通讯/网络领域崭露头角。通过持续的技术创新和产品研发,FMD逐渐积累了市场声誉,吸引了多家国际知名风险投资公司的关注和支持,为公司的快速发展奠定了坚实的基础。

故事二:技术突破与市场拓展

在FMD的发展历程中,技术突破是推动其不断前进的重要动力。公司研发团队拥有国内外顶尖半导体企业的工作经验,他们致力于全定制和半定制的数模混合芯片设计,不断提升产品的性能和可靠性。通过不断的技术积累和创新,FMD在Memory、MCU和PMIC等领域取得了显著的技术突破,拥有了业界领先的技术基础和IP积累。这些技术成果不仅提升了公司的市场竞争力,也为其在消费类、智能硬件、IOT和工控安防等应用领域的市场拓展提供了有力支持。

故事三:全球化布局与供应链管理

随着业务的不断扩张,FMD开始布局全球化市场。公司在美国本土建立了完善的研发和生产体系,同时在中国深圳设立了总部,并在香港设立了办事处,以便更好地服务亚太地区的客户。此外,FMD还积极与全球知名的电子元器件分销商合作,建立了稳定的供应链体系。通过优化供应链管理,FMD确保了产品的质量和交付速度,进一步提升了客户满意度和市场竞争力。

故事四:应对行业挑战与危机

在电子行业的发展过程中,FMD也面临着诸多挑战和危机。例如,全球半导体市场的周期性波动、国际贸易环境的变化以及新冠疫情的爆发等都对公司的运营和发展产生了一定的影响。然而,FMD凭借其强大的技术实力和市场敏锐度,积极应对这些挑战和危机。公司通过加强研发创新、优化产品结构、拓展新兴市场等方式,保持了业绩的稳定增长,并在逆境中实现了新的发展。

故事五:上市规划与未来发展

近年来,FMD在资本市场也取得了重要进展。公司已完成与中信证券的上市辅导协议签署,并在深圳证监局备案,拟在A股市场挂牌上市。这一举措不仅将为FMD带来更多的资金支持和发展动力,也将进一步提升公司的品牌影响力和市场竞争力。展望未来,FMD将继续秉承高性能、高可靠性和低成本的理念,加大在研发创新和市场拓展方面的投入力度,为客户提供更加优质的产品和服务,推动公司向更高层次的发展迈进。

冠西电子(COSMO)公司的发展小趣事

2000年,冠西电子在台湾证券交易所成功上市,标志着公司进入了一个新的发展阶段。上市不仅为冠西电子提供了更多的资金支持,也提升了其品牌知名度和市场影响力。冠西电子借此机会进一步加大在研发、生产、销售等方面的投入,推动公司业务的全面发展。

DCCOM [ DC COMPONENTS ]公司的发展小趣事

在追求经济效益的同时,DCCOM公司也积极履行社会责任。公司倡导环保理念,注重可持续发展。在生产过程中,公司采用环保材料和清洁能源,减少对环境的影响。此外,DCCOM还积极参与社会公益活动,回馈社会。这种环保理念和社会责任感使得DCCOM在行业中树立了良好的形象。

请注意,以上故事均基于虚构和假设,不代表任何真实情况。如果您需要了解DC Components或其他特定公司的真实发展历程和故事,建议您查阅相关资料或联系公司官方获取准确信息。

DAYLIGHT公司的发展小趣事

DAYLIGHT公司成立于XX年,由一群富有远见卓识的电子工程师和投资者共同创立。当时,电子行业正经历着快速的技术革新,市场对高效、可靠的电子产品需求日益增加。DAYLIGHT公司凭借其独特的技术优势和创新能力,成功开发出一系列高性能的电子产品,迅速在市场中立足。

Bogen Communications Inc公司的发展小趣事

随着电子行业的快速发展和变革,Bogen Communications Inc公司面临着巨大的挑战。为了应对这些变革,公司不断调整战略、优化组织结构、提升研发能力。同时,公司还密切关注行业动态和市场需求,及时调整产品方向和市场策略。通过这些努力,公司成功地适应了行业变革,保持了稳健的发展态势。

ET Enterprises Ltd公司的发展小趣事

在竞争激烈的电子行业中,ET Enterprises Ltd公司始终保持对技术创新的重视。公司不断投入研发资源,推动光电倍增管技术的不断进步。同时,公司也注重人才培养和团队建设,为公司的持续发展提供了有力保障。

问答坊 | AI 解惑

求高手帮我分析一下这个电路

请教一下这个电路的U4A是什么类型的电路呢,怎么分析它呢,VSR/VAR是用电阻分压得到的一个稳定电压,在这起什么作用呢,还有他的输出为什么要接一个R24与C3的RC滤波呢,再接到比较器呢? 还有就是U4C是由单片机控制的上半周锯齿波发生器,这个我明 ...…

查看全部问答>

单片机外围器件

本帖最后由 paulhyde 于 2014-9-15 09:36 编辑 单片机外围器件  …

查看全部问答>

我最近想实现s3c2440的USB device,哪位高手有经验,帮帮忙!

我最近想实现s3c2440的USB device,不知道有没有高手实现过,给点帮助,谢谢了,不是在Linux下,不带操作系统的。…

查看全部问答>

汽车电子硬件

学硬件从事汽车电子方面的工作如何,各位给点意见?…

查看全部问答>

我的笔记本Bios密码忘了,哪位大侠帮帮忙??

Bios密码跟登陆密码不是一个,也就是说现在还是能正常使用。但还是挺闹心的,大家帮帮忙想想办法啊! 拿到厂里去的方法就不要说了,这个我也知道,我希望是一个我自己能解决的办法!先谢谢大家了! 我是新手,分不多,大家体谅啊!!…

查看全部问答>

关于NLED Driver

在ce6.0 nleddrvr.dll是如何生成的呢?在$CEROOT\\PUBLIC\\COMMON\\OAK\\DRIVERS\\NLEDDRVR目录生成的是nleddrvr_lib.lib。 SYSGEN_NLED = 1,SOURCE文件中 WINCETARGETFILES=dummy 就生成了?过程是怎样的呢?…

查看全部问答>

如何高效运用嵌入式ARM程序开发?

在多媒体、通信等计算复杂度高的应用中,为了满足制造费用、功耗、性能以及实时性等诸多**条件的要求,嵌入式系统程序往往需要特殊设计。这使得设计师在设计面向特定应用的嵌入式软件时,需要有一套切实可行的编程准则。而在实际程序设计中,工程师 ...…

查看全部问答>

本版主最近请到一位高人,在ST10方面有很深造诣,在此帮助

请各路英雄留下你们的问题,高人会经常过来巡视并解答问题。特此公告,敬请互相转告。谢谢!…

查看全部问答>

DMA用于通信,如何判断前次操作完成

我想用DAM做USRAT1 发送,在发送下一个数据包之前,首先应该判断上一个数据包是否发送完毕。或者一个DMA通道分时复用IIC和USART通信,需要对上次的传输是否完成进行判断。使用了下面的判断语句:while (DMA_GetFlagStatus(DMA1_FLAG ...…

查看全部问答>

quartus 11.0版本的sdram地址宽度

地址宽度21位,是20-0?显示是21-0这个地方有没有问题,以前版本是地址宽度22,才是21~0。 [ 本帖最后由 tianma123 于 2012-4-27 11:20 编辑 ]…

查看全部问答>