自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(69)
  • 收藏
  • 关注

转载 ARP数据包

结构ether_header定义了以太网帧首部;结构arphdr定义了其后的5个字段,其信息用于在任何类型的介质上传送ARP请求和回答;ether_arp结构除了包含arphdr结构外,还包含源主机和目的主机的地址。定义常量#define EPT_IP 0x0800 /* type: IP */#define EPT_ARP0x0806 /* ty...

2018-03-05 21:31:00 575

转载 透明传输 非透明传输

透明数据传输是指:上位机与模块进行信息交换的数据格式,没有像指令字头、结束符等数据包信息,只要上位机串口有数据输出,模块就把串口的数据以无线方式编码发送,当接收模块接收到发射模块发送的无线数据信号后进行解码,把解码后的数据按发送端的格式从串口输出。也就是说模块对使用者是开放的,透明的,实际上,在点对多点的组网通信中,我们完全可以将无线数据透明传输方式等同于有线连接的总线方式。不同点是无线...

2016-12-13 10:08:00 1479

转载 TCP\UDP链接的异同

简单的说TCP与UDP的区别是有无连接状态。TCP是有连接状态的,而UDP没有,所以TCP是一种比较安全的通讯协议,而UDP则比较方便TCP 127.0.0.1:1026 0.0.0.0:0 LISTENINGTCP 是传输协议 TCP是主动连接 网页什么的用TCP(貌似)UDP也是传输协议 UDP迂回连接 QQ就用UDP (貌似)127.0.0.1 是本地回环地址1026...

2016-12-09 16:06:00 138

转载 环形 缓冲区《转自数码之家》

1.环形缓冲区,命令不容易丢失2.缓冲区大小可自定义3.移植改写方便看代码://宏定义//系统可修改参数宏定义#define BUFFER_SIEZ 64//控制命令定义#define COMMUNCIATE 0#define SET_SYSTEM_CAL_FULL 1#define SET_SYSTEM_CAL_MV_V 2#define SET_SYSTEM_OL 3#define ...

2016-11-25 14:18:00 125

转载 arm的一些概念(ARM7、Cortex-M的区别)

ARM7:ARMv4架构,ARM9:ARMv5架构,ARM11:ARMv6架构,ARM-Cortex 系列:ARMv7架构。 ARM7没有MMU(内存管理单元),只能叫做MCU(微控制器),不能运行诸如Linux、WinCE等这些现代的多用户多进程操作系统,因为运行这些系统需要MMU,才能给每个用户进程分配进程自己独立的地址空间。ucOS、ucLinux这些精简实时的RTOS不需要...

2016-07-27 11:20:00 102

转载 ARM内核和架构都是什么意思,它们到底是什么关系?

ARM产品越来越丰富,命名也越来越多。很多朋友提问:ARM内核和架构都是什么意思?内核和架构的关系是什么?比如ARMv7架构,这个架构指的是什么?小编选出了几个精彩回答!希望对嵌友们在选择设计电路时有所帮助~1.ARM内核:从ARM7、ARM9到Cortex-A7、A8、A9、A12、A15再到Cortex-A53、A57等,总之不同版本 ARM 有不同的想法。比如为高速度设计...

2016-07-27 10:51:00 99

转载 C语言的算法--------二分法查找

