
C 基础
文章平均质量分 51
橙蓄源
有意可以邮箱联系 843654778@qq.com
展开
-
PDU短信编解码格式说明 官网http://www.3gpp.org/DynaReport/27-series.htm
PDU短信编解码格式说明(找来找去个人认为这一篇还是比较靠谱的)2013-11-28 19:20 5652人阅读 评论(1)收藏举报分类: 嵌入式开发(46) 共有三种方式来发送和接收SMS信息:Block Mode, Text Mode和PDU Mode。其中PDU Mode被所有手机支持,可以使用任何字符集,这也是手机默认的编码方式。转载 2017-02-16 21:18:29 · 1588 阅读 · 0 评论 -
联合体 union 定义和使用
union xxx{ u8 a; u8 b; u8 c;};typedef union xxx{ u8 a; u8 b; u8 c;}XXX_U_T;原创 2016-08-26 10:14:50 · 3545 阅读 · 0 评论 -
内存对齐 相关知识,转
1. 内存对齐(Data Structure Alignment)是什么内存对齐,或者说字节对齐,是一个数据类型所能存放的内存地址的属性(Alignment is a property of a memory address)。这个属性是一个无符号整数,并且这个整数必须是2的N次方(1、2、4、8、……、1024、……)。当我们说,一个数据类型的内存对齐为8时,意思就是指这个数转载 2016-08-13 21:01:33 · 861 阅读 · 0 评论 -
ucos iii 的OSInit()函数学习
os_core.c(1)调用 OSInitHook();来初始化MSP的栈顶指针。(2)清零相关中断嵌套数 的全局变量。---重要一点(将 OSRunning 赋值为 STOP)(3)清零与任务相关的变量、指针。(4)创建一个IDLE_task,任务优先级为 定义优先级数 里面的最低优先级,但这个任务只做一个简单的计数,并无其他功能。(5)创建一个Tick_Task,优先级原创 2016-08-10 22:54:35 · 2068 阅读 · 0 评论 -
函数指针的定义和使用
void (*pFunction)(void);void JumpToApp(void){ unsigned int JumpAddress; put_str("now,jump to app...\r\n\r\n"); SCB->VTOR = (APP_BASE_ADDR)&0X1FFFFF80;//0x3FFFFF80 __set_MSP(*(__IO uint3原创 2016-06-14 12:23:03 · 1113 阅读 · 0 评论 -
sizeof(xxx) ,IAR编译器
#pragma pack(1)typedef struct t_msg_{uint8_t ctl_father_type;uint8_t *databuf;uint8_t ctl_son_type;uint16_t ctl_para;}TASK_CTL_MSG_T;#pragma pack()sizeof(TASK_CTL_MSG_T)=8---------原创 2016-06-08 10:47:55 · 1196 阅读 · 0 评论 -
协议解析-串口协议解析
#define MU_IN_BF_LEN (150) #define MU_OUT_BF_LEN (150)uint8_t inbuf[MU_IN_BF_LEN]={0}; //用于保存:从RX中断缓冲buffer中读出的数据uint8_t outbuf[MU_OUT_BF_LEN]={0};//用于保存:提取出的一个完整帧#define UART1_RX_RINGBUF_LEN原创 2015-11-24 21:48:19 · 7364 阅读 · 1 评论 -
sscanf的使用
buf="$GNRMC,004505.000,A,2241.001098,N,11416.656622,E,0.028,129.792,201015,,E,A*3F"; sscanf((char const*)buf,"%*[^,],%6s%*[^,],%[^,],%[^,],%[^,],%[^,],%[^,],%[^,],%[^,],%[^,]", &gps_location_i原创 2015-10-20 21:20:43 · 648 阅读 · 0 评论 -
sprintf知识
sprintf函数的用法2011-11-30 16:55:43分类: LINUXsprintf() 格式化输出函数(图形)功能: 函数sprintf()用来作格式化的输出。用法: 此函数调用方式为int sprintf(char *string,char *format,arg_list);说明: 函数sprintf()的用法和printf()函数一样,转载 2015-10-19 11:47:23 · 635 阅读 · 0 评论 -
ASCII码表
八进制十六进制十进制字符八进制十六进制十进制字符00000nul1004064@01011soh1014165转载 2015-09-01 09:04:12 · 490 阅读 · 0 评论 -
STM32 中断优先级原理
CM3 内核支持 256 个中断,其中包含了 16 个内核中断和 240 个外部中断,并且具有 256级的可编程中断设置。但 STM32 并没有使用 CM3 内核的全部东西,而是只用了它的一部分。STM32 有 84 个中断,包括 16 个内核中断和 68 个可屏蔽中断,具有 16 级可编程的中断优先级。而我们常用的就是这 68 个可屏蔽中断,但是 STM32 的 68 个可屏蔽中断,在 STM3转载 2015-07-22 17:13:23 · 2120 阅读 · 0 评论 -
STM32启动文件分析
STM32 之 启动文件详细解析(V3.5.0)2013-02-23 13:43 1883人阅读 评论(0)收藏 举报在>,用的是STM32F103RBT6,所有的例程都采用了一个叫STM32F10x.s的启动文件,里面定义了STM32的堆栈大小以及各种中断的名字及入口函数名称,还有启动相关的汇编代码。STM32F10x.s是MDK提供的启动代码,从转载 2015-07-13 21:47:13 · 1017 阅读 · 0 评论 -
I2C打印
#define LOW 0#define HIGH 1#define EXBUFF_LEN 100unsigned char exbuff[EXBUFF_LEN]={0};#define SDA_SET_AS_INPUT {PE_DDR2=0;}#define SCL_SET_AS_INPUT {PE_DDR1=0;}#define test_GET_SDA_VALUE原创 2014-12-23 10:28:04 · 721 阅读 · 0 评论 -
sizeof 和 strlen的区别
一、sizeof sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。 它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。 由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小。实际上,用sizeof来返回类型以及静态分配的对象、结构或数组所占的转载 2014-12-11 17:43:21 · 622 阅读 · 0 评论 -
C 宏 #ifdef AAA #elif defined BBB #elif defined CCC ......#endif
#ifdef EN_CAN_HYUNDAI_KIA代码A原创 2014-10-28 10:46:17 · 750 阅读 · 0 评论 -
使用位域来定义位变量,执行位操作,多用于flag变量,YES or NO 的标记
struct bit_t { unsigned char b0:1; /* bit7 */ unsigned char b1:1; /* bit6 */ unsigned char b2:1; /* bit5 */原创 2014-06-26 19:25:18 · 2517 阅读 · 0 评论 -
IAR 不能 go to definition of xxxx
tools --> option原创 2018-10-26 08:41:55 · 252 阅读 · 0 评论