自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(68)
  • 资源 (30)
  • 收藏
  • 关注

原创 如何将不同大小及宽度的数据,拼接在同一块内存中?

/*************************************************************************@ brief 拼接一段数据到某个地址step1: 先定义一块地址,用于存储拼接之后的数据. 这里介绍两种方式:一种是用malloc一段内存: char *Ptr = NULL; Ptr = (char*)malloc(100 * sizeof...

2019-06-02 00:28:42 671

原创 VS coide 如何打开并显示十六进制的文件?

Q. vscode中如何显示hex码bin文件(内存hex码)?A: 利用vscode中的hexdump插件。hexdump可以显示文件的16进制,非常好用。Display a specified file in hexadecimal.插件简介:Display a specified file in hexadecimal...

2019-06-02 00:04:23 14222 1

原创 使得循环中某部分程序只执行一次的技巧

set a flag,使得某部分程序只执行一次。// *********************************************// @brief : the code for c experience// @author : mas// *********************************************#include <...

2019-06-01 23:53:18 6057 1

原创 指针和数组用到的一个小方法随记

比如我随手定义一个一维指针:typedef struct { int *src_height; int *src_width;}structname;然后我可以直接用这个指针名来当做数组用。structname *structname;structname->src_height[0] = pFrame->height;structname-...

2019-05-09 22:07:18 160

原创 YUV随笔

YUV: Y表示明亮度(Luminance或者luma),U和V表示的是色度(Chrominance),作用是用来描述影像色彩和饱和度,用于指定像素的颜色(用Cr和Cb来表示,Cr表示RGB输入信号红色部分和RGB亮度值之间的差异,Cb表示RGB输入信号蓝色部分和RGB亮度值之间的差异)。 YUV的优点在于传输时占用极少的带宽,(比如RGB在传输时需要三个独立的视频同时传输)...

2019-05-09 21:57:45 227

原创 vscode配置C调试环境(launch.json tasks.json setting.json)

