![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mcu
chengh_chh
爱如星辰
展开
-
short unsigned int *
c编译erro原创 2023-03-09 11:49:55 · 110 阅读 · 0 评论 -
SPI四种模式
sd卡地spi常用的是mode 0 和mode 3,这两种模式的相同的地方是都在时钟上升沿采样传输数据,区别这两种方式的简单方法就是看空闲时,时钟的电平状态,低电平为mode 0 ,高电平为mode 3。spi四种模式SPI的相位(CPHA)和极性(CPOL)分别可以为0或1,对应的4种组合构成了SPI的4种模式(mode)时钟相位CPHA: 即SPI在SCLK第几个边沿开始采样(0:第一个边沿开始;1:第二个边沿开始)时钟极性CPOL: 即SPI空闲时,时钟信号SCLK的电平(1:空闲时高电平;原创 2023-03-23 13:54:05 · 1055 阅读 · 0 评论 -
IAR编译常见错误
首先,申明这下面是转的。Error[Cp001]: Copy protection check, No valid license found for this prod t [20]原因:安装的时候没有把注册机的0x.....字串的小写字母改为大写字母。Warning[Pe001]: last line of file ends without a newli转载 2014-08-03 13:43:19 · 1827 阅读 · 0 评论 -
TI低功耗蓝牙(BLE)GATT介绍
TI低功耗蓝牙(BLE)介绍本文档翻译和修改自参考资料:CC2540Bluetooth Low Energy Software Developer’s Guide (Rev. B),部分图片直接引用自该文档,不一一说明。初稿,待修改。一、概述1、BLE蓝牙协议栈结构附图6 BLE蓝牙协议栈结构图分为两部分:控制器和主机。对于4.0以前的蓝牙,这两部分是分转载 2014-07-21 08:48:51 · 3063 阅读 · 0 评论 -
cc2530下载程序
外部mcu通过调试接口对CC2530进行编程,基本的功能函数如下://--cc2530 Debug commands---#define CMD_CHIP_ERASE 0x10#define CMD_WR_CONFIG 0x18#define CMD_RD_CONFIG 0x20#define CMD_READ_STATUS 0x30#define C转载 2014-07-14 14:57:22 · 3250 阅读 · 0 评论 -
Zigbee协议栈进行数据发送
Zigbee协议栈进行数据发送是调用AF_DataRequest这个函数,该函数会调用协议栈里面与硬件相关的函数最终将数据通过天线发送出去。 afStatus_t AF_DataRequest(afAddrType_t *dstAddr, //目的地址指针 endPointDesc_t *srcEP, //发送节点的端点描述符转载 2014-07-10 09:52:26 · 4595 阅读 · 1 评论 -
uCOS II 内核结构
内核中主要包含以下的文件: 1.uCOS-II Source->source:(与处理器类型无关的代码)OS_CORE.C系统初始化,开启多任务环境等的代码OS_CPU_C.C多任务栈初始化等与处理器有关的代码OS_FLAG .C事件标志组管理代码OS_MBOX .转载 2014-06-20 11:36:16 · 1702 阅读 · 0 评论 -
UcOS-II 和linux比较
随着现代计算机技术的飞速发展和互联网技术的广泛应用,从pc时代过渡到了以个人数字助理、手持个人电脑和信息家电为代表的3c(计算机、通信、消费电子)一体的后pc时代。后pc时代里,嵌入式系统扮演了越来越重要的角色,被广泛应用于信息电器、移动计算机设备、网络设备和工控仿真等领域。嵌入式系统的开发也成为近年it行业的技术热点。完成简单功能的嵌入式系统一般不需要操作系统,如以前许多m cs51系列转载 2014-06-20 10:14:57 · 6477 阅读 · 0 评论 -
STM32之bootloader
项目需要编写了STM32的bootloader,其实编写bootloader主要事项有以下:1、为你的bootloader程序选择存储器地址,因为STM32的存储器FLASH存储程序代码空间为512K,需要进行划分。2、如果需要使用JTAG在线调试,则需要配置区域:3、为您的用户程序选择合适的存储空间:同时配置在线调试区域:4、bootloader程转载 2014-06-20 10:09:29 · 987 阅读 · 0 评论 -
μC/OS-II邵贝贝节选
μC/OS-II 通过 uCOS_II.H 中定义的 OS_EVENT 数据结构来维护一个事件控制块的所有信息[程序清单 L6.1],也就是本章开篇讲到的事件控制块 ECB。该结构中除了包含了事件本身的定义,如用于信号量的计数器,用于指向邮箱的指针,以及指向消息队列的指针数组等,还定义了等待该事件的所有任务的列表。typedef struct {void *OSEventPtr原创 2014-08-13 10:58:40 · 680 阅读 · 0 评论 -
回调函数以及钩子函数的概念
钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权。这时钩子函数即可以加工处理(改变)该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递。对每种类型的钩子由系统来维护一个钩子链,最近安装的钩子放在链的开始,而最先安装的钩子放在最后,也就是后加入的先获得控制权。要实现Win32的系转载 2014-08-13 16:39:13 · 488 阅读 · 0 评论 -
F429/439 SDRAM is42s16-8Mbyte
《高手进阶,终极内存技术指南——完整/进阶版》http://bbs.armfly.com/read.php?tid=19301. 学习SDRAM驱动前的准备工作 学习SDRAM前搞清楚两个问题,一个是SDRAM的基本原理,还有一个就是那几个关键的参数,参数是F429配置SDRAM的关键,这几个参数大概知道是什么意思就行了,配置的时候,根据SDRAM的手册配置转载 2016-09-02 10:30:29 · 811 阅读 · 0 评论 -
用AD6、AD9画完PCB生成gerber文件详细说明
用AD6、AD9画完PCB生成gerber文件详细说明 分类:AltiumDesigner什么是gerber文件不再说明。很多工程师将完成的PCB图直接交由制板厂制作,但是有时候制板厂转换出来的gerber文件不是我们想要的。例如我们用的AD作出的图,但是有的厂只用protel,那转换出来的带有汉字的gerber文件可能就会有错误,或者我们在设计的时转载 2014-11-17 20:35:42 · 4118 阅读 · 0 评论 -
ZigBee串口收发数据
ZigBee串口收发数据 本文转载自:http://blog.chinaunix.net/space.php?uid=20788636&do=blog&id=1841411 串口接收发送数据有两种方式,一种是中断的模式,另一种是DMA方式,这里主要以中断的方式,来看一下使用串口来发送,接收数据的整个流程。这里以SerialApp例程为例子转载 2014-11-06 20:35:33 · 10936 阅读 · 0 评论 -
Z-stack 应用程序编程接口(API)-网络层
Z-stack 应用程序编程接口(API)-网络层转载▼标签:z-stackapi网络层nwk NWK 层为更高层提供了如下功能:·· 网络管理· 地址管理· 网络参数与功能函数除了管理功能,NWK 还提供了应用程序没有的数据服务。应用程序可以通过AF数据接口[AF_DataRequest()]来发转载 2014-10-30 20:34:37 · 1654 阅读 · 0 评论 -
UCOS2学习笔记:对于信号量,互斥信号量,事件标志组的个人理解
UCOS2学习笔记:对于信号量,互斥信号量,事件标志组的个人理解 ucos看了也有一周多了,索性源码都能开得懂,并且能去理解。昨天一开始看事件标志组的时候确实不知道怎么回事,后来百度一下,明白了事件标志组的作用以后,再去看书上的讲解和原码就清晰多了,很容易就明白了他的基本运行机理。这也给了我一点启示,学一个东西,看一个东西之前,你最少要知道他干嘛用的,如果连干转载 2014-10-07 17:51:13 · 520 阅读 · 0 评论 -
结构体OS_TCB
任务控制块的数据结构如下:[cpp] view plaincopyprint?typedef struct os_tcb { OS_STK *OSTCBStkPtr; /* Pointer to current top of stack */ #if OS_TASK_C转载 2014-10-06 12:36:58 · 3643 阅读 · 3 评论 -
stm32-ucos学习笔记
GPIO--void GPIO_DeInit(GPIO_TypeDef* GPIOx);void GPIO_AFIODeInit(void);void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct);void GPIO_StructInit(GPIO_InitTypeDef* GPIO_InitSt原创 2014-08-23 17:25:18 · 1092 阅读 · 0 评论 -
stm32 BKP寄存器操作[操作寄存器+库函数]
BKP是“BACKUP”的缩写,stm32f103RCTE的内部配备了10个16位宽度的BKP寄存器。在主电源切断或系统产生复位时间时,BKP寄存器仍然可以在备用电源的支持下保持其内容。 BKP在实际应用中可以存入重要数据,防止被恶意查看,或用于断电回复等。 本例实现对BKP寄存器的读写操作,和入侵检测和处理。主程序中写入寄存器后,依次打印出10个BKP寄存器数据,然后触发GPIOC1转载 2014-08-14 11:14:05 · 6645 阅读 · 0 评论 -
单片机 I2C操作笔记——以 AT24C04为例
1.前言 对于大多数工程师而言,I2C永远是一个头疼的问题。相比UART和SPI而言,I2C的时序要复杂一些,I2C组合变化也丰富一些。在这里以AT24C04为例说明I2C使用过程中的一些注意点。2.AT24C04操作示意图图 AT24C04操作示意图示意图说明:示意图分阐述了4种不同的操作方式,例如写单个存储单元,写多个存储单元,读单个存储单元和转载 2016-10-11 12:46:48 · 2579 阅读 · 0 评论