- 博客(93)
- 资源 (30)
- 问答 (1)
- 收藏
- 关注
原创 typedef 函数指针用法
//PFunction是函数指针类型(该指针类型指向返回值类型为int,参数类型为int的函数)的一个typedef-name。typedef int (*PFunction)(char,int);// pfun是一个指向函数的指针,该函数的参数是char、int,返回intPFunction pfun;...
2021-05-18 15:25:19 164
原创 Visual studio Code增加头文件路径
1.安装 C/C++扩展2.在c_cpp_properties.json设置路径3.设置保存后,c文件中的头文件可以跳转
2021-05-12 11:26:02 812
转载 CString 转换成TCHAR *的方法
方法一,使用强制转换。例如:CString theString( "This is a test" );LPTSTR lpsz =(LPTSTR)(LPCTSTR)theString; 方法二,使用strcpy。例如:CString theString( "This is a test" );LPTSTR lpsz = new TCHAR[theString.G
2014-12-31 10:10:01 1304
原创 对话框修改左上角的图标和任务栏里图标
在对话框构造函数中 1 CTestDlg::CTestDlg(CWnd* pParent /*=NULL*/)2 : CDialog(CTestDlg::IDD, pParent)3 {4 m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);5 } 改过后: 1 CTestDlg::CTestDlg(CWnd*
2013-09-17 23:04:49 1836
转载 关于UNION联合体
原题目:-------------------------------------------------------------------------------------------------------------#include using namespace std ;union{ unsigned char a; unsigned int i
2012-10-17 10:36:03 634
原创 地址与指针
#include#includeusing namespace std;void main(){int *pa=NULL;int *pb=pa+15;printf("%x",pb);} 输出结果是3cint *pa=NULL; //pa指向空,地址为0x00000000int *pb=pa+15; //pb的地址为pa向后移动15个位置(pa、pb指
2012-10-17 10:31:23 483
转载 sizeof
《程序员面试宝典》看到了sizeof(string)这个问题。string strArr1[]={"Trend", "Micro", "Soft"};sizeof(strArr1)=12关于sizeof(string),今天看那本面试宝典的时候看到这个表达式,有点吃惊,书上写着sizeof(string)=4;当时很纳闷,难道分配4个字节大小的内存给string吗?查阅了相关资料得出结
2012-09-01 20:40:45 635
转载 宏定义中的参数需要加括号的原因
加括号是为了处理表达式参数(即宏的参数可能是个算法表达式)时不出错,因为宏替换就是文本替换,所以如果有以下情况:#define COM(A,B) (A)*(B)那么COM(6+5,3)这个调用会怎么替换呢?它会换成这样:(6+5)*(3)显然这是和COM宏的意图一致的,但是如是去掉了定义中括号,即写成这样:#define COM(A,B) A*B那么
2012-08-29 10:29:37 2997 1
原创 如何解释 #define FIND(struc, e) (size_t) &(((struc*) 0)->e)
用一个宏定义FIND求一个结构体struc里某个变量相对struc的偏移量。struct struc{ int a;char b[20];double ccc;};则 struc studentFIND(student,a);//等于0FIND(student,b);//等于4答案:#define FIND(struc, e) (size_t) &(((s
2012-08-29 10:16:03 2193
原创 strlen与sizeof区别
strlen用来求字符串的长度用的而sizeof是用来求指定变量或者变量类型等所占内存大小用的比如strlen("nihao")它的结果是5而sizeof(int)它的结果是4也就是说int型占四个字节 char str[20]="0123456789";int a=strlen(str); //a=10;int b=sizeof(str); //而b=20;
2012-08-28 16:31:51 504
原创 printf函数
#includeint main(){int a = 3;printf("%d,%d",a,a++);//输出 4 3return 0;}printf函数是从左往右读取,然后将先读取放到栈底,最后读取的放在栈顶,处理时候是从栈顶开始的,所有我们看见的结果是,从右边开始处理的
2012-08-28 16:16:24 415
转载 PDU短信的编码一般规则
目前,发送短消息常用Text和PDU(Protocol Data Unit,协议数据单元)模式。使用Text模式收发短信代码简单,实现起来十分容易,但最大的缺点是不能收发中文短信;而PDU模式不仅支持中文短信,也能发送英文短信。PDU模式收发短信可以使用3种编码:7-bit、8-bit和UCS2编码。7-bit编码用于发送普通的ASCII字符,8-bit编码通常用于发送数据消息,UCS2编码用于发
2012-07-30 16:40:03 822
转载 GSM模块发送短信
一、PDU格式发送短信用单片机发送PDU格式的短消息1.准备 待发送内容:二进制数据 0xFF 0x00 0xA0 0x052.过程 采用PDU格式发送过程: 组织PDU格式的二进制数据包--->转换成ASCII格式的PDU数据包-->开始发送短消息 2.1 组织PDU格式的二进
2012-07-27 21:55:13 4004
转载 STM32串口实验
目录1实验要求2实验目的3实验分析4开发板原理图设计5硬件知识点5.1USART5.1.1USART内部结构5.1.1.1引脚定义5.1.1.2寄存器5.1.1.3控制逻辑5.1.2USART寄存器描述5.1.2.1USART_SR(Status register)状态寄存器5.1.2.2USART_DR (Data Register)数据寄存器5.
2012-07-24 11:27:49 13654 2
转载 typedef struct与struct的区别
1. 基本解释 typedef为C语言的关键字,作用是为一种数据类型定义一个新名字。这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型(struct等)。 在编程中使用typedef目的一般有两个,一个是给变量一个易记且意义明确的新名字,另一个是简化一些比较复杂的类型声明。 至于typedef有什么微妙之处,请你接着看下面对几个问题的具体阐述。 2.
2012-07-23 10:57:19 512
转载 1602程序
#include#include#include#define uchar unsigned char#define uint unsigned int#define D_port P0 //设置端口code char table[]="go for a
2011-10-11 10:59:05 1986
转载 飞思卡尔ATD模块
S12XS系列MCU的ATD模块有27个寄存器,六个转换控制寄存器,两个转换状态寄存器,一个比较使能寄存器,一个比较方式寄存器和16个转换结果寄存器,附上一段例程void ATD_init(void) { ATD0CTL1=0x0f; //选择8位转换
2011-10-11 10:58:01 5124
转载 飞思卡尔PWM模块
产生PWM波形的方法主要有两种,软件输出比较和PWM硬件模块,利用飞思卡尔的内部资源可以很随意的去控制输出波形,通过一些寄存器的设置可以达到对波形的控制,主要用到的寄存器有通道的使能、极性的设置,对齐方式,周期和脉宽的初始化,对时钟源的分频,主要不好理解的是有关时钟的分频,先通过
2011-10-11 10:53:37 7085 3
原创 共模电感
共模电感的滤波电路,La和Lb就是共模电感线圈。这两个线圈绕在同一铁芯上,匝数和相位都相同(绕制反向)。这样,当电路中的正常电流流经共模电感时,电流在同相位绕制的电感线圈中产生反向的磁场而相互抵消,此时正常信号电流主要受线圈电阻的影响(和少量因漏感造成的阻尼);当有共模电
2011-10-09 08:48:07 1597
原创 VC串口
12. 4一个通信演示程序 为了使读者更好地掌握本章的概念,这里举一个具体实例来说明问题。如图12.1所示,例子程序名为Terminal,是一个简单的TTY终端仿真程序。读者可以用该程序打开一个串行口,该程序会把用户的键盘输入发送给串行口,并把从串口接收到的字符显示在视
2011-09-22 17:28:55 1400
原创 放大电路
1.霍尔元件测速电路2.电压跟随+差分放大电路 电压跟随器的显著特点就是,输入阻抗高,而输出阻抗低电压跟随器起缓冲、隔离、提高带载能力的作用
2011-09-20 16:48:06 1196
原创 JN5139挂载传感器 485调试
工作总结(1)在原来基础上加了485芯片,DE和RE端接到了DIO8,其余接到5139的串口1,485通信是要控制好,DIO8高电平使能发送数据,DIO8低电平使能接收数据。在调试485芯片时遇到麻烦,主要问题是DIO8接到了485的DE和RE,对于DIO8的控制没有做好
2011-09-19 10:46:18 772
原创 程序2011.8.6
1.协调器/**************************************************************************** * * MODULE: WSN - Coordinator * * COMPONEN
2011-08-06 15:50:42 677
原创 程序1
1.下边这个程序是router中的程序PRIVATE void vSendData(void){ const uint16 SensornameNO = 1 AF_Transaction_s asTransaction[1]; //发送到公共节
2011-08-03 14:52:03 562
原创 0欧姆电阻
0欧姆电阻的作用 1.在电路中没有任何功能,只是在PCB上为了调试方便或兼容设计等原因。 2.可以做跳线用,如果某段线路不用,直接不贴该电阻即可(不影响外观) 3.在匹配电路参数不确定的时候,以0欧姆代替,实际调试的时候,确定参数,再以具体数值的元件代替。 4.
2011-07-30 15:16:28 529
转载 C语言的那些小秘密之字节对齐
可能有不少读者会问,字节对齐有必要拿出来单独写一篇博客嘛?我觉得是很有必要,但是它却是被很多人所忽视的一个重点。那么我们使用字节对齐的作用和原因是什么呢?由于硬件平台之间对存储空间的处理上是有很大不同的,一些平台对某些特定类型的数据只能从某些特定地址开始存取,如通常有些架构的CP
2011-07-27 11:24:24 667
转载 电流检测电路
摘要:MAX471/MAX472是MAXIM公司生产的精密高端电流检测放大器,利用该器件可以实现以地为参考的电流/电压的转换,本文介绍了用MAX471/472高端双向电流检测技术来实现对电源电流的监测和保护的方法,并给出了直流电源监测与保护的实现电路 关键词:高端电流监测
2011-07-27 10:59:59 33548 1
原创 回调函数
调用(calling)机制从汇编时代起已经大量使用:准备一段现成的代码,调用者可以随时跳转至此段代码的起始地址,执行完后再返回跳转时的后续地址。 CPU为此准备了现成的调用指令,调用时可以压栈保护现场,调用结束后从堆栈中弹出现场地址,以便自动返回。借堆栈保护现场真是一项绝妙的发明
2011-07-21 17:27:27 809
转载 上拉电阻、下拉电阻 / 拉电流、灌电流 / 扇出系数
(一)上拉电阻:1、当TTL电路驱动COMS电路时,如果TTL电路输出的高电平低于COMS电路的最低高电平 (一般为3.5V),这时就需要在TTL的输出端接上拉电阻,以提高输出高电平的值。 2、OC门电路必须加上拉电阻,才能使用。3、为加大输出引脚的驱动能力,有的单片机管脚上也常
2011-07-21 17:13:34 1439 1
原创 组网
当建立一个新的网络时, 必须告知协调器如何创建源端点和目标端点之间的链路。ZigBee协议定义了一个称为端点绑定的特殊过程。作为绑定过程的一部分,一个远程网络或一个类似于设备管理器的节点会请求协调器修改其绑定表。协调器节点维护一个基本上包含两个或多个端点之间的逻辑链路的绑定表。每
2011-07-20 16:23:51 697
原创 基于JN5139的智能家居内部组网
1 引言 智能家居网络主要包括外部网、家庭网关和内部网。外部网可以是因特网、公用电话网或小区局域网;内部网是家庭内部家电设备互联的局域网。目前有多种技术应用于内部组网,如HomeRF、电力载波、ZigBee等;家庭网关则是连接外部网和内部网的重要环节,以协议转换方式完成外部
2011-07-20 14:20:32 1863
原创 电路
1.电源与地之间的电容作用:稳压滤波 左图主要是起指示作用,如果VCC_5V正常带电,D2就会发光,如果出现异常,没有电流流过发光二极管或者流过发光二极管的电流过小,LED就不会亮,这个电路主要是为了检测5V电源工作是否正常右图这个接的是电解电容,电解电容的作用在这里体现为稳压滤
2011-07-20 11:09:41 1057
转载 对话框 设置XP风格
首先在RES目录下建一个文件,命名Master.manifest然后用记事本打开放入 name="Microsoft.Windows.XXXX" processorArchitecture="x86" version="5.1.0
2011-07-08 17:14:37 616
原创 事件实现线程同步
1线程函数声明4WaitForSingleObject函数 DWORD WaitForSingleObject( HANDLE hHandle, DWORD dwMilliseconds ); 参数 hHandle [in]对象句柄。可以指定一系列的对象,如Event、Job、Memory resource notification、Mutex、Process、Semaphore、Thread、Waitable timer等。 当等待仍在挂起状态时,句柄被关闭,那么函数行为是未定义的。
2011-06-01 16:09:00 892
原创 线程恢复和挂起
ResumeThread<br /> 线程恢复函数 ResumeThread Function DWORD WINAPI ResumeThread( __in HANDLE hThread); HANDLE hThread 你需要恢复线程的句柄 使用该函数能够激活线程的运行,使CPU分配资源让线程恢复运行 该函数和SuspendThread(hthread),线程挂起函数对应 消耗线程挂起的时间计数,直到时间计数为0,则激活线程
2011-06-01 11:25:00 607
单片机实用教程 单片机设计实例
2010-04-18
VC6.0 MFC 关于XML文件节点换行显示问题
2017-03-04
TA创建的收藏夹 TA关注的收藏夹
TA关注的人