废话不多说,直接甩配置代码。如有在参考过程中有问题请联系我。首先,tasks.json是用来设置指令编译代码,launch.json是设置执行环境来执行代码。setting是设置语言环境;tasks.json:{ // See https://go.microsoft.com/fwlink/?LinkId=733558 // for the documentation...

2019-05-07 20:58:19 20758 3

原创 vscode创建python编译环境(launch.json)

废话不多说,直接甩文件,配置有问题的请参考。{ // Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsof...

2019-05-07 19:55:24 24484 3

原创 python 从入门到放弃 哈哈哈

2019.04.26 开始的第一天001.学习输入input()和输出print('')# 学习输入input()和输出print('')print('hello world')name = input() print('name is ' + name) # 可以是字符串,也可以是变量值;002. 计算字符串长度# len() 计算字符...

2019-04-27 09:03:53 979 1

原创 CAN总线知识入门小结(搬运工)

本文为网上资料搬运,实在是PPT作者做的内容质量非常高,在这里感谢作者分享。资料来源地址不详,如有内容冲突,请联系我,谢谢。CAN: Controller Area Network. - BOSCH Company for cars. CAN最初是由德国的BOSCH公司为汽车监测、控制系统而设计的。现代汽车越来越多地采用电子装置控制,如发动机的定时、注油控制,加速、...

2019-04-21 15:57:41 1270

原创 DSP和普通的MCU或者SOC区别小结

对比项 属性/特征 硬件乘法器/累加器AUL 通用的MCU在执行乘法操作时是通过软件编程的方式的来实现的,通常需要几十甚至上百个时钟周期,而DSP处理器却有自己的硬件乘法器,使用硬件的方式来执行乘法操作,用硬件的方法总比用软件的方法有着无法比拟的速度优势。 DSP处理都有自己的累加器单元AUL,大多数的DSP处理器在执行乘加操作时可以在一条指令周期内同时...

2019-04-21 15:07:41 4589

原创 Frimware的release模式和debug模式

Debug模式和Realease模式:1)debug有调试代码,体积大;release版本没有调试代码,体积小,执行速度快! 调试模式:在程序中设置Bpoint时,程序知道在Bpoint的位置停止,并可以看到veriable的值。是因为debug模式下,编译器在代码中添加了许多调试需要的代码,可以让SystemTrace得到,返回给你。 这些代码当然是要占用空间和时...

2019-04-21 14:43:50 309

原创 .md文档是什么? 如何打开?

.md文档是什么? 首先来普及一下什么是md文件, md全称markdown,markdown也是一种标记语言。 .md即markdown文件的基本常用编写语法,是一种快速标记、快速排版语言,现在很多前段项目中的说明文件readme等都是用.md文件编写的,而且很多企业也在在鼓励使用这种编辑方式,特别作为一个前端从业者更要学会使用这种语言。下面就简单和大家分享一些...

2019-03-30 10:18:50 14948

原创 TDA2X 开发笔记(1)-环境搭建知识点

Code Composer Studio Code Composer Studio 是一种集成开发环境 (IDE),支持 TI 的微控制器和嵌入式处理器产品系列。Code Composer Studio 包含一整套用于开发和调试嵌入式应用的工具。它包含了用于优化的 C/C++ 编译器、源码编辑器、项目构建环境、调试器、描述器以及多种其他功能。直观的 IDE 提供了单个用户界面,可帮...

2019-03-30 07:23:32 4022 1

原创 DOS命令总结整理

DOS命令,计算机术语,是指DOS操作系统的命令,是一种面向磁盘的操作命令,主要包括目录操作类命令、磁盘操作类命令、文件操作类命令和其它命令。 目前大家常用的操作系统有windows10,windows 7等,都是图形化的界面。在有这些系统之前的人们使用的操作系统是DOS系统。 下面总结了常用的DOS命令,以方便项目开发,有总结不充分的地方,欢迎大家留言补...

2019-03-29 22:35:58 845

原创 windows下,如何用dos命令进入某个文件夹,并验证进入成功

cmd;D: //进入D盘cd + path(D盘) //进入D盘绝对路径;set pa=%cd% // 将路径赋值给变量;echo %pa% // 显示路径;

2019-03-29 21:29:20 3578

原创 关于C语言中的递归函数

递归实例:#include &lt;stdio.h&gt;void up_and_down(int);int main(void){ up_and_down(1); return 0;} void up_and_down(int n){ printf("Level %d: n location %p\n", n, &amp;n); // #1 if (n &lt;...

2019-03-14 11:09:34 22129 1

原创 嵌入式C中,变量的存储区域盘点

嵌入式中,变量的存储区域如下:1、BSS段( bss segment )通常是指用来存放程序中未初始化的全局变量和静态变量 (这里注意一个问题:一般的书上都会说全局变量和静态变量是会自动初始化的,那么哪来的未初始化的变量呢?变量的初始化可以分为显示初始化和隐式初始化,全局变量和静态变量如果程序员自己不初始化的话的确也会被初始化,那就是不管什么类型都初始化为0,这种没有显示初始化的就...

2019-03-06 17:11:22 535 1

原创 ASIC/FPGA开发流程及工具

电路设计语言: verilog / VHDL电路仿真工具:VCS/ VSS Synopsys仿真综合:DC Compile Synopsys布局布线:candence静态时序分析:Prime time Synopsys测试:DFT Compile Synopsys...

2019-03-06 07:51:08 1033

原创 专利申请的几个阶段

发明专利:提交申请-受理-初审-公布-实质审查-授权。 发明专利一般要1.5年-3年实用新型:提交申请-受理-初审-公布-授权。使用新型一般要7-14个月。备注:1. 实用新型是没有实质审查这个阶段的。2. 专利受理过后才会公布,因此在专利网上是查不到的。...

2019-03-05 07:12:15 2010

原创 结构体应用细节总结

 项目背景:最近在做一个小系统,其中一个模块是一个SOC和基于FreeRTOS的WIFI模组通过UART数据包通信。 遇到的问题:       目前对结构体的认知是struct 后的AFE4300_Event_s是声明结构体用的,  而结构体{}后的AFE4300_Event_t是具体化的结构体对象。       但是在定义结构体的时候又用了:AFE4300_Event_t    AF...

2019-01-08 20:08:47 341 3

原创 快速计算CRC校验(异或)的方法

        在嵌入式的通信协议中,为了提高通信的鲁棒性,经常会对数据帧进行校验(其中一种常用方式是异或)。之前的做法是写 C程序进行校验,并输出结果。其实另一种方式是可以用BCC校验在线计算器进行校验值计算。BCC校验在线计算方式:http://www.ip33.com/bcc.htmlC程序计算方式:#include &lt;stdio.h&gt;unsigned cha...

2019-01-08 17:46:47 8902 1

原创 AFE ADC测量芯片在读取ADC值时,出现读取ADC值恒0的情况

项目背景:        BPA项目, 使用的是一个模拟前端芯片,该AFE集成了24bit的ADC和BIM模块,与主控SOC的通信采用SPI通信。遇到的问题描述:        在读取AD值过程中,发现读出的AD值全部为0,不论是内short模式,还是外load模式。功能如下:      1)开启测量,丢掉前4笔数据(ADC有一个建立的过程,此时AD值还未达到稳定值)。  ...

2019-01-07 20:18:10 3129 2

原创 FreeRTOS临界区应用与总结

项目背景:        做一个测量阻抗脉搏波的设备,设备功能其中之一是采集阻抗信号,通过一个高精度ADC转换为AD值,并将AD值输出。软件模块示例如下:if (CS1259Ready()) //等待ADC转换完成 { Z13Adc = ReadADC(); //转换完成后读取ADC值; printf("%d\t\t",Z13Adc); Z13R...

2019-01-02 15:33:47 3960

原创 关于模拟信号的信噪比分析总结(待完善)

     背景是做一个阻抗脉搏波的项目,大致原理为用高精度的ADC采集人体的阻抗信号,分析阻抗信号的变化和信号特征,从而得到人体的一些参数。例如:       在此信号情形下,想要获取和分析信号的细节,就要对信噪比提出了一个比较高的要求。否则白噪声或者系统噪声就会将一些信号细节淹没,从而影响结果参数的准确性,重复性,一致性等。     因此本文主要是针对信号做信噪比的处理分析。目的是将...

2019-01-01 19:33:09 4593

原创 万用表测交流电压时测出的为有效值还是有效值?

         背景是测量一个阻抗的交流电流大小。IC内部可以产生50Khz的交流正弦信号,交流电流会流经C19,C16,1K或者300R,返回到IC,R16起到了限流的作用,这里需要测量流经R16限流电阻的交流电压的大小。        方法是用万用表交流档测量R16两端的电压,通过I=U/I得出电流大小。实测时,万用表显示的交流电压是一个稳定的值。那么这个值是交流电压的峰峰值还是有效值呢...

2018-12-25 09:49:30 18891 1

原创 蓝牙4.0: Classic Bluetooth 和 Bluetooth Low Energy对比

蓝牙是爱立信于1994年提出的一种短距离无线通讯技术。特点在于:        1)工作在2.4Ghz的ISM频段;        2)可同时传输语音和数据;        3)可 建立临时性的对等连接,设备可分为主设备(Master)和从设备(Slave), 几个设备组成一个皮网(Piconet),其中,只有一个设备为主设备,其余均为从设备,皮网是蓝牙最基本的网络形式。最简单的皮...

