当前位置: 首页 > news >正文

zigbee学习笔记:IO操作

1、IAR新建工程

(1)Projetc→Create New Projetc→OK→选择位置,确定

(2)新建一个c文件,保存在路径中

(3)点击工程,右键→add→加入c文件

(4)点击编译,保存工作空间,写入空间名称,

(5) 配置工程,右键→Options→选择器件

 →选择CC2530F256

(6)链接,Options下→Linker→勾选Override default。在上侧选项Output中,勾选Allow C-SPY-spaceific extra output file

(7)Options下→Debugger→Driver→选择仿真器Texas Instruments

2、控制IO输出

以此原理图为例,控制P1_0的LED亮

IO配置过程:

(1)让P1_0为普通IO模式,非片上外设模式。控制寄存器为P0SEL、P1SEL、P2SEL。

PxSEL寄存器相应的IO口,决定他是普通外设还是片上外设,0表示普通IO口,1表示外设IO口。

P0SEL与P1SEL对应如下:

 P2SEL些许不同,因P2只有5个IP。但是P2_1、P2_2用于下载程序,所以不需要配置:

 

(2)让P1_0处于输出状态,非输入状态。控制寄存器为P0DIR、P1DIR、P2DIR

PxDIR寄存器对应的IO口,决定它是输入还是输出,0表示输入,1表示输出

P0DIR与P1DIR对应如下:

 P2DIR对应如下:

 (3)具体代码

输出

把某一位清零使用 &=

eg:把P1_0位置清零,即P1_0处于普通IO口状态

P1SEL &= 0xFE; //1111 1110

把某一位置1使用 |=

eg:把P1_0强行置1,即P1_0处于输出状态

P1DIR |= 0x01; //0000 0001

根据原理图,P1_0处于低电平模式即可点亮LED

P1_0=0;

完整代码如下:

#include <iocc2530.h>void main()
{P1SEL &= 0xFE; //1111 1110P1DIR |= 0x01; //0000 0001P1_0=0;while(1){}
}

输入

若要配置P0_6输入,步骤如下

(1)处于普通IO口

(2)处于输入状态

(3)处于上拉、下拉或者三态状态

http://www.lryc.cn/news/37879.html

相关文章:

  • 华为OD机试题 - 最少数量线段覆盖(JavaScript)| 机考必刷
  • python趣味编程-2048游戏
  • 求解完全背包问题
  • 我们为什么使用docker 优点 作用
  • Python每日一练(20230311)
  • 202109-3 CCF 脉冲神经网络 66分题解 + 解题思路 + 解题过程
  • Aurora简介
  • 【python实操】用python写软件弹窗
  • Ubuntu 常用操作
  • 井字棋--课后程序(Python程序开发案例教程-黑马程序员编著-第7章-课后作业)
  • 谷粒学院开发(三):统一日志、异常及前端准备工作
  • 华为OD机试题 - 招聘(JavaScript)| 机考必刷
  • 关于SQL优化的几点说明
  • 使用高精度秒表StopWatch测试DateTime.Now的精度
  • 【C++】vector的使用及其模拟实现
  • [洛谷-P2585][ZJOI2006]三色二叉树(树形DP+状态机DP)
  • BI技巧丨计算组
  • PMP项目管理项目范围管理
  • Flink 定时加载数据源
  • ChatGPT、人工智能、人类和一些酒桌闲聊
  • WebRTC开源库内部调用abort函数引发程序发生闪退问题的排查
  • Golang并发编程
  • windows+Anaconda环境下安装BERT成功安装方法及问题汇总
  • git - 简易指南
  • [论文笔记]Transformer-XL: Attentive Language Models Beyond a Fixed-Length Context
  • 华为OD机试题 - 找目标字符串(JavaScript)| 机考必刷
  • C++面向对象编程之六:重载操作符(<<,>>,+,+=,==,!=,=)
  • JS_wangEditor富文本编辑器
  • Django实践-06导出excel/pdf/echarts
  • java并发入门(一)共享模型—Synchronized、Wait/Notify、pack/unpack