嵌入式
文章平均质量分 69
zhouyanldh
1222222
展开
-
各平台long,int,short,char的大小
ARM7,ARM9,PC都是32位CPU: char为1 Byte, short为2 Byte, int和long都为4 Byte, long long为8 Byte源码[guowenxue@localhost QCTool]$ cat test.c #include int main(void){ printf("unsigned long long: %d\n",转载 2012-01-18 18:22:58 · 4642 阅读 · 0 评论 -
STM32之如何封装自己的lib库
似乎stm32刚开始出来的时候就是用的l.ib库,后来就开源了。网上看了一些网友做的lib库,自己也弄了一下,其实也挺简单。以下封装lib库都是基于stm32的3.0固件库1、打开一个工程,将除固件库以外的其他文件删掉,如下:2、在option下进行设置,如下:来个特写: 3、将编译好的lib库拷贝到另外一个工程,添加进去,并将工程下库的c文件全部删除(h文转载 2013-03-09 20:28:17 · 119977 阅读 · 0 评论 -
STM32 ADC
#include "adc.h"////////////////////////////////////////////////////////////////////////////////// //本程序只供学习使用,未经作者许可,不得用于其它任何用途//Mini STM32开发板//ADC 驱动代码 //正点原子@ALIENTEK//技术论坛:www.openedv.转载 2013-01-18 18:06:58 · 126344 阅读 · 0 评论 -
STM32 定时器
#include "timer.h"#include "led.h"////////////////////////////////////////////////////////////////////////////////// //本程序只供学习使用,未经作者许可,不得用于其它任何用途//Mini STM32开发板//通用定时器 驱动代码 //正点原子@ALIENTE原创 2013-01-18 18:06:22 · 125881 阅读 · 0 评论 -
-ne 和 !=的比较
#!/bin/basha=4b=5# Here "a" and "b" can be treated either as integers or strings.# There is some blurring between the arithmetic and string comparisons,#+ since Bash variables are not strongl原创 2012-10-26 21:09:08 · 7595 阅读 · 0 评论 -
插入排序
// test.cpp : 定義主控台應用程式的進入點。//#include "stdafx.h"#include #include #include void print_array(unsigned char *p,unsigned char len){ int i; for(i=0;i<5;i++) printf("%d ",*(p+i)); prin原创 2012-08-01 12:31:49 · 4965 阅读 · 0 评论 -
讲讲volatile的作用
一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。下面是volatile变量的几个例子: 1). 并行设备的硬件寄存器(如:状态寄存器) 2). 一个中断服务子程序中会访问到的非自动变量(Non-automati转载 2012-07-01 20:42:01 · 3377 阅读 · 0 评论 -
C语言 sizeof函数详解
sizeof,一个其貌不扬的家伙,引无数菜鸟竟折腰,小虾我当初也没少犯迷糊,秉着“辛苦我一个,幸福千万人”的伟大思想,我决定将其尽可能详细的总结一下。但当我总结的时候才发现,这个问题既可以简单,又可以复杂,所以本文有的地方并不适合初学者,甚至都没有必要大作文章。但如果你想“知其然,更知其所以然”的话,那么这篇文章对你或许有所帮助。菜鸟我对C++的掌握尚未深入,其中不乏错误,欢迎转载 2012-06-30 21:37:18 · 4931 阅读 · 0 评论 -
数据结构C语言实现系列——队列
// test.cpp : 定義主控台應用程式的進入點。//#include "stdafx.h"#include #include typedef int elemType;/************************************************************************//* 以下是关于转载 2012-07-08 21:43:43 · 3927 阅读 · 0 评论 -
数据结构C语言实现系列——链式堆栈
#include "stdafx.h"#include #include #define STACK_MAX 100typedef int elemType ;/************************************************************************//* 以下是关于链式堆栈操作的6种算法原创 2012-07-04 21:52:22 · 3539 阅读 · 0 评论 -
数据结构C语言实现系列——单链表
// pointer.cpp : 定義主控台應用程式的進入點。//#include "stdafx.h"#include #include typedef int elemType ;/************************************************************************//* 以下是关于线性表链转载 2012-07-04 10:32:40 · 3677 阅读 · 0 评论 -
数据结构C语言实现系列——双向链表
// pointer.cpp : 定義主控台應用程式的進入點。//#include "stdafx.h"#include #include typedef int elemType ;/************************************************************************//* 以下是关于线性表链原创 2012-07-04 19:25:27 · 3842 阅读 · 0 评论 -
TQ2440的学习——IIS接口的使用
《TQ2440的学习——IIS接口的使用(基本概念和基本功能实验)》中的轮询最大的缺陷就是性能低下,所以开启DMA传输是很大的优势的。虽然比轮询稍微多点代码。DMA的播放/录音实现和轮询实现的区别在于,轮询需要自己编写数据输出/读取代码,但是DMA方式下不用,只需要指明源地址和目标地址以及数据大小就可以由硬件自动传输数据了,只是要注意的是S3C2440下的DMA使用时候数据大小是有限制的,一次转载 2012-05-24 16:50:44 · 3715 阅读 · 0 评论 -
TD结构
typedef struct _Transfer_Descriptor { volatile U32 Control;// [20,19]事务类型00b SETUP 01b OUT (只有在ED未设置方向,此设置才有效) //10b IN 11b Reserved(SETUP事务是每个控制传输的开头,);[23,21]转载 2012-01-17 19:02:40 · 4957 阅读 · 0 评论 -
一阶互补滤波,二阶互补滤波,卡尔曼滤波
一阶互补// a=tau / (tau + loop time)// newAngle = angle measured with atan2 using the accelerometer//加速度传感器输出值// newRate = angle measured using the gyro// looptime = loop time in millis() fl转载 2013-03-18 16:09:44 · 126822 阅读 · 1 评论