2018-12-21 14:38:24 2580

原创 #pragma 用法总结

      现在的编译器中,可以通过命令行参数或IDE菜单修改编译器的一些设置。#pragma把编译器指令放入源代码中。例如:可以让编译器支持某Ç标准。#pragma  c9x on      此外的#pragma还有许多其他用途,例如:1)防止头文件多次编译@pragma once/**************************************1. 在头...

2018-12-17 23:01:44 509

原创 关于阻抗心率信号信噪比问题的解决思路整理

       最近在做一个阻抗心率的项目,原理是利用人体的阻抗,随着血液的循环,会呈现一定的规律性变化,变化过程中会有0.5ohm左右的变化。但是在项目过程中遇到信噪比差的问题。在这里对问题的思路定位做一个总结和知识点的整理。现象如下:正常信号示意图:  测量原理如下: 原因分析:       已经确认了测量芯片的软件配置和硬件电路配置。但是信噪比仍然差。因...

2018-12-12 23:37:19 1304 4

原创 四脚贴片晶振的引脚区分

         最近在使用TI的AFE4300,其ADC需要一个外挂的1M晶振驱动才能工作,因此设计了1M晶振驱动,然而在贴片的过程中,不知道怎么去识别晶振的引脚,因此这里对这种四角的贴片晶振的引脚识别做一个简单的总结。        常见的贴片晶振规格有2.5*2.0mm,3.2*2.5mm,5.0*3.2mm,6.0*3.5mm,5.0*7.0mm。 2脚无源贴片晶振通常要数陶瓷面的较为...

2018-12-12 10:21:36 31585 1

原创 嵌入式C中的预定义宏总结

        在程序设计过程中,经常需要设置预定义宏来返回程序的某些状态,以方便交叉编译和调试,比如用__func__打印该函数和__LINE__打印该行行数,以定位程序中打印该信息的函数和位置:myPrintf(MY_PRINTF_DEBUG,"%s(%d):enFlag = %d\r\n",__func__,__LINE__,userGlobalParameter.encryption...

2018-12-11 07:39:28 207

原创 嵌入式C中的条件编译总结

在程序设计时,可以根据条件编译告诉编译器的条件执行或者忽略代码。例如在配置从机(eg: 模拟前端)的寄存器时,需要确认数据写入是否成功,进行读出和重写!此时可选择性的选择是否重写和重写次数。如下:SendDataToAddr(ADDR_AFE_BIM1,Body_FWR_50KHz);#if(DEBUG_CS1258_REWRITE == 1) uint8 count = ...

2018-12-10 23:17:58 484

原创 关于软件识别下降沿动作一个注意事项总结

项目背景是写一个测量阻抗的ADC芯片(AFE模拟前端)芯片驱动。问题背景:测量原理是该ADC芯片可以测量外接阻容网络的阻抗和相位,将外接阻抗的阻值(模拟量)转化为AD值(数字量),以80hz或者160hz或者320hz输出。并在AD转换完成后拉高GPIOx 25.12us。转换动作如下: 因此在读取AD时,检测识别该GPIOx的下降沿,识别到后说明AD转换完成,可以进行读取数据操作...

2018-12-10 19:51:43 904

原创 关于Kingst VIS 显示内存不足的解决方案

       嵌入式领域中,经常会用到Kingst简易数字逻辑分析仪调试通信协议,或者评估某些进程运算时间。但经常在使用过程中偶然会显示内存不足,此时应该如何解决呢?           当金思拓数字逻辑分析仪显示内存不足时,有时,重新拔插逻辑分析仪器的电源或者重启上位机软件即可。但当重新拔插逻辑分析仪器的电源或者重启上位机软件都无效,还是会显示内存不足时此时由两种解决方法:1)重新换...

2018-12-10 17:39:13 1566

