略谈MSP43单片机端口

发布者:创意探险最新更新时间:2020-08-31 来源: elecfans关键字:MSP43  单片机  端口 手机看文章 扫描二维码
随时随地手机看文章

MSP430的端口有P1、P2、P3、P4、P5、P6、S和COM(型号不同,包含的端口也不仅相同,如MSP430X11X系列只有P1,P2端口,而MSP430X4XX系列则包含全部上述端口),它们都可以直接用于输入/输出。MSP430系统中没有专门的输入/输出指令,输入/输出操作通过传送指令来实现。端口P1`P6的每一位都可以独立用于输入/输出,即具有位寻址功能。常见的键盘接口可以直接用端口进行模拟,用查询或者中断方式控制。由于MSP430的端口只有数据口,没有状态口或控制口,在实际应用中,如在查询式输入/输出传送时,可以用端口的某一位或者几位来传送状态信息,通过查询对应位的状态来确定外设是否处于“准备好”状态。

略谈 MSP43单片机端口

端口的功能。(1)P1,P2端口: I/O,中断功能,其他片内外设功能如定时器、比较器;(2)P3,P4P5P6端口:I/O,其他片内外设功能如SPIUART模式,A/D转换等;(3)S,COM端口:I/O,驱动液晶。


MSP430各端口具有丰富的控制寄存器供用户实现相应的操作。其中P1,P2具有7个寄存器,P3~P6具有4个寄存器。通过设置寄存器我们可以实现:(1)每个I/O位独立编程;(2)任意组合输入,输出和中断;(3)P1,P2所有8个位全部可以用作外部中断处理;(4)可以使用所以指令对寄存器操作;(5)可以按字节输入、输出,也可按位进行操作。


端口P1,P2的功能可以通过它们的7个控制寄存器来实现。这里,Px代表P1或P2。


(1)PxDIR:输入/输出方向寄存器。 8位相互独立,可以分别定义8个引脚的输入/输出方向。8位再PUC后都被复位。使用输入/输出功能时,应该先定义端口的方向 。作为输入时只能读,作为输出时,可读可写。0:输入模式;1:输出模式。如:P1DIR|=BIT4; //P1.4输出 ,P2DIR=0XF0; //高4位输出,低4位输入。


(2)PXIN:输入寄存器,为只读寄存器。用户不能对它进行写入,只能通过读取其寄存器的内容来知道I/O口的输入信号。所以其引脚的方向要选为输入。如再键盘键盘扫描程序中经常要读取行线或者列线的端口寄存器值来判断案件情况。例如:unsigned char key;

P1DIR&=~BIT4; //P1.4输入

……

key=P1IN&0X10; //输出端口P1.4的值

……

(3)PXOUT:输出寄存器。该寄存器为I/O端口的输出缓冲寄存器,再读取时输出缓存的内容与引脚方向定义无关。改变方向寄存器的内容,输出缓存的内容不受影响。如:PIOUT|=0X01; //P1.0输出1 , PIOUT&=~0X01; //P1.0输出0 。


(4)PXIFG:中断标志寄存器。他的8个标志位标志相应引脚是否有中断请求有待处理。0:无中断请求, 1:有中断请求。其中断标志分别为PXIFG.0~PXIFG.7。应该注意的是:PXIFG.0~PXIFG.7共用一个中断向量,为多源中断。当任一事件引起的中断进行处理时,PXIFG.0~PXIFG.7不会自动复位,必须由软件来判断是对哪一个事件,并将相应的标志复位。另外,外部中断事件的时间必须保持不低于1.5倍的MCLK时间,以保证中断请求被接受,且使相应中断标志位置位。


(5)PXIES:中断触发沿选择寄存器。如果允许PX口的某个引脚中断,还需定义该引脚的中断触发方式。0:上升沿触发使相应标志置位,1:下降沿触发相应标志置位。如:MOV.B #07H, &P1IES ;p1低3位下降沿触发中断。


(6)PXIE:中断使能寄存器。PX口的每一个引脚都有一位用以控制该引脚是否允许中断。0:禁止中断 ,1:允许中断。MOV.B #0E0H, &P2IE ;P2高3位允许中断。


(7)PXSEL:功能选择寄存器。P1,P2两端口还具有其他片内外设功能,将这些功能与芯片外的联系通过复用P1,P2引脚的方式来实现。PXSEL用来选择引脚的I/O端口功能与外围模块功能。0:选择引脚为I/O端口,1:选择引脚为外围模块功能。如:P1SEL|=0X10; //P1.4为外围模块功能。


端口P3、P4、P5、P6没有中断能力,其余功能同PI,P2。除掉端口P1,P2与中断相关的3个寄存器,端口P3,P4,P5,P6的4个寄存器(用法同P1,P2)分别为PXDIR,PXIN,PXOUT,PXSEL可供用户使用。


端口COM和S,他们实现与液芯片的直接接口。COM为液芯片的公共端,S为液芯片的段码端。液芯片输出端也可经软件配置为数字输出端口。

关键字:MSP43  单片机  端口 引用地址:略谈MSP43单片机端口

上一篇:MSP430单片机的多功能复费率三相电能表
下一篇:MSP430单片机的单相正弦波逆变电源设计

推荐阅读最新更新时间:2024-11-06 14:01

轻触式开关电路在AVR单片机中的应用
引 言: 单键开关电路已经广泛应用于PDA、手机和电子词典等数码产品中,其实现方式多种多样。一般可采用RS触发器、计数器以及采用555集成电路等等。在单片机的一些实际应用中,以上的实现方式会增加整个电路的复杂度,不能达到简洁、实用的效果。本文将介绍一种可以在单片机应用中实现的,简易、稳定的轻触式单键开关电路。 1 电路原理 如图1所示,DC-DC为一个带有关断控制端的直流稳压电源芯片,MCU是一个单片机。当按下S1时,Q1和D1导通,稳压芯片工作,为单片机供电。单片机马上将相应的I/O引脚置为输出高,这时Q1和Q2导通,整个电路进入工作状态。而后单片机再将这个I/O引脚设置为输入,由于上拉电阻R4的存在,Q1和Q2一直导通。
[应用]
MCS51单片机程序设计时堆栈的计算方法解析
用C语言进行MCS51系列单片机程序设计是单片机开发和应用的必然趋势。Keil公司的C51编译器支持经典8051和8051派生产品的版本,通称为Cx51。应该说,Cx51是C语言在MCS51单片机上的扩展,既有C语言的共性,又有它自己的特点。本文介绍的是Cx51程序设计时堆栈的计算方法。 1.堆栈的溢出问题。MCS51系列单片机将堆栈设置在片内RAM中,由于片内RAM资源有限,堆栈区的范围也是有限的。堆栈区留得太大,会减少其他数据的存放空间,留得太少则很容易溢出。所谓堆栈溢出,是指在堆栈区已经满了的时候还要进行新的压栈操作,这时只好将压栈的内容存放到非堆栈区的特殊功能寄存器(SFR)中或者堆栈外的数据区中。特殊功能寄存器的内容
[单片机]
MCS51<font color='red'>单片机</font>程序设计时堆栈的计算方法解析
单片机串口编程的优劣
这些日子做项目,在串口上耽误了不少时间,原来一直使用中断接收和查询发送,程序代码合起来时,程序竟然死在串口发送上,程序在那里等待,过不去,一直在做这个事情,今天总结一个专题,和大家分享。 51单片机的串口,是个全双工的串口,发送数据的同时,还可以接收数据。当串行发送完毕后,将在标志位 TI 置 1,同样,当收到了数据后,也会在 RI 置 1。无论 RI 或 TI 出现了 1,只要串口中断处于开放状态,单片机都会进入串口中断处理程序。 在中断程序中,要区分出来究竟是发送引起的中断,还是接收引起的中断,然后分别进行处理。看到过一些书籍和文章,在串口收、发数据的处理方法上,很多人都有不妥之处。 接收数据时,基本上都是使用“中断
[单片机]
STM32单片机-PWM波形输出
一、引脚映像与寄存器 1、定时器引脚复用功能映像 ----------------------------------------------------------- 2、定时器 1)定时器介绍 STM32中一共有11个定时器,其中TIM6、TIM7是基本定时器;TIM2、TIM3、TIM4、TIM5是通用定时器;TIM1和TIM8是高级定时器,以及2个看门狗定时器和1个系统嘀嗒定时器SysTick。 其中TIM1和TIM8能够产生3对WM互补输出,常用于三相电机的驱动,时钟由APB2的输出产生; TIM2~TIM5是普通定时器,TIM6和TIM7是基本定时器,其时钟由APB1输出产生。
[单片机]
STM32<font color='red'>单片机</font>-PWM波形输出
内嵌UHF ASK/FSK发射器的8位微控制器
摘要:8位CMOS微控制器rfPIC12C509AF具有TISC中央处理器、1024%26;#215;12bit可编程EPROM、41字节数据RAM、8位可编程定时/计数器、看门狗定时器、5个通用I/O等电路,内嵌UHF ASK/FSK发射器的射频频率范围为310~480MHz,输出功率+2~-12dBm,ASK数据发射速率0~40Kbps,FSK数据发射速率0~20Kbps,PLL锁相。本文简要介绍rfPIC12C509AF的特性及应用电路。 关键词:微控制器 无线发射器 无线数据传输 1 概述 tfPIC12C509AF是Microchip公司推出的单片集成内嵌射频无线数据发射器的8位CMOS微控制器。芯片具有高性能的R
[应用]
如何迈入单片机开发世界
  学习单片机看书不够,实践也要从实际出发,现在的技术太模块了,什么都可以模块,模块的到最后,技术人员都成了只会用了,祖先的留下的知识,基础的知识该知道还是一定要知道的啊。 毕竟学习单片机的最终目的是开发,是通过创造智能控制的实物,体现自己的价值。关于实践有两种方法可以选择一种方法:购买一块51单片机的实验板,不要求功能太的,对于初学者来功能非常多的那种板子,上面有很多东西你这辈子都用不着,更有实验板为了增加功能,降低成本,实验板上到处用的是贴片元件,双面布线,越复杂就越有水平,好像他们在设计的时候就想着,学习单片机只要根据我的提示下载程序就可以了,更有甚者将下载器和集成了实验板上。很多初学者学完单片机还认为,原来单片机不是一块芯
[单片机]
STM8 单片机调试笔记
1、休眠唤醒后串口异常问题 STM8L主要用来做低功耗产品,这里就有休眠前跟唤醒后有差异的情况,在调试的时候碰到如果使用串口,在休眠前都正常,当唤醒后,串口发送的数据会出现异常的情况,发送的数据感觉会有丢帧。后来发现跟系统时钟有关,如果系统时钟采用外部时钟就会有问题,内部时钟就OK。 /* 这里要用内部时钟 用外部时钟在进入halt之后会出现 串口发送异常 */ CLK_HSICmd(ENABLE); while (CLK_GetFlagStatus(CLK_FLAG_HSIRDY) == RESET); CLK_SYSCLKSourceConfig(CLK_SYSCLKSource_HSI); CLK_SYSCLKDi
[单片机]
基于PWM功能的AVR单片机定时-计数器设计
  一、定时/计数器 PWM 设计要点   根据PWM((脉宽调制(PWM:(Pulse Width ModulaTION)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的模式))的特点,在使用ATmega128的定时/计数器设计输出PWM时应注意以下几点:   1.首先应根据实际的情况,确定需要输出的PWM频率范围,这个频率与控制的对象有关。如输出PWM波用于控制灯的 亮度 ,由于人眼不能分辨42Hz以上的频率,所以PWM的频率应高于42Hz,否则人眼会察觉到灯的闪烁。   2.快速PWM可以的到比较高频率的PWM输出,但占空比的调节精度稍微差一些。此时计数器仅工作在单程正向计数方式,计数器的上限值决定PWM的
[电源管理]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved