历史上的今天
返回首页

历史上的今天

今天是:2025年02月13日(星期四)

正在发生

2020年02月13日 | MSP430F1612 第一个程序,点亮一个LED灯

2020-02-13 来源:eefocus

I/O操作

MSP430有6组IO端口,其中P1和P2具有中断功能,其他端口不具备中断功能。而点亮一个LED灯只需要控制一个引脚的高低电平即可。这里不需要用到中断功能。那在这里,我们编码涉及的寄存器只有4个,分别是PxIN、PxOUT、PxDIR和PxSEL。而且MSP430F1612的IO功能并不需要配置时钟,所以整个程序只需要配置4个IO端口的寄存器和看门狗寄存器。

对4个寄存器的描述分别如下:

PxSEL寄存器中的每一个位用于选择该引脚是使用外设功能还是GPIO功能.


Bit = 0:选择IO功能;Bit = 1:选择外设功能


例如:


P4SEL |= 0x0080;    //P4.7选择外设功能,0000 00001000 0000(b) P4.0~P4.7对应1~8bit

PxIN寄存器反应了该端口选择IO功能(PxSELx = 0)时每一个位的输入状态:

Bit = 0:输入的是低电平;   Bit = 1:输入的是高电平


PxIN是只读存储器,通过读取这些寄存器可以获得对应引脚的状态。

PxOUT寄存器中的值是配置为IO功能时引脚的输出状态。


Bit = 0:输出低电平; Bit= 1:输出高电平


例如:


P4OUT |= 0x0080;    //P4.7引脚输出高电平

在使用PxIN和PxOUT时,我们要注意一下,IO口的方向配置,只有当IO配置为输入时PxIN才有效,当IO口配置为输出时PxOUT才有效。这里使用PxDIR对IO口的输入输出方向进行配置。


Bit = 0:IO口被配置成为输入; Bit = 1:IO口被配置成为输出。


例如:


P4DIR |= 0x0080;      //P4.7被配置成为输出引脚


LED引脚相关电路

当P4.7输出低电平时,LED灯亮。


程序代码


通过上面的讲解,料定大家都知道了IO口的输入输出配置是怎样的了,下面写个程序来小试牛刀:


#include

 

int main( void )

{

  //Stop watchdog timer to prevent time out reset

 WDTCTL = WDTPW + WDTHOLD;

 

 P4SEL &= ~0x0080;    //P4.7 select IO funciton

 P4DIR |= 0x0080;     //P4.7 set as output

 P4OUT &= ~0x0080;    //P4.7 output low level

 

 while(1)

  {

   

  }

}


运行结果

灯亮了

推荐阅读

史海拾趣

GTK UK Ltd公司的发展小趣事
望远镜在跟踪过程中可能受到机械振动的影响,影响跟踪精度。
CTS [CTS Corporation]公司的发展小趣事

面对日益激烈的市场竞争和不断变化的客户需求,CTS始终坚持技术创新和数字化转型。公司投入大量资源进行研发,不断推出具有竞争力的新产品和解决方案。同时,CTS还积极拥抱数字化技术,通过云计算、大数据和人工智能等技术手段提升生产效率和服务质量。

Highland Electronics Co Ltd公司的发展小趣事

在公司快速发展的过程中,High Tech Chips Inc深刻认识到单打独斗的局限性。因此,公司积极寻求与全球知名科技企业的战略合作。通过与华为、三星等手机制造商的合作,High Tech Chips Inc的芯片产品被广泛应用于这些企业的旗舰机型中,极大地提升了产品的知名度和市场占有率。同时,公司还与英伟达、英特尔等芯片巨头建立了技术合作关系,共同推动芯片技术的创新和发展。

汇顶科技(GOODiX)公司的发展小趣事

High Tech Chips Inc深知人才是企业发展的核心竞争力。因此,公司一直将人才战略放在企业发展的重要位置。公司不仅吸引了大量来自国内外顶尖高校的优秀人才加盟,还建立了完善的人才培养体系和激励机制。通过举办技术交流会、设立创新基金等方式激发员工的创新潜能和工作热情。这些举措为公司的发展奠定了坚实的人才基础和技术储备。