原创 C在程序执行之前,C预处理器会进行哪些操作?

       了解C预处理的一些操作,对C的嵌入式开发的设计,调试,应用都会有很大的帮助,因此这里对C预处理器的一些操作做了一个简单的总结,一是对我接下来的嵌入式设计有一个思路的整理,另一方面也希望对偶然逛到本文的你有帮助。       想要深入的了解,必须解决几个问题。1 . C预处理器负责哪些事情?       1)将符号缩写替换成其表示的内容(ex:#define);    ...

2018-12-05 01:14:34 519

原创 关于数据存储,寻址,内存映射,硬件指针的总结与应用

      最近在做一个测量阻抗心率的算法,背景是基于阻抗测量原理,运用家用人体秤的金属电极片(或者ITO),进行人体心率的检测和测量,达到心率健康检测的目的。应用场景在于家庭健康测量方面。      在算法设计和调试过程中,因为内存映射理解不深刻,硬件指针应用不熟练,过程中走了很多弯路。比如在内存翻PAGE,翻BANK的问题上,由于对直接寻址和间接寻址的理解误差,导致心率算法版本更新迭代时,...

2018-12-04 10:53:50 970

原创 如何理解FreeRTOS中的vTaskDelay(n)

          FreeRTOS提供了一个任务睡眠函数,该函数是一个非常有用的系统API。void vTaskDelay(portTickType xTicksToDelay); //任务睡眠函数          该函数目的在于告诉操作系统,现在无任务在做,请告诉kernel将时间分配给其他任务,并在某个时间点将该任务唤醒。这个时间点就是函数的入参,一般都是以tick为单位。...

2018-11-28 00:06:10 14512

原创 FreeRTOS 简单总结(待完善)

1)如何声明任务函数原型:void ATaskFunction( void *pvParamaters); 返回值必须为无效的,且带有一个空隙指针参数;  任务可以理解为在自己权限范围内的小程序,是一个死循环,不会退出;  没有返回值,决不能出现回报;2)一个任务函数是什么样的(任务描述)?//@func : 如何实现一个任务;void ATaskFunction(void...

2018-11-27 00:51:29 886

原创 ##__VA_ARGS__ 总结

        在嵌入式的交叉编译过程中,经常会用到宏定义控制程序运行模式,或者控制打印模式,提高程序开发和调试效率,比如在某个项目中,设置了几种程序运行模式,控制打印输出:#define MY_PRINTF_NORMAL 0#define MY_PRINTF_MUST 1#define MY_PRINTF_ERROR 2#define MY_PRINTF_DEBUG 3//#...

2018-11-25 17:44:12 6158

原创 嵌入式开发中, \r和\r\n的区别

     在嵌入式开发中,经常会涉及到用UART去打印一些运算中间层数据作为调试,或者是打印输出结果。为了处理数据的方便性,经常会涉及到数据的换行操作。那么在换行过程中\r和\r\n有什么区别呢?在windows系统中:'\r' 回车,回到当前行的行首,而不会换到下一行,如果接着输出的话,本行以前的内容会被逐一覆盖;'\n' 换行,换到当前位置的下一行,而不会回到行首;举个例子:...

2018-11-25 10:13:22 1059

原创 ADC VS参考电压在测量时和AD值的大小对应关系

         背景是这样的,用24位的ADC,外接人体电阻,进行电阻AD值采集,当VS = 2.4V时,体电阻的AD值对应值为9.86 * 10 ^ 5量级,当VS = 2.8V时,体电阻的AD值对应值为7.01 * 10 ^ 5量级。        问题在为什么AD值不一样,且测量同一个外接电阻,VS = 2.4V时AD值比VS = 2.8V大?本文做一个较为深入的整理和分析。分析如...

2018-11-21 14:21:42 12568 3

CP2012串口驱动

串口驱动,在嵌入式系统调试中,运用串口转USB模块时,需要首先装驱动。附件驱动为CP2012 USB to UART. 亲测有效,放心下载。

2019-02-21

电路噪声分析

1. 当电路中存在噪声时,我们应该以什么样的思维框架去分析。文档给出了大致的分析思路。

2018-12-24

SourceInsight4.0破解文件

SourceInsight4.0破解文件,在安装之后按照破解文件中的步骤直接破解即可!亲测绝对有效!

2018-12-10

Linux内存管理总结

1. 程序执行原理:bash就是调用fork()创建bash进程的子进程,该子进程是bash进程的一个副本,子进程通过execv()装在内存,开始执行子进程; 2. 进程通过系统调用访问内核,每个进程理论上都拥有内核空间(1G)和进程空间(3G); 3.进程地址空间分布图(堆栈,BSS段,数据段,文本段); 4. 内存映射;

2018-11-19

TCP协议和UDP协议详解(十分详细)

