单片机CC2530学习笔记

article/2025/5/11 10:39:09

文章目录:

一:与或操作

二:CC2530的通用 IO及相关寄存器

1.与通用I/O端口相关常用的4个寄存器

2.PxSEL寄存器与PxDIR寄存器

3.P0INP寄存器与P1INP寄存器与P2INP

三:按键的工作原理与程序设计思路

四:CC2530的中断系统

1.CC253018个中断源 

2.CC2530中断服务函数的格式

3.中断相关的寄存器

3.1 IEN0

3.2 IEN1

3.3 IEN2

五:CC2530外部中断及相关寄存器

端口组的中断标志 P0IF、 P1IF、P2IF

1.端口使能寄存器 P0IEN、P1IEN、P2IEN

2.端口输入信号寄存器 PICTL

3.端口中断状态标志寄存器 P0IGF、P1IGF

六:CC2530的定时器资源概述

1.CC2530的5个定时/计数器 

2.定时器1的工作原理 T1CNTL、T1CNTH

3.定时器1的三种工作模式

4.CC2530的定时器中断系统

5.最大计数的计算与设置

6.T1CTL定时器1控制寄存器

7.T1CCTLx定时器1通道x捕获/比较控制寄存器

8.T1STAT 定时器1状态寄存器

七:前后台程序设计思维模式

八:看门狗

1.WDCTL看门狗控制寄存器

2.IEN2中断使能寄存器2

九:CC2530系统时钟的设置

1.概述

2.时钟控制命令寄存器 CLKCONCMD

3.时钟控制状态寄存器(只读) CLKCONSTA

十:CC2530串口资源及相关寄存器

1.概述

2.UART串口引脚的映射关系

3.PERCFG外设控制寄存器

4.波特率的计算与设置

5.USART寄存器

5.1 UOCSR 控制和状态

5.2 U0UCR UART控制

5.3 U0GCR 通用控制

5.4 UOBUF 接收/传送数据缓存

5.5 U0BAUD 波特率控制

6.串口0的UART初始化设置

十一:CC2530的ADC及相关寄存器 

1.基本原理

2.资源概述

3.ADC寄存器


一:与或操作

清0:&=~
置1:|=与操作 & :将寄存器中某些位置0同时不影响其他位   任何值与1相与,保留原值任何值与0相与,结果为0有两个1才为1很多时候&要取反~或操作 |:将寄存器中某些位置1同时不影响其他位任何值与0相或,保留原值任何值与1相或,结果为1有一个1就为1异或    ^两个相同为0从左往右,0位开始

二:CC2530的通用 IO及相关寄存器

1.与通用I/O端口相关常用的4个寄存器

PXSEL    功能选择RXDIR    传输模式PXINP    输入模式:上拉、下拉、三态PX       数据端口

2.PxSEL寄存器与PxDIR寄存器

3.P0INP寄存器与P1INP寄存器与P2INP

三:按键的工作原理与程序设计思路

按键的两个引脚,一端通过电阻上拉到高电平,另一端接地没有按键下的时候,输入引脚为 高电平当有按键下的时候,输入引脚为 低电平通过识别高低电平来判断:是否有按键触发去抖动处理:有干扰信号,获得真实的按键触发信号

四:CC2530的中断系统

1.CC253018个中断源 

2.CC2530中断服务函数的格式

3.中断相关的寄存器

3.1 IEN0

3.2 IEN1

3.3 IEN2

五:CC2530外部中断及相关寄存器

端口组的中断标志 P0IF、 P1IF、P2IF

1.端口使能寄存器 P0IEN、P1IEN、P2IEN

2.端口输入信号寄存器 PICTL

3.端口中断状态标志寄存器 P0IGF、P1IGF

六:CC2530的定时器资源概述

1.CC2530的5个定时/计数器 

2.定时器1的工作原理 T1CNTL、T1CNTH

3.定时器1的三种工作模式

4.CC2530的定时器中断系统

5.最大计数的计算与设置

6.T1CTL定时器1控制寄存器

7.T1CCTLx定时器1通道x捕获/比较控制寄存器

8.T1STAT 定时器1状态寄存器

七:前后台程序设计思维模式

八:看门狗

1.WDCTL看门狗控制寄存器

2.IEN2中断使能寄存器2

