发射XL-F28379D C2000 Delfino MCU F28379D LaunchPad开发套件 TI云工具 建立自己的BoosterPack
2022-11-12 21:35:44 89.93MB C
1
4.2 FreeRTOS的编码标准和命名风格 作为初学者,非常有必要了解 FreeRTOS的编码标准和命名风格,这对于以后的学习大有裨益。 4.2.1 FreeRTOS的编码标准 FreeRTOS核心源码文件的编写遵循 MISRA代码规则,同时支持各种编译器。但考虑到有些编译器的性能还比较 弱,不支持 C语言的新标准 C99和 C11 的一些特性和语法,所以 FreeRTOS的源码中就没有引入 C99和 C11的新特 性,但是有一个例外,源码中有用到头文件 stdint.h(这个文件是 C99标准才引入的)。如果用户使用的编译器没 有这个头文件的话,可以将 FreeRTOS 源码文件中,此路径下 FreeRTOS/Source/include的一个 stdint.readme文 件修改为 stdint.h文件后用于这个编译器。  MISRA MISRA (The Motor Industry Software Reliability Association 汽车工业软件可靠性联会) 是位于英国 的一个跨国汽车工业协会,其成员包括了大部分欧美汽车生产商。其核心使命是为汽车工业提供服务和协助, 帮助厂方开发安全的、高可靠性的嵌入式软件。这个组织最出名的成果是所谓的 MISRA C Coding Standard, 这一标准中包括了 127条 C语言编码标准,通常认为,如果能够完全遵守这些标准,那你的 C代码是易读、可 靠、可移植和易于维护的。现在很多嵌入式开发者都以 MISRA C来衡量自己的编码风格,比如 uC/OS-II就宣 传 99%遵守 MISRA标准。 4.2.2 FreeRTOS的命名规则 初学 FreeRTOS的用户对其变量和函数的命名比较迷惑,下面专门做一下介绍:  变量  uint32_t定义的变量都加上前缀 ul。u代表 unsigned 无符号,l代表 long长整型。  uint16_t定义的变量都加上前缀 us。u代表 unsigned无符号,s代表 short短整型。  uint8_t定义的变量都加上前缀 uc。u代表 unsigned无符号,c代表 char字符型。  stdint.h文件中未定义的变量类型,在定义变量时需要加上前缀 x,比如 BaseType_t和 TickType_t定 义的变量。  stdint.h文件中未定义的无符号变量类型,在定义变量时要加上前缀 u,比如 UBaseType_t 定义的变 量要加上前缀 ux。  size_t 定义的变量也要加上前缀 ux。  枚举变量会加上前缀 e。  指针变量会加上前缀 p,比如 uint16_t定义的指针变量会加上前缀 pus。  根据 MISRA代码规则,char定义的变量只能用于 ASCII字符,前缀使用 c。  根据 MISRA代码规则,char *定义的指针变量只能用于 ASCII字符串,前缀使用 pc。  函数  加上了 static声明的函数,定义时要加上前缀 prv,这个是单词 private的缩写。  带有返回值的函数,根据返回值的数据类型,加上相应的前缀,如果没有返回值,即 void类型 ,函数的前缀加上字母 v。  根据文件名,文件中相应的函数定义时也将文件名加到函数命名中,比如 tasks.c 文件中函数 vTaskDelete,函数中的 task 就是文件名中的 task。  宏定义  根据宏定义所在的文件,文件中的宏定义声明时也将文件名加到宏定义中,比如宏定义 configUSE_PREEMPTION 是定义在文件 FreeRTOSConfig.h 里面。宏定义中的 config就是文件名中的 config。另外注意,前缀要小写。  除了前缀,其余部分全部大写,同时用下划线分开。  char型变量无符号数和有符号数的切换方法 MDK 中可以在 Options->C/C++选项中设置 char型变量为有符号数或者无符号数,默认不选择单选框的情况下 char型变量是 8位无符号数,选上后就是 8位有符号数:
2022-11-11 20:49:35 10.1MB freertos, mcu, 嵌入式
1
XCKU0403FBVA676E-2021-06-30.PDF
2022-11-11 13:28:45 1.38MB MCU 芯片
1
IC卡读写卡程序,M50 M70卡 Type A, TypeB, TypeF A,B密钥设置,卡内信息读取写入,充值卡功能
1
摘要:提出了一种基于微控制器(MCU)的实时音乐节奏提取系统。该系统能够准确地提取节奏感较强的乐曲节奏,并按照设定的增益要求控制音频放大系统的增益。经处理得到的输出音乐节奏和音频能量作为控制信号调节音乐喷泉的花型变换节奏以及水柱高度。     近年来,随着计算机技术的发展,作为一种最贴近于人类思维的音乐领域,受到越来越多的计算机研究者的关注。世界各地的不少科研院所和大学成立了专门的研究计算机音乐的机构,研究方向包括节奏提取、音调检索、音色识别、风格划分和情感提取等。每一个研究方向都有其独特的应用,节奏提取技术用于音乐驱动运动的实践;普调检索和音色识别用于基于内容的对媒体数据库的建立和检索;风格划分和情感提取对用计算机创作音乐曲日算法具有指导意义。   节奏在通常意义上指音乐中交替出现的、有规律的强弱现象。基于节奏在音乐表达中的重要地位和在多媒体应用中的广泛性,节奏提取成为计算机音乐分析中-   个重要的热点.Jarmo Seppanen"1根据系统处理对象的不同,将节奏提取系统分为以表征信号为输人(例如MI D1)的系统和以声学信号(例如WAV)为输入的系统13-11在第一类系统中,使用MIDI信号作为输入,MIDI是音乐信号在电子乐器之间传输的标准,包括硬件接口标准以及电子音乐信号在不同硬件之间的异步申行传输协议。由于MID格式的音乐文件记录了音乐的全部乐谱和演奏的全过程,很多音乐的基本特征可以直接提取出来,所以这类系统对于单音和多音的乐曲检测精度都很高。第二类系统使用真实的声学信号作为输入,因为WAVE格式是对实时播放的音乐信号进行采样和数字编码,因此记录了实际的演奏效果,接近于人类真实听觉过程。这类系统需要借助较多的电子设备对信号进行频谱分析和能量分析,再综合音乐知识推断音乐的节奏点或节奏值。
2022-11-05 22:20:17 2.8MB MCU半波整流微处理器
1
MCS-51单片机实验指导书,内容详实,欢迎下载!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2022-11-05 20:17:31 8.3MB MCU
1
stm32G070CBT6A的OTA升级程序,采用IAP方案,数据用串口Ymodem协议传输bin文件,输入2开始等待下载并写入,输入3跳转到用户APP,跳转成功打印hello world. 从APP跳转到bootloader可通过按键方式。
2022-11-01 19:02:24 6.83MB MCU 嵌入式 单片机 stm32
1
简介:主要针对解决小容量MCU flash ram有限,使用标准springf函数占用空间过大,莫名堆栈溢出问题.函数仅支持16位无符号整形和字符串的转换,如果要转换float型,请使用额外提供的 将float转换为字符串的函数。文件中提供了简单的示例代码。
2022-11-01 14:44:58 2KB mega8 精简 sprintf
1
更新日志:优化了待机耗电量,电流电压更加稳定,更好的保护电瓶
2022-10-31 21:00:34 23KB 掌讯sd8227MCU 掌讯导航升级 导航MCU
1