
本书以中职学校物联网技术应用专业教学标准为依据,结合1+X《传感网应用开发职业技能等级标准》(初级)来选择内容。全书共9个模块46个任务,内容涵盖:搭建CC2530开发环境,GPIO控制LED灯,GPIO控制按键,中断原理及应用,定时器/计数器原理及应用,看门狗原理及应用,系统时钟设置和串口通信,A/D转换器及相关寄存器,综合案例。本书既兼顾了CC2530微控制器应用开发的基础知识,又结合物联网工程师岗位人才的需求,基于任务驱动,体现“做中学”,强化专业知识基础。本书提供配套的视频教程、PPT课件和程序源码,并配有丰富的习题及参考答案。
前 言 随着物联网技术的快速发展,教育部在《职业教育专业目录(2021年)》中新设立了物联网技术应用专业。开设新专业面临设备、教材、师资短缺。传统的单片机教材,不适合物联网技术应用专业使用。为此,我们以CC2530开发套件XMF09B/C和国赛ZigBee开发板为硬件平台,结合中职学校教学实际,编写了本教材。 本教材以中职学校物联网技术应用专业教学标准为依据,结合1+X《传感网应用开发职业技能等级标准》(初级),根据职业院校学生特点选择内容,突出课程的实用性和先进性,将抽象的理论知识融入具体的活动课程之中,以任务为载体,以学生为主体设计教学内容,体现“理实一体化”“做中学”“基础性”教学理念。 本书为实训教材,全书共9个模块46个任务,内容包括:搭建CC2530开发环境,GPIO控制LED灯,GPIO控制按键,中断原理及应用,定时器/计数器原理及应用,看门狗原理及应用,系统时钟设置和串口通信,A/D转换器及相关寄存器,综合案例。 模块一 搭建CC2530开发环境。主要介绍单片机和开发环境的搭建、IAR集成开发环境下CC2530的开发流程。 模块二 GPIO控制LED灯。主要介绍CC2530 GPIO(通用I/O端口)的基本原理,寄存器的某些位置0或置1,CC2530通用I/O及相关寄存器,LED灯闪烁基本原理及应用等内容。 模块三 GPIO控制按键。主要介绍CC2530 GPIO按键的工作原理与程序设计思想,按键控制LED灯,按键控制跑马灯的运行与暂停,按键的长按与短按、单击与双击等内容。 模块四 中断原理及应用。主要介绍CC2530的中断系统,CC2530外部中断及相关寄存器,外部中断控制LED灯及跑马灯的运行与暂停等内容。 模块五 定时器/计数器原理及应用。主要介绍CC2530定时器/计数器资源,定时器1的工作原理及相关寄存器,基于定时器1模模式的秒闪灯,基于定时器的长按与短按,前后台程序设计思维模式,基于定时器的跑马灯控制,定时器1自由运行模式PWM单路呼吸灯等内容。 模块六 看门狗原理及应用。主要介绍CC2530看门狗定时器原理,以及用看门狗定时器实现1?s定时和监测程序运行等内容。 模块七 系统时钟设置和串口通信。主要介绍CC2530的串口通信和系统时钟设置,包括CC2530系统时钟设置、CC2530串口及相关寄存器、CC2530串口数据发送基础、CC2530串口数据的收发和串口命令控制LED灯等。 模块八 A/D转换器及相关寄存器。主要介绍CC2530的A/D转换器及相关寄存器,以查询方式实现外部电压ADC采样,以中断方式实现外部电压ADC采样,以及ADC采样电压的数据换算等内容。 模块九 综合案例。主要介绍按键控制流水灯、按键控制灯光状态变换、人流量计数统计、灯光亮度等级控制、模拟红绿灯工作过程、按键嵌套复合应用、休闲区域彩灯控制和定时器应用等内容。 本书配有视频教程、PPT课件和程序源码,并配有丰富的习题及参考答案。其中,PPT课件和程序源码请扫描下面的二维码下载,视频教程请扫描正文相应位置的二维码观看。 PPT课件 程序源码 本书由延安大学西安创新学院教授、朝阳工程技术学校正高级讲师邓泽国,朝阳工程技术学校陈塞月、李秀露、赵树林、高歧东,广东职业技术学院欧浩源编写。其中,陈塞月编写模块一和模块二,李秀露编写模块三和模块四,邓泽国编写模块五至模块九,赵树林编写每个模块的课后习题,高歧东对全书语言文字进行校对,欧浩源编写数字资源。全书由邓泽国统稿。在本书编写过程中,邓昊天翻译了书中所参考的外文资料。 限于编者的水平,书中错误、疏漏之处在所难免,敬请读者批评指正。 编 者 2023年1月
目 录 模块一 搭建CS2530开发环境 1 任务一 CC2530概述与开发环境的搭建 1 任务二 IAR环境下CC2530的开发流程 8 习题 17 模块二 GPIO控制LED灯 19 任务一 将寄存器的某些位置0或置1 19 任务二 CC2530通用I/O及相关寄存器 21 任务三 LED灯闪烁基本原理及应用 25 任务四 CC2530实现LED跑马灯 34 习题 39 模块三 GPIO控制按键 42 任务一 按键的工作原理与程序设计思路 42 任务二 按键控制LED灯 43 任务三 按键控制跑马灯的运行与暂停 51 任务四 普通延时函数实现按键的长按与短按 61 任务五 普通延时函数实现按键的单击与双击 66 习题 68 模块四 中断原理及应用 73 任务一 CC2530中断系统 73 任务二 CC2530外部中断及相关寄存器 79 任务三 外部中断控制LED灯 82 任务四 外部中断控制跑马灯的运行与暂停 90 习题 96 模块五 定时器/计数器原理及应用 99 任务一 CC2530定时器/计数器资源概述 99 任务二 定时器1的工作原理及相关寄存器 100 任务三 基于定时器1模模式的秒闪灯 104 任务四 基于定时器的长按与短按 112 任务五 前后台程序设计思维模式 119 任务六 基于定时器的跑马灯控制 120 任务七 定时器1自由运行模式PWM单路呼吸灯 128 习题 133 模块六 看门狗原理及应用 136 任务一 了解看门狗定时器的工作原理 136 任务二 用看门狗定时器实现1?s定时 137 任务三 用看门狗定时器监测程序运行 142 习题 147 模块七 系统时钟设置和串口通信 150 任务一 CC2530系统时钟设置 150 任务二 按键控制系统时钟切换 152 任务三 CC2530串口及相关寄存器 157 任务四 CC2530串口数据发送基础 163 任务五 统计并上报按键触发的次数 175 任务六 CC2530串口数据收发基础 182 任务七 CC2530串口命令控制LED灯 188 习题 196 模块八 A/D转换器及相关寄存器 199 任务一 CC2530的A/D转换器及相关寄存器 199 任务二 以查询方式进行单次ADC采样 204 任务三 以中断方式进行单次ADC采样 211 任务四 ADC采样电压的数据换算 216 任务五 光照电压自动控制灯光开关 222 习题 226 模块九 综合案例 228 任务一 按键控制流水灯 228 任务二 按键控制灯光状态变换 231 任务三 人流量计数统计 233 任务四 灯光亮度等级控制 236 任务五 模拟红绿灯工作过程 238 任务六 按键嵌套复合应用 242 任务七 休闲区域彩灯控制 245 任务八 定时器间隔定时实现按键N连击 249 任务九 定时器间隔定时实现按键长按与短按 255 习题参考答案 258 参考文献 262