捷茂微(GATEMODE)公司的发展小趣事

在公司快速发展的过程中,High Tech Chips Inc深刻认识到单打独斗的局限性。因此,公司积极寻求与全球知名科技企业的战略合作。通过与华为、三星等手机制造商的合作,High Tech Chips Inc的芯片产品被广泛应用于这些企业的旗舰机型中,极大地提升了产品的知名度和市场占有率。同时,公司还与英伟达、英特尔等芯片巨头建立了技术合作关系,共同推动芯片技术的创新和发展。

Accelink Technologies Co Ltd公司的发展小趣事

High Tech Chips Inc成立之初,便专注于研发高性能的AI芯片。在公司创始人李博士的带领下,团队突破了传统芯片设计的瓶颈,开发出了一款具有超低功耗和高效能比的AI加速器芯片。这款芯片迅速获得了市场的认可,被广泛应用于智能手机、智能家居和自动驾驶等领域。随着技术的不断迭代和产品的持续优化,High Tech Chips Inc逐渐在AI芯片市场占据了一席之地,并成为了行业内的技术领先者。

问答坊 | AI 解惑

求助:关于电感磁芯

    我们做一款小功率的电源类产品,内部涉及到一个电感,我们目前是用铁粉芯材料的磁环,可是发热比较严重,我们考虑能否用一个高频特性好磁芯来替换一下。     其工作频率约300KHz、电感量约10uH、导线过电流能力10A左右, ...…

查看全部问答>

300的问题

101:我如何做到对自己的程序块进行加密保护? 您能够通过STEP7软件的KNOW_HOW_PROTECT功能实现对您程序代码的加密保护。 如果您双击鼠标打开经过加密的程序块时,您只能看到该程序块的接口数据(即IN, OUT 和 IN/OUT 等类型的参数)和注释信息, ...…

查看全部问答>

指纹识别技术在高校开放实验室中的应用

【摘要】结合学校管理的实际情况,设计了一个以校园网为基础、以指纹识别仪为载体、以指纹识别技术为身份认证手段的校园开放实验室系统。本文详细介绍了该系统的理论基础,关键技术及实施方案,并分析了该系统的优点。…

查看全部问答>

初学驱动编程 问几个入门问题

第一个  我现在生成了.sys #include VOID DriverUnload(PDRIVER_OBJECT driver) { DbgPrint(\"HelloEping\\r\\n\"); } NTSTATUS DriverEntry(PDRIVER_OBJECT driver,PUNICODE_STRING reg_path) { DbgPrint(\"Hello,Eping!\"); ...…

查看全部问答>

有谁帮帮我??

例如:200608290000009700 年月日00000097序列号 读这个测量值程序: private unsafe void getdeviceid()                 {                     ...…

查看全部问答>

msp430的一个矩阵键盘 困惑

#include typedef unsigned char uchar; typedef unsigned int  uint; uchar NUM_LED[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,                      ...…

查看全部问答>

XL2596和LM2596的区别,哪个IC更加实用,性价比谁高?

XL2596和LM2596的区别,哪个IC更加实用,性价比谁高?…

查看全部问答>

2011年大学生电子竞赛--需要准备的细节东西

本帖最后由 paulhyde 于 2014-9-15 09:24 编辑 打电赛,这实力当然是主要因素。发本贴意在提醒大家,很多细节的东西不能忘记,细节可能影响你的成败,别到吃亏的时候再认命~~准备工作: 1、先打定自己要做的题目类型,心里上准备好打硬仗,把知 ...…

查看全部问答>

求教ZigBee树状拓扑

为什么在树状拓扑中,一个节点的信标时间只需避开父节点的父节点的信标时间和父节点的信标时间就可以,不用避开相邻节点的信标时间?如果此节点的信标时间和相邻节点的信标时间冲突,并且此节点的一个子节点也能收到这个和其冲突的相邻节点的信标, ...…

查看全部问答>