1.介绍了TCP和UDP的区别; 2. 介绍了TCP和UDP的报文格式及其作用; 3.介绍了其通信机制;

2018-11-15

程序,进程,线程解析

1. 介绍进程概念:为正在运行的程序提供的运行环境。进程是动态的,程序是静态的; 2. 介绍进程的产生,终止,进程之间的通信(管道,共享内存,消息队列),同步(消息队列,信号量)等; 3. 介绍线程,指的是不同于进程,在资源分配的时候除了CPU资源外,不会给线程分配独立的资源,线程所需要的资源需要共享。 4. 每个进程在初始化时,系统都会分配一个ID,成为PID(process id)。 5. 介绍进程的分叉(fork)和线程; 6. 介绍进程之间的通信:管道的概念(两个进程之间的管道通信是要经过内核的); 7. 介绍消息队列:消息队列是内核地址空间中的内部链表,通过内核在各个进程之间传递内容; 8. 介绍信号量:其实是一个计数器,用来控制多个进程共享资源的访问,例如当某个进程对资源进行操作时,信号量可以防止另一个进程去访问该资源; 9.介绍共享内存:指的是多个进程共享一片内存区域,在多个进程之间对内存段进行映射的方式实现内存共享。 10.介绍信号:一个或者多个进程之间的异步信号; 11.介绍线程的建立,属性,优先级等;

2018-11-10

SPI总线组成及工作原理

1. 介绍SPI通信接口及机制; 2.值得注意的是: SPI的缺点之一:SPI的从机是没有应答机制的。 SPI片选时,未被选到的从机出于高阻抗状态;

2018-11-09

UART知识汇总

1. 介绍串行通信(IO口少,但控制程序较复杂)和并行通信(简单,但占用IO口资源多); 2.异步通信,即通信以帧进行传输,帧之间的时间是不固定的。帧=起始位+数据位+奇偶校验位+停止位;“异步”指的是帧之间时间间隔不同。 3.同步通信,异步通信的帧需要用起始位和停止位作为开始和结束标志,占用一定时间。同步的话直接发1-2个同步字符SYN,之后就可以连续,顺序的收发数据了。 3. 串行通信的单工,半双工,全双工; 4. 控制串口的一些汇编驱动指令; 5. 串口的一些多机通信机制(也是通过从机地址发送应答的方式,和I2C是一样的);

2018-11-09

汇编语言程序格式及编程框架

1. 汇编语言程序的建立及汇编过程:编辑-汇编-连接; 2. 汇编伪指令及操作符; 3. 汇编指令介绍;汇编的顺序,分支,循环,跳转,查表,中断等;

2018-11-09

汇编语言执行流程解析

1. 描述了汇编源程序的框架结构,对于汇编编程理解有很大帮助; 2. 对于汇编实现顺序,分支,循环,跳转,查表,宏定义,伪指令等做了详细的解释。

2018-11-09

汇编语言程序基本结构与组成

1. 汇编介绍:机器语言不方便记忆编写,因此有了汇编,不具有通用性和移植性; 2. 介绍指令集的组成,基本格式,程序组成框架等。 3. 介绍伪指令:EQU, ;LABLE, 4. 汇编的顺序,分支,循环,调用实现。

2018-11-09

DHCP基础知识简介(图文)

1. 介绍DHCP的工作模型和工作过程:传输层为UDP,端口为67/68; 2. 介绍客户机(SERVER)请求DHCP服务器IP地址的过程。 3. DHCP协议栈;

2018-11-07

CAN总线协议讲解

备注:资料稍微有点模糊,但不影响学习。 1. 非常详细的介绍了CAN总线相关的知识和应用;

2018-11-05

CAN总线协议原理特点

1. 因强大的可靠性,实时性,灵活性被广泛应用于汽车电子; 2. 一个节点发报文是给另外的全部节点发的,其他节点会基于内容检测是否是发给自己; 3. CAN的报错机制等;

2018-11-05

CAN总线协议入门

