一、IO口
数字输入/输出端口有下列特性:□ 每个输入/输出位都可以独立编程。□ 允许任意组合输入、输出。□ P1 和 P2 所有 8 个位都可以分别设置为中断。□ 可以独立操作输入和输出数据寄存器。□ 可以分别设置上拉或下拉电阻。
在介绍这四个I/O口时提到了一个“上拉电阻”那么上拉电阻又是一个什么东东呢?他起什么作用呢?都说了是电阻那当然就是一个电阻啦,当作为输入时,上拉电阻将其电位拉高,若输入为低电平则可提供电流源;所以如果P0口如果作为输入时,处在高阻抗状态,只有外接一个上拉电阻才能有效。
(以下x为1表示P1,为2表示P2,如此类推)
1.选择引脚功能 -- PxSEL,PxSEL2
PxSEL2 PxSEL 管脚功能0 0 用作IO口0 1 用作第一功能引脚1 0 保留,参考具体型号的手册1 1 用作第二功能引脚
设置引脚用作外设功能时,芯片不会自动设置该引脚输入输出方向,要根据该功能,用户自己设置方向寄存器
PxDIR。
2.选择引脚输入/输出方向 -- PxDIR
Bit = 0: 输入Bit = 1: 输出
3.选择引脚是否使能上下拉电阻 -- PxREN
Bit = 0: 不使能Bit = 1: 使能
4.输出寄存器 -- PxOUT
Bit = 0: 输出低电平或者下拉Bit = 1: 输出高电平或者上拉
5.管脚状态寄存器 -- PxIN
Bit = 0: 管脚当前为低Bit = 1: 管脚当前为高
二、举例
void LED_IO_set(void)
{
P2SEL=0;
P2DIR = 0x0f; // P2端口设置为输出
P2OUT=0x0e;//给初始化值
}
解析:
1、作为普通的IO口使用
2、P2.0~p2.3设置为输出,P2.4~p2.7设置为输入;
3、P2.0输出低电平;
关键字:msp430f149 IO口 初始化
引用地址:
msp430f149学习之IO口的初始化
推荐阅读最新更新时间:2024-03-16 15:42
STM32学习笔记(三)------GPIO口寄存器的操作与使用
1、STM32 的每个 IO 端口都有 7 个寄存器来控制 (1)配置模式的 2 个 32 位的端口 配置寄存器 CRL 和 CRH (2)2 个 32 位的数据寄存器 IDR 和 ODR (3)1 个 32 位的置位/复位寄存器 BSRR (4)一个 16 位的复位寄存器 BRR (5)1 个 32 位的锁存寄存器 LCKR。 2、每个GPIO端口有两个32位配置寄存器(GPIOx_CRL,GPIOx_CRH)分别控制每个端口的高八位和低八位,如果IO口是0-7号的话,则写CRL寄存器,如果IO口是8-15号的话,则写CRH寄存器,两个32位数据寄存器(GPIOx_IDR,GPIOx_ODR)一个是只读作输入数据寄存器,一个
[单片机]
通过按键控制IO口操作
今天对单片机按键有了一定的认识,单片机分为独立式键盘和矩阵式键盘,独立式占用IO口资源比较大,适合按键少的控制操作,其优点是设计编程一目了然,比较简单,矩阵式占用IO口比较少,适合对按键要求比较高而IO口资源比较宝贵的操作,这两者各有其优点和缺点,以后应用时要根据需要进行设计,特别是矩阵式的要利用行线,和列线的高低电平检测和处理数据信息的原理要记住。 下面把今天学的一个简单的通过按键控制IO口LED灯工作的程序写一下,呵呵,可以加深我对按键操作(ELSE语句)的理解。 #include reg52.h #define uint unsigned int #define uchar unsigned char sbit
[单片机]
stm32 GPIO简单介绍及初始化配置(库函数)
前言: 相信,大部分查找GPIO的人,都是刚刚接触STM32的人,而刚接触STM32的人,大部分是从51上来的人,所以我会由浅入深,从51和STM32的区别入手,通过对比这两个处理器的配置方法,来跟大家慢慢讲解(学知识可不能急于求成)。博主以stm32f1为主控芯片,以下均简称为stm32。 首先,上一张我的理解图(画不好。。。但能看),给个形象的概念 一、讲图之前,先给大家一个stm32的概念:“时钟概念” 1. STM32的时钟是什么? stm32的时钟是由内部或外部振荡器产生的“频率”,而被人们形象的称为“系统时钟”。最大为72MHz换成周期T为:1/72MHz≈13.9ns 2. 为什么要用时钟? 因为耗电量,s
[单片机]
常用的51单片机程序
51程序集 ;片内RAM初始化子程序 IBCLR:MOVA,R0 MOVR1,A CLRA IBC1:MOV@R1,A INCR1 DJNZR7,IBC1 RET ;片外RAM初始化子程序 EBCLR1:MOVA,ADDPL MOVDPL,A MOVA,ADDPH MOVDPH,A CLRC EBC11:MOVX@DPTR,A INCDPTR DJNZR7,EBC11 RET ;片外RAM初始化子程序(双字节个单元) EBCLR2:MOVA,ADDPL MOVDPL,A MOVA,ADDPH MOVDPH,A MOVA,R7 JZEBC21 INCR6 EBC21:CLRA MOVX@DPTR,A INCD
[单片机]
详解基于STM32的KEIL4 MDK软件仿真输出IO口的波形图
这是一个STM32的PA6和PA7口输出PWM波形的仿真步骤,其它情况类似 每一步我都做了截图,大家照着一步步来,有些参数根据自己的情况稍微改下就好,肯定可以出波形的!请大家放心参考
[单片机]
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
[单片机]
ARM Cortex M3系列GPIO口介绍(工作方式探讨)
一、Cortex M3的GPIO口特性 在介绍GPIO口功能前,有必要先说明一下M3的结构框图,这样能够更好理解总线结构和GPIO所处的位置。 Cortex M3结构框图 从图中可以看出,GPIO口都是接在APB总线上的,而且M3具有两个AHB到APB桥,GPIO则直接接在AHB矩阵上,这样可以减少CPU和DMA控制器之间的竞争冲入,获得较高性能。APB总线桥配置为写缓冲区,使得CPU或DMA控制器可直接操作APB外设,而无需等待总线写操作完成。 M3数字I/O功能: 高速GPIO口,其寄存器被移到外设AHB总线,可以字节,半字和字寻址。 位电平置位和清零寄存器允许单指令置位和清零一个端口的任意位。 所有GPIO口寄
[单片机]
应用MSP430F149单片机的超低频波形发生器
摘要: 介绍了应用MSP430F149芯片开发超低频波形发生器的设计原理及其在生理滤波器调试中的应用。
关键词: MSP430F149芯片 单片机 波形发生器 滤波系统
在载人运输系统振动分析仪中常用超低频波形发生器作为仿真的信号源。要求在0.1Hz~100Hz范围内稳定工作,波形失真小,且能以0.1Hz为步长细调。传统超低频波形发生器设计中存在着很多的不足:(1)应用通用电路,元器件多,尤其是电容的体积大,且波形的稳定性差、失真大,调节上极不方便;(2)应用专用电路,如ICL8038、MAX038,其失真和稳定性方面有明显提高,但在超低频应用上仍不合适。而且电路调节器件多,对电源的要求较高,代
[测试测量]