历史上的今天

今天是:2024年08月31日(星期六)

2020年08月31日 | 略谈MSP43单片机端口

发布者:创意探险 来源: 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单片机的单相正弦波逆变电源设计

推荐阅读

根据赛迪智库的最新报告,预计到2020年,中国物联网市场规模将达2万亿元。在如此庞大的市场需求下,继实现“联”之后的下一步将是“物”的设计,大多数电子系统的设计将由于物联网的趋势而发生极大的改变,主要反映在终端产品的存储、传感器、嵌入式处理器、连接、电源管理等关键通用模块的创新上。IoT应用的范畴跨度广泛,如何在其中实现创新,作为业内领...
2019年8月18日,《中共中央国务院关于支持深圳建设中国特色社会主义先行示范区的意见》(以下简称《意见》)正式发布。《意见》指出,支持深圳建设5G、人工智能、生命信息与生物医药实验室等重大创新载体,探索建设国际科技信息中心和全新机制的医学科学院。此外,还将加快构建现代产业体系。未来几年将是中国智慧医疗建设飞速发展的时期,在新医改方案的...
外媒 91mobiles 从爆料人 Ishan Agarwal 处获悉,小米将很快在国内推出小米电视音箱家庭影院版。除此之外,小米还将很快在中国推出 Redmi 9A 的新内存和存储版本。  Agarwal 表示,小米电视音箱家庭影院版是一款全新的产品,将在中国首次亮相,除此之外目前关于该音箱的消息还不是很多。  至于 Redmi 9A,小米计划在中国推出 4GB...
搭建i.mx6ul的开发环境,使用环境ubuntu14.04,硬件平台:米尔MYB-6ULX参考米尔的MYS-6ULX-LinuxDevelopmentGuide1.安装软件包 sudo apt-get install build-essential git-core libncurses5-dev flex bison texinfo zip unzip zlib1g-dev gettext u-boot-tools g++ xz-utils mtd-utils gawk diffstat gcc-multilib python gi...

史海拾趣

问答坊 | AI 解惑

求助MEP-100A通用编程器问题

我有一台新MEP-100A通用编程器,一直没用。最近连接上PC,打开软件总提示没连接上MEP-100A。软件是DOS版的。我用WIN98、WIN2000、WINXP,在三台PC上都试过,情况一样。PC串口用串口鼠标试过,正常。两种串口线,一种直连、一种5-5   2-3& ...…

查看全部问答∨

厦华等离子自检方法

1.PS42D8/PS42D810CZV2)屏自检方法 ①.将电源板的CN802的插座从左起的第3/第4脚连接起来;5 \\1 ?3 C9 x2 `( x ②.将厦华的制造的电路板部件全部拆掉;! W& R! ?+ _8 |# s8 m, v$ {5 @! u# _ ③.将三星公司的逻辑电路板上的SW2001的开关拨成1. ...…

查看全部问答∨

怎么我不来,其他人也不发言了?

这两天因为有事,没来这里发言,结果发现也没其他人发言了。       以前从来没有觉得自己这么重要,也不 知真的是自己重要还是巧合?      我正在酝酿写一个小系列,这两天实在太忙了,我会尽快打出第一 ...…

查看全部问答∨

FPGA设计真的需要synplify来做综合吗

最近做的一个设计 如果用quartusII直接综合、布线,资源占用率在70%左右, 速度最快可以到130MHz左右; 但是如果用synplify综合,QII布线,资源占用大约上升10%, 速度降了20多M! 感觉在synplify里该设的优化条件都设置了,扇出10-50都试过, ...…

查看全部问答∨

检测电源剩余量

我现在想检测我终端设备的电池剩余量并将它显示出来,我用的是WinCE的操作系统,我的程序如下:   SYSTEM_POWER_STATUS_EX spse;   GetSystemPowerStatusEx(&spse, TRUE);   CString power = spse.BackupBatter ...…

查看全部问答∨

销售收入突破10亿元公司高薪诚聘以下职位

销售收入突破10亿元公司高薪诚聘以下职位 VC工程师 待遇在8k 精通VC++ ,熟悉SQLServer数据库和基于socket网络编程;有数控系统人机界面开发经验者优先考虑。 硬件开发工程师  待遇在8k 岗位一:有电机控制项目5年以上开发经验,熟 ...…

查看全部问答∨

按捺不住激动的心————收到C2000的开发板了!!!!

么有想到,在上海TI之行后,一篇感想竟然真的让我得到了这份礼物。。。。意料之外啊,惊喜!! TI的微控制器接触的很少,这次终于有机会一睹庐山真面目了啊,据说C2000是有DSP的功能,这个。。。。发帖有点晕啊,不过我觉得后续的分享还是放在MC ...…

查看全部问答∨

家用恒温控制器

文介绍的家用恒温控制器,其温度调节范围为30-60℃,可用作家庭制作酸奶、面粉发酵及其他方面的保温。 工作原理       该恒温控制器电路由温度传感器、差分放大器、矩形波发生器、脉宽调制器、执行和电源等部分电路组成 ...…

查看全部问答∨

STM32的ISP下载问题

在使用ST Cortex-m3 STM32 ISP Demo(1.0b)的时候,按照说明将BOOT0、BOOT1设置好后,连接时却提示“run-time error‘6’:overflow。并且显示器件信息不可识别,但是右下角却显示绿点,已连接。 高手帮忙指点一下这是什么原因呢?…

查看全部问答∨

【原创】求助!!急!!!!

请问:我现在自己做一个430实验板. 我在集成板上焊好了MSP430F147芯片,外围电路也很简单,主要是晶振模块,电源模块,电源模块输出有3V和5V,请问外围电路这样设计就能使芯片工作了吗?就可以对芯片进行读写了,是不是呀?…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

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

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

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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