- 博客(28)
- 资源 (4)
- 收藏
- 关注
原创 C语言经典算法汇总
一.冒泡法:排序过程:(1)比较第一个数与第二个数,若为逆序a[0]>a[1],则交换;然 后比较第二个数与第三个数;依次类推,直至第n-1个数和第 n个数比较为止——第一趟冒泡排序,结果最大的数被安置在 最后一个元素位置上(2)对前n-1个数进行第二趟冒泡排序,结果使次大的数被安
2014-03-04 17:59:42
846
转载 什么是真正的实时操作系统
做嵌入式系统开发有一段时间了,做过用于手机平台的嵌入式Linux,也接触过用于交换机、媒体网关平台的VxWorks,实际应用后回过头来看理论,才发现自己理解的肤浅,也发现优快云上好多同学们都对实时、嵌入式这些概念似懂非懂,毕竟如果不做类似的产品,平时接触的机会很少,即使做嵌入式产品开发,基本也是只管调用Platform team封装好的API。所以在此总结一下这些概念,加深自己的理解,同时也给新
2014-03-04 10:48:02
702
原创 SIM卡简介
SIM卡 SIM卡(Subscriber Identity Module)即用户身份模块,除某些特殊情况(例如紧急呼叫),在没有SIM卡时,GSM用户不能接入GSM服务。该模块可以说是GSM用户功能实体,它包含了所有的用户数据,特别是鉴别用户过程和与用户有关的信息。SIM卡应符合ISO7816标准,该标准确定了机电特性和微电路卡功能,常被称为“跳蚤”卡。在Phase2+中GSM建议
2014-01-24 10:01:36
7381
原创 Linux ubuntu下svn的命令使用指南
Svn简介:Svn的全名是Subversion,它使用服务端—客户端的结构,当然服务端与客户端可以都运行在同一台服务器上。在服务端是存放着所有受控制数据的Subversion仓库,另一端是Subversion的客户端程序,管理着受控数据的一部分在本地的映射(称为工作副本)。在这两端之间,是通过各种仓库存取层(RepositoryAccess,简称RA)的多条通道进行访问的。这些通道中,可以通过
2013-12-21 13:51:43
20107
1
转载 REX OS之我见
REX是高通开发出来的一个操作系统,起初它是为了在Inter 80186处理器上应用而开发的,到后来才转变成应用在ARM这种微处理器上。他历经了很多版本,代码也越来越多,功能也越来越完善。REX只用不到5k的ROM存储空间,从前REX系统汇编代码和C代码加起来不过一千多行,不过现在已经超过一万五千行了。在功能提升的背后,不但要有高性能硬件的支持,同时要求系统的设计上也要更合理。 作为
2013-12-21 11:38:38
1909
原创 linux 解压命令大全
.tar 解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)———————————————.gz解压1:gunzip FileName.gz解压2:gzip -d FileName.gz压缩:gzip FileName.tar.gz 和 .tgz解压:tar zxvf
2013-11-25 17:27:37
514
转载 BSP编译问题
拿到BSP后,直接按照《[WinCE50]S3C2440A_Installation Manual_V1.1.pdf》中的方法添加BSP到PB中,添加必要组件并编译。编译后生成六个文件:STEPLDR.nb0, STEPLDR.bin, EBOOT.nb0, EBOOT.bin, NK.nb0, NK.bin。 由于开发板上只有NAND Flash,因此只能使用三星的stepstone技术
2011-11-03 11:03:35
1754
原创 REX。。。。。
<br />REX是高通开发出来的一个操作系统,起初它是为了在Inter 80186处理器上应用而开发的,到后来才转变成应用在ARM这种微处理器上。他历经了很多版本,代码也越来越多,功能也越来越完善。REX只用不到5k的ROM存储空间,从前REX系统汇编代码和C代码加起来不过一千多行,不过现在已经超过一万五千行了。在功能提升的背后,不但要有高性能硬件的支持,同时要求系统的设计上也要更合理。<br /> 作为一个实时的嵌入式操作系统,REX有几个比较显著的特点:简单、高效、抢占式、多任务、实时。<
2011-05-30 17:32:00
8561
原创 search_pb
<br />dsat_result_enum_type dsatcat_exec_search_gmd(dsat_mode_enum_type mode, /* AT command mode */const dsati_cmd_type *cmd_table, /* Ptr to cmd in command table */const tokens_struct_type *tok_ptr, /* Command tokens from parser */dsm_item_type
2011-04-19 20:30:00
891
原创 AT指令的处理函数(相应NV项)
<br />dsat_result_enum_type dsatvend_exec_mycmd_cmd(dsat_mode_enum_type mode, /* AT command mode */const dsati_cmd_type *cmd_table, /* Ptr to cmd in command table */const tokens_struct_type *tok_ptr, /* Command tokens from parser */dsm_item_type
2011-04-11 17:29:00
2389
原创 rex操作系统使用手册
<br />Real-Time Executive (REX) 使用手册 <br /> <br /><br /> <br />第一章 序言 <br />1.1 目的 <br />本文描述了基于 ARM 平台的 Real-Time Executive ( REX )操作系统特性及使用方法。 <br />REX 是专为小型嵌入式系统设计的简单高效的抢占式多任务实时操作系统( RTOS )。该系统最初是为 Intel80186 处理器设计的,随后被移植到 ARM 处理器。本文提供了 REX 的指
2011-03-23 17:08:00
2252
原创 rex操作系统使用手册
<br />Real-Time Executive (REX) 使用手册 <br /> <br /><br /> <br />第一章 序言 <br />1.1 目的 <br />本文描述了基于 ARM 平台的 Real-Time Executive ( REX )操作系统特性及使用方法。 <br />REX 是专为小型嵌入式系统设计的简单高效的抢占式多任务实时操作系统( RTOS )。该系统最初是为 Intel80186 处理器设计的,随后被移植到 ARM 处理器。本文提供了 REX 的指
2011-03-23 16:49:00
1206
转载 关于多线程的一个例子
<br />例程5 MultiThread5<br /><br />为了与Win32 API对照,我们使用MFC 类库编程实现例程3 MultiThread3。建立一个基于对话框的工程MultiThread5,在对话框IDD_MULTITHREAD5_DIALOG中加入一个编辑框IDC_MILLISECOND,一个按钮IDC_START,标题为“开始” ,一个进度条IDC_PROGRESS1; 打开ClassWizard,为编辑框IDC_MILLISECOND添加int型变量m_nMilliSecond,为
2011-03-17 17:21:00
748
原创 VC如何创建一个新的线程
AfxBeginThread(DialThread,this); // 开始一个新线程,DialThread 为线程控制函数,在头文件定义如下: static UINT DialThread(LPVOID pvThread); 随后在线程控制函数中如此这般,调用线程实现函数 _Dial() UINT CRasThread::DialThread(LPVOID pvThread) { // Ï߳̿ØÖƺ¯Êý CRasThread *pThread
2011-03-17 17:19:00
5991
原创 如何使光标到指定位置
<br />((CEdit *)GetDlgItem(IDC_EDIT1))->SetSel(m_recievedate.GetLength(),m_recievedate.GetLength(),FALSE);
2011-03-14 11:51:00
737
转载 UpdateData()用法以及编辑框的基本操作
<br />一、总结UpdateData()函数<br />UpdateData(true);//用于将屏幕上控件中的数据交换到变量中。<br />UpdateData(false);//用于将数据在屏幕中对应控件中显示出来。<br /> 当你使用了ClassWizard建立了控件和变量之间的联系后:当你修改了变量的值,而希望对话框控件更新显示,就应该在修改变量后调用UpdateData(FALSE);如果你希望知道用户在对话框中到底输入了什么,就应该在访问变量前调用UpdateData(TRU
2011-03-14 11:02:00
619
原创 MFC利用回车键代替按键
<br />BOOL CSerialPoratDlg::PreTranslateMessage(MSG* pMsg) { // TODO: Add your specialized code here and/or call the base class if (pMsg->message==WM_KEYDOWN) { if (pMsg->wParam==VK_RETURN) { OnSendMessage(); OnRecv(); return true
2011-03-14 09:49:00
793
原创 CString类型的一些操作
之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必 担心内存是否足够、字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数情况下(甚至是100%)的需要。我们可以用 = 进行赋值操作,== 进行比较,+ 做串联(是不是很简单?)。我们尽可以把它看成是C++的基本数据类型。 首先,为了在我们的程序中使用string类型,我们必须包含头文件 <string>。如下: #include <string> //注意这里不是string.h
2011-03-11 17:54:00
798
转载 win32串口编程
在工业控制中,工控机(一般都基于Windows平台)经常需要与智能仪表通过串口进行通信。串口通信方便易行,应用广泛。一般情况下,工控机和各智能仪表通过RS485总线进行通信。RS485的通信方式是半双工的,只能由作为主节点的工控PC机依次轮询网络上的各智能控制单元子节点。每次通信都是由PC机通过串口向智能控制单元发布命令,智能控制单元在接收到正确的命令后作出应答。 在Win32下,可以使用两种编程方式实现串口通信,其一是使用ActiveX控件,这种方法程序简单,但欠灵活。其二是调用Windows的API函
2011-03-11 17:01:00
485
原创 VC单文档点击菜单弹出对话框
1.建立对话框;2.利用类向导为新建的对话框建立新的类,生成对应的.cpp,.h文件;3.菜单映射相应:添加相应函数 CDialog* dlg = new CDialog; dlg->Create(MAKEINTRESOURCE(IDD_SECTION));//此处ID要改为对话框的ID dlg->ShowWindow(1);4.添加对话框的头文件;
2011-02-25 15:37:00
2740
原创 VC单文档的三角形绘制
void CMenuTestView::OnCircle() { // TODO: Add your command handler code here CDC *pDC=GetDC(); POINT pt[]={10,10,40,40,10,40}; pDC->Polygon(pt,3); ReleaseDC(pDC);}
2011-02-25 13:40:00
1001
原创 mymemcpy
<br />#include <stdio.h>#include <stdlib.h>char * mymemcpy(char* dest, char* source, size_t count);int main(void){ char str[] = "0123456789"; mymemcpy( str+3, str+1, 5 ); printf("here is : %s",str); return 0;}char* mymemcpy(cha
2011-02-10 00:27:00
339
原创 将字符串尾部的空格去掉+字符串右对齐
<br />#include <stdio.h>#include <string.h>int main(void){ char i[20]="arlen "; char str[20]; for (int j=strlen(i)-1;j>=0;j--) { if (i[j]==' '||i[j]=='/t') { i[j]='/0'; } } strcpy(str,i); sprintf(i, "%*s",sizeof(i),str);
2011-02-05 14:42:00
614
原创 strcpy,sprintf,memcpy的区别, Sizeof与Strlen的区别
<br />strcpy,sprintf,memcpy的区别<br />strcpy 函数操作的对象是 字符串,完成 从 源字符串 到 目的字符串 的 拷贝 功能。<br /><br />snprintf 函数操作的对象 不限于字符串:虽然目的对象是字符串,但是源对象可以是字符串、也可以是任意基本类型的数据。这个函数主要用来实现 (字符串或基本数据类型)向 字符串 的转换 功能。如果源对象是字符串,并且指定 %s 格式符,也可实现字符串拷贝功能。<br /><br />memcpy 函数顾名思义就是 内存拷
2011-02-05 13:37:00
2385
原创 不调用库函数,实现strcpy函数,strcat函数。
#include #include #include #include int main(void){ char str1[50]="You are "; char str2[50]; char * strCpy(char * strDest,const char * strSrc); char * strCat(char * strone,const char * strtwo); printf("please input your name:"); scanf
2011-02-03 15:37:00
3564
2
转载 #pragma的作用
<br />在编写程序的时候,我们经常要用到#pragma指令来设定编译器的状态或者是指示编译器完成一些特定的动作. <br />下面介绍了一下该指令的一些常用参数,希望对大家有所帮助! <br /><br />一. message 参数。 <br /><br />message <br />它能够在编译信息输出窗 <br />口中输出相应的信息,这对于源代码信息的控制是非常重要的。其使用方法为: <br /><br />#pragma message(“消息文本”)
2011-02-01 00:24:00
583
原创 基本的数据类型转换
1.强制转换:float x,y;(int)(x+y);如果一个运算符两边的运算数类型不同,先要将其转换为相同的类型,即较低类型转换为较高类型,然后再参加运算 double ←── float 高 ↑ long ↑ unsigned ↑ int ←── char,short 低 2.函数转变itoa(int, str, 10)将整数转换为字符串 gcvt(float/double,10,str)将浮点数转换为字符串
2011-01-31 12:55:00
301
高通REX 系统 第三章
2019-03-01
高通REX系统 第二章
2019-03-01
项目经理应该知道的97件事
2012-02-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人