1 概述
MSP430F149共有6组IO口,每组8bit, IO口的设置包括设置IO功能、方向、输入输出寄存器初值。对IO口不做设置,默认情况下为第一功能,输入模式。
2 常用寄存器
PxDIR 0 输入,1 输出;
PxSEL 0 I/O口,1 第二功能;
PxOUT,PxIN;
PxIES 设置中断触发方式 0上升沿,1下降沿;
PxIE 设置中断触发允许0禁止,1允许;
PxIFG 中断标志寄存器,需要软件清零。
3 用法
IO口中断:
P1,P2口总共有16个IO口均能引发中断,相关寄存器为PXIE(中断允许):0不允许,1允许。PXIES(中断触发岩选择)0上升沿、1下降沿。PXIFG(中断标志寄存器),I0口满足中断时相应位置一,只能通过软件清零。P1和P2分别公用两个中断入口PORT1_VECTOR,PORT2_VECTOR。注意IO口中断模式输入仍为第一功能,PXSEL=0。
关键字:MSP430F149 IO口 输入模式
引用地址:
MSP430F149的IO口
推荐阅读最新更新时间:2024-11-13 11:07
基于MSP430F149单片机的目标指示器设计
针对目前我军侦察分队和射击指挥分队野外训练时,各种目标设置、显示费时费力、安全隐患大等诸多问题,本文提出基于 MSP 430F149 单片机 设计目标指示器,以满足部队野外训练时快速设置目标,并能根据不同的战术需要灵活显示目标和根据不同的射击法则显示炸点等,较好地解决部队野外训练的急需。 目标指示器的功能 根据需要,目标指示器以灯光、烟火等方式显示目标或炸点。每个指示器可以模拟显示如机枪火力点、坦克火力点、炮阵地等n类性质的目标,同时带有m个炸点显示器。目标指示器主要完成GPS模块的数据采集、执行灯光显示和烟火显示等任务。 目标指示器硬件设计 硬件设计方案 目标指示器的设计是以单片机为核心的,集灯光显示
[单片机]
STC单片机之我见一IO口
本文以STC12C5A60S2系列单片机为例来介绍: 先介绍准双向口模式,其拉电流为200mA左右,比如P2.0口外接一个100欧电阻和小led灯珠。做实验的时候会发现灯珠的亮度其实很低,因为电流太小。当设置成强推挽输出时会发现灯珠明显比较亮,因为此时的电流已经达到了20mA. P2.0口直接用准双向口模式驱动蜂鸣器的时候,蜂鸣器不响,同样是因为电流太小,此时可以外加一个10K的电阻和一个三极管来驱动之;P2.0用强推挽模式时可直接驱动蜂鸣器响。 小贴士: 1.同时对8个IO口进行设置时,可用P2=0xFF的形式来赋值,也可以单独P2.0=0
[单片机]
stm32 pc13~pc15 配置成IO口
在STM32的数据手册的管脚分配图中可以看到:PC14与OSC32_IN公用一个引脚,PC15与OSC32_OUT公用一个引脚,它们的使用方法如下: 当LSE(低速外部时钟信号)开启时,这两个公用管脚的功能是OSC32_IN和OSC32_OUT。 当LSE(低速外部时钟信号)关闭时这两个公用管脚的功能是PC14和PC15。 备用区域控制寄存器(RCC_BDCR)的LSEON用于控制LSE的开启或关闭。关于这个寄存器的用法请参看《STM3210x技术参考手册》。 文档下面有一段话: PC13,PC14和PC15引脚通过电源开关进行供电,因此这三个引脚作为输出引脚时
[单片机]
PIC16f1937 IO口配置
配置pic161937为数字输入的时候,首先要初使化ANSELx ,否则读为0. // Register: ANSELA volatile unsigned char ANSELA @ 0x18C; // bit and bitfield definitions volatile bit ANSA0 @ ((unsigned)&ANSELA*8)+0; volatile bit ANSA1 @ ((unsigned)&ANSELA*8)+1; volatile bit ANSA2 @ ((unsigned)&ANSELA*8)+2; volatile bit
[单片机]
STM8S 与 STM32F IO口输出速率测试
今天查看STM32资料时,对输出速度2M 10M 50M不是很了解,再加上移植ARF2496K程序到STM32时出现意外情况。 一、STM8S端作为接收端和发送端时接收到的数据都正常。 二、发送端(STM8S),接收端(STM32)这时也正常。 三、发送端(STM32),接收端(STM8)时,接收到的就是错误数据,数据每次都相同,但是是错的。 于是,便考虑是不是STM32 I/O输出速度太快导致的,今天便拿示波器测试,果然,豁然开朗。 网上很多全他妈瞎说,STM32的I/O输出配置成2MHz 10MHz 50MHz根本就不是所谓的输出速度,仅仅是翻转速度。 测试示波器为 RIGOL DS1062CA,探头为10X,通道二进
[单片机]
AVRmega16通过一个定时器实现多路IO口输出多路可调的PWM
本人在做舞蹈机器人时,想到了通过一个定时器实现多路IO口输出多路可调的PWM,用于控制舞蹈机器人各部分的舵机。这个方法比较简洁而且实现自己的要求,且易于理解。 /*角度值:15度500us(10)——215度2500us(50) 端口A0——A5 B0——B5 C0——C5 */ #include iom16v.h #include macros.h #define uint unsigned int #define uchar unsigned char #define dt 70 #define sp 18 #pragma interrupt_handler timer0:10 #pragma interru
[单片机]
STM32 GPIO口的使用
实验平台清单如下: 开发板: 战舰 STM32ZET6 V3.4 核心芯片: STM32F103RCT6 开发环境: MDK-ARM Version:5.10 PC操作系统: Windows 7 旗舰版 仿真器: ST-Link 打开MDK开发平台,在菜单栏中单击“Project - New μVision Project”创建一个新的工程。然后在弹出的“Select Device for Target 1”对话框中选择合适的芯片。由于我采用的是STM32F103ZET6,所以选择ST – STM32F103ZE。 选择好芯片之后,会弹出一个消息框,“Copy STM32 Startup
[单片机]
STM32F407 GPIO口输出配置配置步骤
STM32F407ZGT6 是意法半导体(STMicroelectronics)公司推出的一款高性能ARM Cortex-M4核心的32位微控制器(MCU)。它是 STM32F4 系列的一员,具备强大的处理能力和丰富的外设功能,适用于各种应用领域。 【1】F407建工程所需依赖文件 【2】 新建工程 **说明:STM32F4 的主频最高是 168Mhz,所以我们一般设置 PLLCLK 为 168Mhz(M=8,N=336,P=2),通过 SW 选择 SYSCLK=PLLCLK即可得到 168Mhz 的系统运行频率。** 【3】分析LED硬件原理图 【4】编写L
[单片机]