int find(int n,int a[],int l){int low=0;int high=l-1;int middle=0;while(low<high){middle=(low+high)>>1;if(n==a[middle]){printf("%d,%d",n,middle);return 1;}else if(n>a[middle])low...

2016-06-13 09:50:00 152

转载 栈的讲解 和 栈的生长方向 源代码技巧分析,简直没SEI 啦

函数的局部变量,都是存放在"栈"里面,栈的英文是:STACK.STACK的大小,我们可以在stm32的启动文件里面设置,以战舰stm32开发板为例,在startup_stm32f10x_hd.s里面,开头就有:Stack_Size EQU 0x00000800表示栈大小是0X800,也就是2048字节.这样,CPU处理任务的时候,函数局部变量做多可占用的大小就是:204...

2016-05-23 10:29:00 103

转载 C语言到底怎么分配空间

程序分为:代码区、数据区、bss区、堆区、栈区。平时常用区分的是代码区、堆区、栈区。下面加上例子区分一下。3代码区顾名思义就是存放代码的,里面的内容是不可以修改的。例如你定义了一个变量char *buff = "abcdef";这个char型指针指向了代码区,这个指针里面的数据只可以被读取不可以别修改,因为指针指向了代码区,如果你继续往这个...

2016-05-21 15:04:00 205

转载 C语言结构体占用空间内存大小解析

结构体的数据类型的有点我们就不啰嗦了,直接来看相同数据结构体的几种书写的格式吧。格式一:[cpp]view plaincopy01.structtagPhone02.{03.charA;04.intB;05.shortC;...

2016-05-21 13:59:00 322

转载 c程序代码的内存布局(学好C的基础)

一个程序本质上都是由 BSS 段、data段、text段三个组成的。这样的概念在当前的计算机程序设计中是很重要的一个基本概念,而且在嵌入式系统的设计中也非常重要,牵涉到嵌入式系统运行时的内存大小分配,存储单元占用空间大小的问题。BSS段:在采用段式内存管理的架构中,BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域。BSS是英文Block S...

2016-05-21 13:27:00 138

转载 UCOS 信号量的初值问题

当 pend请求发出的时候信号量的值减1,当post的时候信号量的值加1,信号量的值0跟1分别是用来同步跟互斥的,什么是同步,什么是互斥呢。。。假设你把信号量的值设为0,有A,B连个任务,当A发出pend请求的时候它发现此事的信号量值为0就把它减1然后挂起等待,等待到什么时候呢?等待任务B执行post操作把信号量的值加1然后唤醒进程A,然后两个进程同步并发执行。。。通俗点解释就是任务A执...

2016-05-20 15:22:00 474

转载 UCOS 请求任务删除函数 及其应用

有时候,如果任务A拥有内存缓冲区或信号量之类的资源,而任务B想删除该任务,这些资源就可能由于没被释放而丢失。在这种情况下,用户可以想法子让拥有这些资源的任务在使用完资源后,先释放资源,再删除自己。用户可以通过OSTaskDelReq()函数来完成该功能。函数名OSTaskDelReq参数Prio要删除任务的优先级(0x...

2016-05-20 09:57:00 339

转载 RTC 之 ARM7 2136 ARM9之2410

RTC 的原理都是一样的,但计数过程中的计数换算却不相同:ARM9 直接出来的是BCD 码,也就是0x30 就是30秒,没有换算了,而ARM7则不同,他是直接计数的,十进制的30秒则是0x1E,,,,转载于:https://www.cnblogs.com/locean/p/5505965.html...

2016-05-18 17:30:00 89

转载 C语言编程的进制问题问题

在我们的编译器,我用的是ADS 开发平台,现在RTC模块编程时,2410作为上位机,如下代码:n = rBCDDATE;if(n==1) time->day =0x31 ;波斯历的日期与我们的不同,他们是123456月31天,789 10 11 月30天,12月29或28天天,因此与我们的RTC模块不兼容 只能改变算法,如上代码就是改变的一部分,当4.30号是 ,我...

2016-05-11 17:33:00 102

转载 启动任务StartTask() 发送完消息队列 自己删除,接收方一直显示数据 用OSQFlush(Str_Q); //清空消息队列 下面纠结接收不到了 哈哈...

在建立工程的时候,启动任务StartTask() 启动了任务MyTask(),也建立了消息队列,然后发送消息队列,发送完自己删除了自己,在接收方一直能接受到数据???为何???因为我们的消息队列未清空,消息队列里面一直有数据呢,当然在执行MyTask 的任务的时候,MyTask 里面有这句等待消息队列的语句ss=OSQPend(Str_Q,0,&err); ...

2016-05-07 16:21:00 285

转载 消息队列的一些奇葩问题

1、新建立的消息队列,两个任务通信过程中,一个发送消息队列,另一个任务等待消息队列的 时候,这个过程一定要配套出现,就是按套路出牌。怎么说????:      假如没有按套路,第一种情况:任务一 OSQPostFront(Str_Q,s100); 发送了,消息队列,勉强程序能跑起来,但这不是 正规出牌套路,你发送了消息,没人搭理你,,,发这个有什么用,失去意义了。   ...

2016-05-05 16:52:00 99

转载 UCOS 杂项 笔记

1. 建立任务和建立数据队列 哪个先建立?  经过试验得知,数据队列和任务的建立先后没有顺序,都可以正常运行.2.关于主函数的面试问题。主函数写法有: int main() 和void main()int main() 表示该函数必须有返回值,即程序实现中一定要有return xx;字样void main() 表示函数不需要返回值,一定不能有...

2016-05-03 17:24:00 107

转载 UCOS 堆栈大小 计算 (堆栈的决定性因素)

决定栈空间的大小,不仅需要计算任务本身的需求(局部变量、函数调用等),还要计算最多中断嵌套层数(保存寄存器、中断服务程序中局部变量等)原文地址:uCOS任务堆栈的深入分析.作者:jiecou堆栈作用的就是用来保存局部变量,从实质上讲也就是将CPU寄存器的值保存到RAM中。在uCOS中,每一个任务都有一个独立的任务堆栈。为了深入理解任务堆栈的作用,不妨分析任务...

2016-04-27 13:27:00 925

转载 OSTaskCreateExt() 建立任务

OSTaskCreateExt()建立任务NT8U OSTaskCreateExt (void(*task)(void *pd),void*pdata,OS_STK *ptos,...

2016-04-26 16:58:00 287

转载 统计任务的真正运行原理《转载》

在百度里看到张连聘文章,对ucos的两个系统任务分析的很恰当,就是最后边一段观点我不太认同,在此非常感谢张连聘。先把ucosii中的原文写在这,然后再说一下我的具体理解(下面有我的理解部分)。我觉得这篇文章对ucos的两个系统任务分析的很恰当,就是最后边一段观点我不太认同,在此非常感谢张连聘。先把ucosii中的原文写在这,然后再说一下我的具体理解。μC/OS-Ⅱ有...

2016-04-23 16:51:00 150

转载 UCOS 内存管理理解 创建任务

OS_MEM *OSMemCreate (void*addr, INT32U nblks, INT32U blksize, INT8U *err) {..............................................plink = (void**)addr;/* Create linked list of free memory bl...

2016-04-22 17:00:00 92

转载 二维指针*(void **)的研究(uC/OS-II案例) 《转载》

uC/OS-II内存管理函数内最难理解的部分就是二维指针,本文以图文并茂的方式对二维指针进行了详细分析与讲解。看完本文,相信对C里面指针的概念又会有进一步的认识。一、OSMemCreate( ) 函数中有如下语句:OS_MEM *pmem;INT8U *pblk;void **plink;INT32U i;...

2016-04-22 16:49:00 175

转载 ucos 创建 空闲任务的目的

几乎任何操作系统都需要有空闲任务。因为CPU(提供CPU级休眠的不算)没办法停下来,尤其是嵌入式系统这一块。CPU停下来的唯一情况就是断电了,而要保持操作系统任何时候都能及时的对外做出响应,就必须有一个任务在那等着,这个任务就是Idle,大部分操作系统上都需要有这个任务。普通的CPU如果停下来,就收不到任何外部中断或者别的东西了,跟死机没区别,所以CPU不能停。当然了,也有能进入省电模式...

2016-04-15 10:33:00 442

转载 UCOS 信号量

uCOS-II信号量OSSemCreate(0)和OSSemCreate(1)详解(2014-04-22 18:04:18)转载▼标签:it分类:操作系统在ucos-II中,为了实现任务之间的同步,用到的同步机制有:信号量,邮箱和消息队列。其中这里我主要说下对信号量的使用经验。信号量在创建时,调用O...

2016-03-24 11:25:00 142

转载 ocos 信号量

信号量分为 :声明信号量、互斥信号量转: ucos-ii学习笔记——信号量的原理ucos-ii学习笔记——信号量的原理及使用#include"INCLUDES.h"#defineTASK_STK_SIZE512char*s1="MyTask";char...

2016-03-24 11:22:00 262

转载 C 语言 输入字符串 并计算输入的字符的长度

int main(void){ char a[50];int i=0;char *j;gets(a);//输入字符串j=a;while(*j!='\0'){j++;//指针指向下一个数组字符i++;}printf("字符串为%s,字符串的长度为%d\n\n\n",a,i); return 0;}转载于:https://www.cnblogs.com/locean/p/52...

2016-03-15 16:36:00 3241

转载 C 语言简历一个文件夹 并自己输入字符 来取文件夹名字

int main(void){ FILE *fp; char ch,filename[10]; scanf("%s",filename); if((fp=fopen(filename,"w"))==NULL) { printf("cannot open file\n"); exit(0); } ch=getchar(); ch=getchar(); while(ch!...

2016-03-15 14:22:00 112

转载 C语言 创建一个 txt 文件 bin输入字符 保存文件在工作文件夹里

int main(void){ char s[70]; FILE *fp; fp=fopen("123.txt","r"); if((fp=fopen("123.txt","w"))==NULL) //if 语句就是创建了一个空的.txt文件 { printf("Open the file failure...\n"); ...

2016-03-15 14:01:00 536

转载 C语言 之 printf () 函数你真的会用吗?

main(){inti=8;printf("%d%d%d%d%d%d",++i,--i,i++,i--,-i++,-i--);}运行结果8778-7-8例2main(){inti=8;printf("%d",++i);printf("%d",--i);printf("%d",i+...

2016-03-15 09:43:00 123

转载 C 语言字符 和字符串输出

int main(void){ char ch; char str[80]; printf("Input a string: "); //先输入字符串 gets(str);//get() put() 这两个函数并列使用,前者就是从案件获取按键值, 后者是显示输出 puts(str);printf("Input a character: "); scanf...

2016-03-15 09:42:00 64

转载 C 小写字母编程大写并输出

main(){ FILE *fp; char str[100],filename[10]; int i=0;if((fp=fopen("test","w"))==NULL) //{printf("cnnot open file\n");exit(0);}printf("lease input a string:\n");gets(str);while(str[i]!='!'...

2016-03-14 16:33:00 230

转载 C语言计算机器运行时间

//计算机器运行时间long i = 10000000L;clock_t start, finish;double duration;//测量一个事件持续的时间printf( "Time to do %ld empty loops is ", i) ;start = clock();while( i-- );finish = clock();duration = (...

2016-03-12 11:54:00 141

转载 C 猜数游戏

char c; clock_t start,end; time_t a,b; double var; int i,guess; srand(time(NULL));loop: printf("DO YOU WANT TO PLAY IT .('y' or 'n')\n"); while((c=getchar())=='y') { i=rand()%10...

2016-03-12 11:53:00 66

转载 C 产生随机码 (输入数字来产生)

#include <stdio.h>#include <stdlib.h>main(){unsigned int seed; /*申明初始化器的种子,注意是unsigned int 型的*/int k;printf("Enter a positive integer seed value: \n");scanf("%u",&amp...

2016-03-11 16:18:00 83

转载 C 产生随机码

#include<stdio.h>#include<malloc.h>#include<conio.h>#include<stdlib.h>#include "math.h"#include"time.h"#define NULL 0main(){float a;srand(123456); ...

2016-03-11 16:13:00 71

转载 C 语言链表操作例程 (待完善)

#include<stdio.h>#include<malloc.h>#include<conio.h>#include<stdlib.h>#include "math.h"#define NULL 0#define LEN sizeof(struct cle) struct cle { int num; struct cle *nex...

2016-03-11 10:36:00 105

转载 C 带指针样式的时钟

#include <stdio.h> #include <malloc.h>#include<graphics.h>#include<conio.h> #define LEN sizeof(struct student)#include "math.h"#define PI 3.1415926 void Draw(int hou...

2016-02-27 16:29:00 196

转载 C语言(按键获取与函数)

举一个简单的例子,如果有按键,就输出相关按键。否则,输出“.”。每隔 100 毫秒输出一次。按 ESC 退出。注:ESC 的 ASCII 码是 27。#include <stdio.h> #include <malloc.h>#include<graphics.h>#include<conio.h> #define LEN si...

2016-02-27 14:28:00 2183

转载 C语言的画图(圆形动画)

#include <stdio.h> #include <malloc.h>#include<graphics.h> #define LEN sizeof(struct student)#include "math.h"#define PI 3.1415926void main() {initgraph(680,680);while(1...

2016-02-27 14:19:00 422

空空如也

空空如也

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

TA关注的人

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