1. CAN为多主方式工作,任意节点在任意时刻可向其他节点发送信息,不分主从;CAN节点有不同的优先级;节点之间通过报文实现信息传递;报文有校验,点对点,一点对多点,全局广播的方式。 2. 介绍了CAN通信介质。 3. CAN节点模型; 3. 汽车中CAN总线的实现,类似于芯片的时钟管理。可以走125kbps,150kbps,500kbps,5Mbps等,应用与汽车不同模块; 4. CAN总线协议栈,兼容OSI模型(物理,数据链路,网络,传输,会话,表示层,应用层); 5. CAN总线的电平信号,0-3.5V, 以2.5V为高低电平区分; 6. CAN传输距离和传输速率kbps的关系:位速率越快,传输距离越短; 7. 介绍CAN总线的数据帧结构; 8. CAN总线的显性电平和隐性电平; 只要有一个节点为高,则为显性,只有全部节点为低,总线才为隐性;

2018-11-05

FreeRTOS工作原理

备注:资源清晰度有所欠缺,但是不影响观看,内容对于初学者来说,理解FreeRTOS是非常很有帮助。 1. 多任务操作系统运行机制; 2. 任务的上下文切换,以一个实际的例子说明多任务运行机制; 3. 举了一个实例,说明RTOS运行机制;

2018-11-05

嵌入式实时系统FreeRTOS(经典学习资料)

1. 介绍了硬实时系统化和软实时系统; 2. 介绍了FreeRTOS的代码基本模块:任务,通讯,硬件接口; 3. 介绍任务的运行,挂起,阻塞,就绪状态。 4. 介绍队列的与任务的运行机制,队列的创建,写入,读出灯; 4. 介绍中断与任务的执行机制;介绍二值信号量和计数信号量;介绍中断机制; 5. 介绍资源管理,"互斥"技术(其实使各任务就是尽量不要共享资源),临界区(将任务放在某一特殊区段,此段,会关闭全部中断,避免嵌套引起的共享资源冲突);挂起调度器(保护一段代码区间不被其他任务打断,但中断是使能的,唤醒时间较长);二值信号量(拿到令牌,访问资源,此时其他任务不能访问,用完归还令牌,其他任务才能访问共享资源); 6. 内存管理的申请和释放;

2018-11-05

802.11abgn详细介绍和对比(经典)

1. 对802.11 a , 802.11 b , 802.11 g , 802.11 n , 在工作频率,信道,物理速率,频宽,调制方式等方面做了对比; 2. 对比802.11 n 和802.11 ac 的性能;

2018-11-02

WebSocket图文解析

1. 介绍websocket的定义:实现客户端和服务器端的全双工实时通信,客户端可以给服务器发信息,服务器也可以直接给客户端发信息。而HTTP智能客户端给服务器发信息,服务器不能主动给客户端发信息; 2. websocket 优点,规范,局限性以及使用

2018-11-02

SSL和OPENSSL 资料整理

1. 说明了SSL协议的服务范围:1)认证用户和服务器 2)加密数据放置被窃取 3)保护数据完整性不被篡改; 2. 介绍了openssl:openssl是一个支持SSL认证的服务器,是一个开放源码的自由软件,支持多个操作系统;

2018-11-02

TCP/IP体系结构

1. 介绍TCP/IP 的历史,设计思想; 2. 介绍了OSI模型,TCP/IP协议栈内容和为什么TCP/IP普及度高的原因; 3. 对TCP/IP协议栈的各层做了一个简要的介绍;

2018-11-01

TCP/IP协议栈详细解释(绝对经典!强烈推荐)

1. 介绍了端口(应用进程的地址表示,与IP网络相关联)的定义,介绍了公用端口和临时端口。 2. 介绍了套接字(socket),即应用通信时必须将端口号和IP地址结合起来用,称为套接字(socket)=IP地址(32位)+端口号(16位); 3. 两个主机利用TCP协议握手的过程; 4. TCP协议栈详细解释; 5. 地址和域名解释;

2018-11-01

TCP/IP协议简要介绍