九:CC2530系统时钟的设置

1.概述

2.时钟控制命令寄存器 CLKCONCMD

3.时钟控制状态寄存器(只读) CLKCONSTA

十:CC2530串口资源及相关寄存器

1.概述

2.UART串口引脚的映射关系

3.PERCFG外设控制寄存器

4.波特率的计算与设置

扩展

5.USART寄存器

5.1 UOCSR 控制和状态

5.2 U0UCR UART控制

5.3 U0GCR 通用控制

5.4 UOBUF 接收/传送数据缓存

5.5 U0BAUD 波特率控制

6.串口0的UART初始化设置

十一:CC2530的ADC及相关寄存器 

1.基本原理

2.资源概述

3.ADC寄存器

 


http://chatgpt.dhexx.cn/article/DtNZOTcq.shtml

相关文章

c语言长空格的代码是什么,c语言中表示空格的是什么代码?

分析如下: 不是所有字符都需要转义的,空格直接就敲空格,或者使用ASCII码值赋值为32。 空格没有转义字符。合法转义字符如下: \a 响铃(BEL) 、\b 退格(BS)、\f 换页(FF)、\n 换行(LF)、\r 回车(CR)、\t 水平制表(HT)、\v 垂直制表(…

读入带空格的字符串 C语言

如何输出带空格的字符串 C语言默认是遇到空格&#xff0c;即代表输入的字符串的结束处 那么该如何读入带空格的字符串呢&#xff1f; scanf("%[^\n]", buf); //回车结束 这样的话就可以读入空格啦 表达式的意思为遇到’\n’才读取结束 请看演示代码 #include <…

C语言去除一段字符串中的空格

函数说明 将字符串中的所有空格都去掉。该函数简单但实用性强&#xff0c;可以作为字符串过滤器使用&#xff0c;随便改一下就可以实现去掉任意字符的功能&#xff0c;建议程序员的代码库里可以收藏一段该类型代码&#xff0c;用取方便。 函数实现 #include <stdio.h>…

C语言删除字符串中的空格

实现思路&#xff1a;分别定义2个指针&#xff0c;一个快指针s1, 一个慢指针s2,s1负责快速移动&#xff0c;遍历我们的的字符串&#xff0c;遇到空格就跳过&#xff0c;不是空格&#xff0c;就赋值给我们的s2,我们s2再往后移动&#xff0c;这样就把空格挤掉了。 最后别忘记s2 …

c语言空格符 r t,c语言中、\t \r \n 和空格什么意思

具体意思&#xff1a; 都是转义字符&#xff0c;空格就是单纯的空格&#xff0c;输入时可以输入空格 \t 跳格 \r 回车 \n 换行 \\ 反斜杠 \a 警告 \b 退格 \f 换页 \v 垂直跳格 \ddd ddd 是 1、2 或 3 位八进制数字。 转义字符串(E…

c++之静态数据成员与静态成员函数

什么是静态数据成员&#xff1f; 数据成员我们之前学过&#xff0c;是对象的属性。 同一个类&#xff0c;不同的对象&#xff0c;可能拥有不同的属性 例如一个车行&#xff0c;不同的车有不同的颜色&#xff0c;不同的耗油量。。。等等属性 但是当我们统计一个公有的数据&am…

类的静态数据成员和静态成员函数

一.什么是类的静态成员 静态成员变量和全局变量都存储在全局/静态区,它们都是在程序编译时创建,直到编译结束才被收回.所以全局变量和静态成员变量的功能差不多,只是创建的方式不同,类的静态成员创建在类中,全局变量创建在程序开头. 二.为什么要用类的静态成员而不用全局变量 …

37.【C/C++ 静态数据成员和静态成员函数 (超详解)】

静态函数 &#xff08;一&#xff09;、什么是静态函数?1.static变量2.static函数&#xff08;也叫内部函数&#xff09; &#xff08;二&#xff09;、静态数据成员1.空间分配和释放2.静态数据成员初始化效果展示: 3.静态数据成员的访问代码展示:效果展示: (四)、静态成员函数…

[C++] 类的静态成员 (静态数据成员 和 静态成员函数)

目录 一、声明静态成员&#xff1a; 二、定义静态成员&#xff1a; 三、使用类的静态成员&#xff1a; 四、静态成员类内初始化&#xff1a; 五、静态成员与普通成员的区别&#xff1a; 六、案例代码&#xff1a; 类内的静态成员包括&#xff1a; 静态数据成员 和 静态成…

对静态数据成员进行初始化

1.如果希望同类的各个对象中的数据成员的值是一样的&#xff0c;就可以把它定义为静态数据成员。 2.静态数据成员是在编译时预留空间的&#xff0c;在程序开始运行时被分配空间&#xff0c;到程序结束才释放空间。 3.静态数据成员可以初始化&#xff0c;但只能在类体外进行初…

静态数据成员与非静态数据成员的区别

数据成员&#xff1a; 静态数据成员是类的一部分&#xff0c;为类的所有实例共享(静态区)&#xff1b; 非静态数据成员&#xff0c;类的每个实例都有一份拷贝(动态区)。 静态数据成员的访问&#xff1a; 静态数据成员是类的一部分&#xff0c;在产生任何实例之前已经存在&a…

静态数据成员和静态数据成员函数

c中的static静态数据成员和静态成员函数应该是让大家比较头疼的东西&#xff0c;好像也是找工作公司面试中常常问到的东西。我自己也深有体会&#xff0c;在学习c的过程中&#xff0c;总感觉static很烦人&#xff0c;但是又是一个必须懂的东西&#xff0c;所以今天就对静态数据…

静态数据成员(C++)

目录 一、静态数据成员 1.1、定义 1.2、声明 1.3、初始化 1.4、普通访问 1.5、对象访问 二、静态成员函数 一、静态数据成员 1.1、定义 我们都知道&#xff0c;类是对具有相同属性和相同行为的一组对象的描述。 有时侯&#xff0c;我们希望每定义一个对象&#xff0c…

C语言文件 open函数和fopen函数

open 头文件&#xff1a; #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h>定义函数&#xff1a; int open(const char * pathname, int flags); int open(const char * pathname, int flags, mode_t mode);函数说明&#xff1a; 参数1…

VS中fopen_s函数的用法(fopen函数的扩展)

使用方法&#xff1a; 首先看fopen的代码&#xff1a; FILE* fp null; fp fopen(filename,"w") if(fp!null) { // 打开文件成功 }再来看fopen_s的用法&#xff1a; FILE* fp null; errno_t err 0; err fopen_s(&fp,filename,"w") if(err0) { /…

Vxworks或Workbench编译环境下fopen函数的用法

Vmware虚拟机下建立了Vxwork操作系统&#xff0c;Workbench连接对应的Vxworks操作系统进行编程&#xff0c;在此环境下进行编译c或者c语言过程中&#xff0c;用fopen或fprintf将变量输出至文件&#xff0c;过程中要注意的是&#xff0c;此时的Vxworks操作系统没有与Windows的c、…

fopen()函数的使用方法

语法&#xff1a; FILE *fopen(const char *filename, const char *mode); 返回值&#xff1a; fopen函数返回新打开文件的文件指针&#xff1b; 如果此文件不能打开&#xff0c;则返回NULL指针。 表格清晰可见&#xff1a; 模式描述文件可否存在"r"打开文件仅供…

c语言中fopen的作用,c语言fopen函数的用法

在c语言中可以使用“fopen()”函数打开一个文件&#xff0c;该函数用于打开一个文件&#xff0c;其语法是“open("file a","r");”&#xff0c;其参数r表示只读属性。 fopen函数是打开一个文件&#xff0c;其调用的一般形式为&#xff1a; 文件指针名fopen…

fopen函数的用法示例_在C和C ++中使用fopen()函数的用法以及示例

fopen函数的用法示例 In C and C++ programming languages fopen() function is used to open files and make operations like add, update, create for data. In this tutorial we will learn the syntax, usage and errors about the fopen() function. 在C和C ++编程语言中…

php fopen函数php,fopen函数介绍与使用方法详解

在我们的PHP开发中会经常遇到fopen()和file_get_contents(),相信很多同学都发现这两个函数基本上都差不多,那么我们今天就来讲讲php fopen()和file_get_contents()的区别到底再哪,废话少说了,一起来看看吧!php中读取文件可以使用fopen和file_get_contents这两个函数,二者之…