MSP430 PIN 操作寄存器
1、P口端口寄存器:
(1)、PxDIR 输入/输出方向寄存器
(0:输入模式 1:输出模式)
(2)、PxIN 输入寄存器
输入寄存器是只读寄存器,用户不能对其写入,只能通过读取该寄存器的内容知道I/O口的输入信号。
(3)、PxOUT 输出寄存器
寄存器内的内容不会受引脚方向改变的影响。
(4)、PxIFG 中断标志寄存器
(0:没有中断请求 1:有中断请求)
该寄存器有8个标志位,对应相应的引脚是否有待处理的中断请求;
这8个中断标志共用一个中断向量,中断标志不会自动复位,必须软件复位;
外部中断事件的时间必须>=1.5倍的MCLK的时间,以保证中断请求被接受;
(5)、PxIES 中断触发沿选择寄存器
(0:上升沿中断 1:下降沿中断)
(6)、PxSEL 功能选择寄存器
(0:选择引脚为I/O端口 1:选择引脚为外围模块功能)
(7)、PxREN 上拉/下拉电阻使能寄存器
(0:禁止 1:使能)
(1)、所有P口都可作为通用IO口使用
(2)、所有P口都可进行字节操作和位操作
按字节操作:
例 : P1DIR=0xff; //将P1口作为输出口
PIOUT=0x20; // P1口输出0x20
P1DIR=0x00; //将P1口作为输入口
data=P1IN //读取P1口外部输入值
按位操作:
例: P1DIR=BIT0; //将P1.0作为输出口
P1OUT|=BIT0; //P1.0输出1
P1OUT&=~BIT0; //P1.0输出0
P1DIR&=~BIT0 //将P1.0口作为输入
data=P1IN&BIT0 //读取P1.0口外部输入值
MSP430 PIN 操作寄存器的更多相关文章
- STM32-NVIC中断管理实现[直接操作寄存器]
源:stm32 NVIC中断管理实现[直接操作寄存器] cortex-m3支持256个中端,其中包含了16个内核中断,240个外部中断.stm32只有84个中断,包括16个内核中断和68个可屏 ...
- stm32 DMA数据搬运 [操作寄存器+库函数](转)
源:stm32 DMA数据搬运 [操作寄存器+库函数] DMA(Direct Memory Access)常译为“存储器直接存取”.早在Intel的8086平台上就有了DMA应用了. ...
- STM32与STM8操作寄存器的区别
在STM8中,由于STM8寄存器较少,在头文件中定义寄存器的时候不用采取任何形式的封装,所以操作寄存器的时候直接可以用如下方式处理:PB_DDR |=0x20; 但是在STM32中,由于其寄存器实在太 ...
- STM32中操作寄存器GPIOB_CRL &= ~( 0x0F<< (4*0))与GPIOB_CRL &=~(0x0F)之间有什么区别吗?
没有区别,作用相同.只是这样写便于修改和沿用. 对于只用到PB0端口的程序~(0x0f << (4*0)) 和~0x0f没有区别.0x0f <<(4*N) 就是 向左 移动N个 ...
- linux下操作gpio寄存器的方法
一. 在驱动中: 1. 用的时候映射端口:ioremap; #define GPIO_OFT(x) ((x) - 0x56000000) #define GPFCON (*(volatile unsi ...
- vim的寄存器和剪贴簿操作?
vim 复制/ 删除 多行? 有确定序号的行: :10,15m20, 10,15co20 没有确定序号的行: ndd, nyy. 其中的n表示, 从当前行开始算起(当前行本身要包含!!!), 向下共删 ...
- STM32 下的库函数和寄存器操作比较
以 led闪烁中的flashLed函数例子: 库函数操作简单,但是效率不如寄存器操作的高: 寄存器操作很复杂,因为要熟悉上百个寄存器,但是程序效率很高 /**下面是通过直接操作库函数的方式实现IO控制 ...
- STM32---初学者用库函数好还是直接对寄存器操作比较好
引用:http://blog.csdn.net/u010349006/article/details/416 首先,两个都是C语言.从51过渡过来的话,就先说寄存器操作.每个MCU都有自己的寄存器,5 ...
- [MSP430]入门之中的一个 总体认识
这是由TI公司推出的一款比較单片机, 相对stm32来说简单些, 由于它是16位的, 所以我们在学习中可能也会像51一样, 直接操纵寄存器. TI设计这款单片机的初衷是, 让它用于低功耗的嵌入式设 ...
随机推荐
- 02网页<body></body>常用标记及属性
网页<body></body>常用标记及属性 <body></body>标记表示的是在整个浏览器内容框架中显示的部分. text属性用于控制HTML文档 ...
- jenkins部署遇到离线问题如何解决
部署jenkins页面时遇到离线问题如何解决 部署jenkins遇到一个问题,然后告诉我你的jenkins已经离线,什么鬼,后来找了很多博客 后来自己终于验证成功了,也分享给大家,只需把https改为 ...
- [转载] Linux Futex的设计与实现
Linux Futex的设计与实现 引子 在编译2.6内核的时候,你会在编译选项中看到[*] Enable futex support这一项,上网查,有的资料会告诉你"不选这个内核不一定能正 ...
- 09js、MySQL相关
09js.MySQL相关-2018/07/19 1.js的dom 理解一下文档对象模型:html文件加载到内存之后会形成一颗dom树,根据这些节点对象可以进行脚本代码的动态修改;在dom树当中 一切皆 ...
- UVA - 208 Firetruck(并查集+dfs)
题目: 给出一个结点d和一个无向图中所有的边,按字典序输出这个无向图中所有从1到d的路径. 思路: 1.看到紫书上的提示,如果不预先判断结点1是否能直接到达结点d,上来就直接dfs搜索的话会超时,于是 ...
- session对象的使用
session对象的使用 制作人:全心全意 session在网络中被称为会话.由于HTTP协议是一种无状态协议,也就是当一个客户向服务器发出请求,服务器接收请求,并返回响应后,该连接就结束了,而服务器 ...
- 解决window 10 安装软件2503 2502错误
1.首先打开任务管理器,可以通过右键点击桌面上的任务栏打开任务管理器,也可以通过同时按下键盘上的Ctrl+Alt+Delete键打开任务管理器. 2.打开任务管理器后,切换到“详细信息”选项卡,找到e ...
- BC in fluent
Boundary conditions in Fluent Table of Contents 1. Boundary Conditions (BC) 1.1. Turbulence Paramete ...
- [K/3Cloud]关于K/3 Cloud v2.0升级补丁的疑问
现在除了K/3 Cloud v2.0的正式版之外,后续又发布了SP1和SP2补丁包.改善了一些问题和BUG,有些人之前可能之前装了SP1,有的可能没装过.在这里我说明一下: 不管装没装过补丁直接打SP ...
- JSOI建筑抢修 (贪心+堆)
先按照T2从小到大排序,然后进行贪心. 第i个任务能完成的条件是,sigma(T1[j])+T1[i]<=T2[i] ( j 为之前所选的任务) 如果这个任务不能完成,若max(T1[j]) & ...