1. 介绍了开放系统互联参考模型OSI(open system internetwork); 包括物理层(为数据链路层提供物理连接),数据链路层(在通信实体 间传输数据包),网络层(通过网络选择适当的路径,实现路由的分发,分组转发灯),传输层(向用户提供端到端服务,屏蔽下层通信细节),会话层(保持计算之间的连接),表示层(进行数据的加密解密,数据压缩恢复,格式变换灯),应用层(实现应用软件服务,如文件,数据,电子邮件等应用)。 2. 介绍了报文(表示层的数据单元), 分组(网络层的数据单元),帧(数据链路层的数据单元)。 3. 介绍了TCP/IP的参考模型:应用层,传输层 ,互联层,主机-网络层; 4.介绍了TCP(transport control protocol):可靠的面向连接协议,允许主机的字节毫无差错的传送到目标主机; 介绍了UDP(user datagram protocol)不可靠的无连接协议,用于不要求分组顺序到达的传输。 5. 介绍了应用层协议比如远程登录,邮件传输,域名系统,网络管理协议,超文本传输协议; 6. 介绍了IP地址(网络号+主机号)(32位,以十进制显示)(网络号和主机号的bit分配按照不同类的地址是不同的); 7. 介绍路由器的功能;

2018-11-01

FreeRTOS经典学习资料

1. 介绍了基础的任务创建,任务管理,任务调度,任务阻塞,任务挂起,任务就绪等任务状态机,优先级及调度方式,优先级改变,删除,抢占式调度; 2. 队列的管理; 3.中断管理; 4.资源管理; 5.内存管理; 6.错误排查等; 4. 队列的管理。

2018-10-30

WIFI协议栈最全面的基础知识培训

资料详细而清晰的讲述了WIFI协议栈,对于WIFI工程师或者相关嵌入式工程师来说是一个非常非常有用的资料。

2018-10-19

WIFI技术培训资料

资料为某通信公司的内部培训资料,拿来学习一下,在这里也共享给大家。 资料主要内容有: 1. WLAN的定义;wireless Fidelity 无线局域网, 2.4Ghz。 2.WLAN标准的制定;IEEE和3GPP; 3.WIFI协议栈; 4.DS 和 FH扩频技术; 5. 组网模式;

2018-10-19

WIFI关键技术

1. IEEE802.11技术简介; 2.802.11n技术特点及核心技术参数解析; 3.802.11n产品技术参数要求;

2018-10-12

WIFI技术简要而全面的介绍

1. 介绍了802.11的进化历史; 2.介绍了WIFI的组网方式:基础网(infrastructure)和自组网(ad-hoc); 3. station 和 access point的概念; 4. OSI参考模型; 5. WIFI协议架构解析; 6. WIFI信道以及信道的划分; 7. TCP(transport control protocal), IP(internet protocal)协议解析; 8. 用户接入过程的认证,关联; 9. WIFI模组通过AT指令进行参数配置方式; 10. WIFI工作模式:透传,命令模式; 11. AT指令集; 12. 上位机配置模组实例;

2018-10-12

华为WIFI培训资料

1. 介绍无线局域网的定义,局域相对于广域,宽带的理解,传输速度的理解; 2. 介绍了IEEE定义的PHY ,MAC层和3GPP定义的组网原则,体系结构; 3. 介绍了802.11 a/b的传输机制; 4. 介绍了WLAN的频谱; 5. 简要介绍了WIFI协议栈,包括PHY层,MAC层,LLC层; 6. 简要介绍了直序列扩频DSSS(DS),跳频扩频 FHSS(FH); 7. 介绍了WIFI 加密认证方式;

2018-10-12

WIFI国家及行业标准

1.介绍WIFI的一些技术缩略语,频段,频带,工作信道,中心频率等; 2.介绍了无线指标要求,如发射功率,发射频谱掩膜,载波抑制等; 3.介绍了WIFI共享秘钥,证书安装,等; 4.介绍了无线接口吞吐量,时延要求,抖动要求,丢包率要求,电磁兼容要求等; 5.介绍了AP扫描,SSID配置,证书安装和鉴别,加解密等;

2018-10-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除