PxSEL寄存器用来设置端口为通用IO还是外设IO,0为通用IO、1为外设IO,默认为通用IO。

PxDIR寄存器用来设置端口为输入还是输出,0为输入、1为输出,默认为输入。

在输入模式下,PxINP寄存器用来设置端口为上拉/下拉或三态,0为上拉 /下拉、1为三态,默认为上拉/下拉。P2INP bit5-7表示端口组0-2上拉或下拉,0为上拉、1为下拉,默认为上拉。

在输入模式下,可以用于产生中断,EA位用来表示总中断,0表示禁止、1表示中断。

IENx寄存器中PxIE位用来设置端口组中断,0表示禁止、1表示中断。

PxIEN寄存器用来设置端口中断,0表示禁止、1表示中断。

PICTL寄存器中PxICON位用来设置端口中断触发,0表示上升沿、1表示下降沿。
PxIFG寄存器用来表示端口中断状态,1表示产生中断。
PxIF位用来表示端口组中断状态,1表示产生中断。
例:1.配置P0_1为输出
P0SEL &= 0xFD;    //设置P0_1为普通IO口
          P0DIR |= 0x02;       //设置P0_1为输出
2.配置P0_5为上拉输入
P0SEL &= 0xDF;    //设置P0_1为普通IO口
           P0DIR &= 0xDF;    //设置P0_1为输入
           P0INP &= 0xDF;    //设置P0_1为上拉/下拉
           P2INP &= 0xDF;    //设置P0为上拉
3.配置P2_0为中断
P2SEL &= 0xFE;    //设置P2_0为普通IO口
           P2DIR &= 0xFE;    //设置P2_0为输入
           EA = 1;                   //打开总中断
           IEN2 |= 0x02;         //打开P2中断
           P2IEN |= 0x01;      //打开P2_0中断
           PICTL = 1;             //下降沿触发
           P2IFG &= 0xFE;    //清除P2_0中断状态
           P2IF = 0;               //清除P2中断状态
4.P2_0中断函数
#pragma vector = P2INT_VECTOR    //P2中断向量
__interrupt void io_req()
{
if((P2IFG & 0x01) == 0x01)    //P2_0发生中断
{
;    //P2_0中断处理代码
}
P2IFG &= 0xFE;    //清除P2_0中断状态
P2IF = 0;    //清除P2中断状态
}


CC2530通用I/O相关推荐

  1. CC2530学习(二)CC2530通用I/O端口输入和输出介绍

    CC2530引脚概述 CC2530微控制器采用QFN40封装,有40 个引脚.其中,有21个数字I/O端口,其中P0和P1是8 位端口,P2仅有5位可以使用.这21个端口均可以通过编程进行配置.实际上 ...

  2. CC2530的通用IO端口(GPIO)输入和输出控制

    前言: 单片机基本结构: 单片机的程序开发过程: 单片机的程序运行: 目录 1.CC2530引脚概述 1.1.CC2530的通用I/O端口(GPIO)相关的常用寄存器 1.2.设置寄存器中某些位的方法 ...

  3. 【CC2530入门教程-02】CC2530的通用I/O端口输入和输出控制

    [CC2530入门教程-06]CC2530的ADC工作原理与应用 [CC2530入门教程-05]CC2530的串行接口原理与应用 [CC2530入门教程-04]CC2530的定时/计数器原理与应用 [ ...

  4. CC2530学习路线-基础实验-串口通讯发送字符串(4 未完待续)

    目录 1. 前期预备知识 1.1 串口通讯电路图 1.2 实验相关寄存器 1.2 常用波特率设置 本章未完待续..... 原来写的文章已经丢失了,只能找到这一小部分,看什么时候有时间再补上. 1. 前 ...

  5. zigbee cc2530 adc转换

    cc2530的通用datasheet上没怎么讲到adc的一些特性, http://download.csdn.net/detail/songqqnew/5132088 而是下面这个文档有较多讲解 ww ...

  6. zigbee cc2530地址空间 layout 和flash操作

         ... 2.2.2 CPU Memory Space cpu存储空间(以下叫地址空间) XDATA memory space. The XDATA memory map is given i ...

  7. bh1750采集流程图_基于MSP430和CC2530的温室大棚数据采集系统设计

    农作物的生长受到自然条件的影响,如温湿度.二氧化碳浓度和光照等.随着计算机技术和无线传感网络的发展,用信息技术改造农业尤其是农业温室大棚是农业发展的必然阶段.温室环境检测是实现温室智能化控制的一个重要 ...

  8. 使用GPIO输出控制Led亮灭(CC2530)

    1.实验目的: a.通过实验掌握CC2530芯片GOIP的配置方法 b.掌握Led驱动电路以及开光Led的原理 c.查看cc2530-datasheet.pdf手册查找各个寄存器的意思. 二.实验相关 ...

  9. 【IoT】基于 CC2530 的 ZigBee 物联网系统设计

    1.1设计背景 无线传感器网络是目前研究的热门领域,它集成 了多门学科的知识,应用领域广泛,因此深受国际社会 的关注. 在 21 世纪里,无线传感器网络技术是具有 较大影响力技术中的一个热门技术,也是 ...

最新文章

  1. python编程实例视屏-使用Python实现视频下载功能实例代码
  2. Hibernate JPA中@Transient、@JsonIgnoreProperties、@JsonIgnore、@JsonFormat、@JsonSerialize等注解解释
  3. dubbo中使用kryo进行对象序列化,反序列化时报错
  4. Ireport的安装及使用
  5. azure云数据库_Azure中的新弹性数据库
  6. 海底捞张勇:谈钱,才是对员工最好的尊重
  7. FDDB--无约束人脸检测数据集
  8. iOS 知名公司资讯汇集~招聘内推
  9. 燃烧的远征_从菜鸟通往java世界的修炼之路
  10. 2021年计算机软考时间公布啦
  11. python画椭圆-Python 如何绘制椭圆?
  12. 主机服务器安全策略(一):账户口令安全
  13. Linux的目录挂载详解
  14. 单页活动页面html,优秀HTML5活动页面
  15. 另眼看iPad发布。
  16. void value not ignored as it ought to be解决方法
  17. expand linux,整理一下linux系统expand 命令
  18. 普元 AppServer 6.5 支持哪些日志级别?
  19. 电脑本地,WiFi都能连上,但就是上不去网
  20. 一篇文章带你快速入门createjs

热门文章

  1. C++多继承与虚继承
  2. Qt文档阅读笔记-Qt工作笔记-QThread解析与实例(主线程发送信号给子线程)
  3. php网站不能访问,php怎么不登录不能访问
  4. pymol怎么做底物口袋表面_如何系统的去做有机合成工艺优化---之实战策略
  5. 第一章:Python的基本数据类型-第三节:Python中表示“无序”的数据类型
  6. (计算机组成原理)第二章数据的表示和运算-第二节7:详解C语言中的强制类型转换
  7. 推动Windows的限制:进程和线程
  8. python3.5 安装PyCrypto
  9. python中的reduce函数用法
  10. 子域名收集常用工具(Layer、subDomainsBrute、sublist3r、dnsenum)