摘要: Linux基础1、《Linux与Unix Shell 编程指南》C语言基础1、《C Primer Plus,5th Edition》【美】Stephen Prata着2、《The C Programming Language, 2nd Edition》【美】Brian W. Kernighan David M. Rithie(K & R)着3、《Advanced Programming in the UNIX Environment,2nd Edition》(APUE) Unix环境高级编程 经典,必看4、《嵌入式Linux应用程序开发详解》Linux内核0、Linux内核设计与实现 阅读全文
posted @ 2012-12-13 23:50 Moonwolf 阅读(349) 评论(0) 推荐(2) 编辑
摘要: 第一部份:一般模式可用的按钮说明,游标移动、复制贴上、搜寻取代等移动游标的方法hjkl 是排列在一起的,用来移动游标。 如果想要进行多次移动的话,例如向下移动 30 行,可以使用 "30j" 或 "30↓" 的组合按键, 亦即加上想要进行的次数(数字)后,按下动作即可![Ctrl] + [f]萤幕『向下』移动一页,相当于 [Page Down]按键 (常用)[Ctrl] + [b]萤幕『向上』移动一页,相当于 [Page Up] 按键 (常用)[Ctrl] + [d]萤幕『向下』移动半页 (d = down)[Ctrl] + [u]萤幕『向上』移动半页 阅读全文
posted @ 2012-12-13 21:17 Moonwolf 阅读(455) 评论(0) 推荐(0) 编辑
摘要: 常见此类问题的原因如下(引)错误:test.c:22: error: conflicting types for 'urlencode'test.c:18: error: previous implicit declaration of 'urlencode' was here原因一:原来是因为没有先做函数声明,而函数位于main()之后。在main函数前声明了函数原型后,一切ok.原因二:头文件的被循环引用,在引用时考虑清楚包含顺序原因三:头文件声明和定义参数稍有不同例:头文件中声明 voidHanlder(const char * buf);在定义时写作 v 阅读全文
posted @ 2012-11-13 22:43 Moonwolf 阅读(1863) 评论(0) 推荐(0) 编辑
摘要: 用IAR直接下载.out文件到Flash中: .out文件在工程文件夹的exe文件夹下,体积比较大,能比.hex或.bin大十倍以上。 在DFU配置的工程下(左上角下拉菜单可选DFU 还是FLASH),菜单栏Project->Download->Download file… 可以下载.out文件到芯片中。 具体下到哪,在工程上点右键->linker->edit,这里可以设置中断向量表(VectorTable)和程序存放地址(Memory Regions)。IAP程序(相当于bootloader)中断向量表设在0x08000000程序起始地址设为0x08000044(多出 阅读全文
posted @ 2012-10-16 17:16 Moonwolf 阅读(521) 评论(0) 推荐(0) 编辑
摘要: 几千行的程序都写完了 从ADS转到IAR下的时候 头疼了三天程序都没跑起来 在失望之余 猛然看到了这个帖子 内牛满面啊!!!摘要:当系统中,只有一个程序时,可以直接从起始地址开始运行;但当系统中有两个程序时,例如带bootloader的系统,则应用程序的运行需要通过bootloader跳转,和bootloader相比,应用程序的地址和中断向量表地址都发生改变,如何告诉编译器来分配bootloader和应用程序在flash中的地址以及如何告诉CPU中断表向表的位置,是本文讨论的主要内容。简介:1、如何设置bootloader和user app的程序地址首先我们来看看IAR下LPC2478的分散加 阅读全文
posted @ 2012-10-14 22:04 Moonwolf 阅读(455) 评论(0) 推荐(0) 编辑
摘要: 从相识,到相知——我与移动开发的结缘 随着移动互联网如火如荼的发展,大三那年Android开始火起来,学院也紧跟时代潮流,开设了android实验课,采用全新的教学模式,面对学院2000多个学生只招收30人,入选难度可想而知。不过,作为一名追求新知的技术爱好者,我自然不会错过这个机会。凭着自己的一点java基础,我提前学习了一些android方面的知识,时不时还向老师讨教一番,与老师建立了联系,再加上自己的科技竞赛获奖经验,终于顺利进入Google联合实验室,开始了我的移动开发之旅。 任课的导师是企业的工程师,开发经验丰富,从第一节课android系统的介绍,到开发环境的搭建、源代码结构分析. 阅读全文
posted @ 2012-10-12 21:15 Moonwolf 阅读(184) 评论(0) 推荐(0) 编辑
摘要: Notepad++之TextFX插件的常用命令1. 为代码增加行号选择要增加行号的文本(选择时会提示“No text selected”)点击TextFX —> TextFX Tools —> Insert Line Numbers2. 删除程序行号或者首字选择相应的文本点击TextFX —> TextFX Tools —> Delete Line Numbers or First word3. 删除程序空行选择相应的文本点击TextFX —> TextFX Edit —> Delete Blank Lines点击TextFX —> TextFX Ed 阅读全文
posted @ 2012-10-08 21:56 Moonwolf 阅读(187) 评论(0) 推荐(0) 编辑
摘要: Notepad++ 是一款非常有特色的编辑器,是一款开源软件,支持的语言: C, C++ , Java , C#, XML, HTML, PHP, Javascript。下面介绍下国人常用的插件 插件下载地址(实时更新):http://sourceforge.net/projects/npp-plugins/files/Notepad++插件的使用方法: 把插件(.dll文件)放到notepad++\plugins目录里,重启Notepad++后,即可提示安装,安装成功后,在菜单栏的插件里能找到。需要注意的是,Notepad的ANSI版和Unicode版本,有的插件只支持其中某个版... 阅读全文
posted @ 2012-10-08 13:54 Moonwolf 阅读(455) 评论(0) 推荐(0) 编辑
摘要: JTAG有10pin的、14pin的和20pin的,尽管引脚数和引脚的排列顺序不同,但是其中有一些引脚是一样的,各个引脚的定义如下。一、引脚定义Test Clock Input (TCK) -----强制要求1TCK在IEEE1149.1标准里是强制要求的。TCK为TAP的操作提供了一个独立的、基本的时钟信号,TAP的所有操作都是通过这个时钟信号来驱动的。Test Mode Selection Input (TMS) -----强制要求2TMS信号在TCK的上升沿有效。TMS在IEEE1149.1标准里是强制要求的。TMS信号用来控制TAP状态机的转换。通过TMS信号,可以控制TAP在不同的状 阅读全文
posted @ 2012-10-07 22:49 Moonwolf 阅读(412) 评论(0) 推荐(0) 编辑
摘要: 在STM32的固件库和提供的例程中,到处都可以见到assert_param()的使用。如果打开任何一个例程中的stm32f10x_conf.h文件,就可以看到实际上assert_param是一个宏定义;在固件库中,它的作用就是检测传递给函数的参数是否是有效的参数。所谓有效的参数是指满足规定范围的参数,比如某个参数的取值范围只能是小于3的正整数,如果给出的参数大于3,则这个assert_param()可以在运行的程序调用到这个函数时报告错误,使程序员可以及时发现错误,而不必等到程序运行结果的错误而大费周折。这是一种常见的软件技术,可以在调试阶段帮助程序员快速地排除那些明显的错误。它确实在程序的运 阅读全文
posted @ 2012-10-07 12:55 Moonwolf 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 1. static 变量 静态变量的类型 说明符是static。 静态变量当然是属于静态存储方式,但是属于静态存储方式的量不一定就是静态变量。 例如外部变量虽属于静态 存储方式,但不一定是静态变量,必须由 static加以定义后才能成为静态外部变量,或称静态全局变量。 2. 静态局部变量 静态局部变量属于静态存储方式,它具有以下特点: (1)静态局部变量在函数内定义 它的生存期为整个源程序,但是其作用域仍与自动变量相同,只能在定义该变量的函数内使用该变量。退出该函数后, 尽管该变量还继续存在,但不能使用它。 (2)允许对构造类静态局部量赋初值 例如数组,若未赋以初值,则由系统自动赋以... 阅读全文
posted @ 2012-10-06 18:20 Moonwolf 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 结合DC的《关于 ST eMotion board 使用DFU的一点总结》(http://blog.csdn.net/xiangshimoni/article/details/7992106)开发用到的软件:IAR EWARM 6.3,Dfuse 3.0.2,Secure CRT6.5.0Demo使用IAREmbedded Workbench 6.3编写,需要安装6.3或者更高版本,使用时拷贝到自己的工作目录,直接用IAR打开即可,配置不需要太多改动。一、编译项目时会出现以下错误提示:Error[Pe147]:declaration is incompatible with "__n 阅读全文
posted @ 2012-10-05 16:52 Moonwolf 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 中断对于开发嵌入式系统来讲的地位绝对是毋庸置疑的,在C51单片机时代,一共只有5个中断,其中2个外部中断,2个定时/计数器中断和一个串口中断,但是在STM32中,中断数量大大增加,而且中断的设置也更加复杂。今天就将来探讨一下关于STM32中的中断系统。1基本概念ARM Coetex-M3内核共支持256个中断,其中16个内部中断,240个外部中断和可编程的256级中断优先级的设置。STM32目前支持的中断共84个(16个内部+68个外部),还有16级可编程的中断优先级的设置,仅使用中断优先级设置8bit中的高4位。STM32可支持68个中断通道,已经固定分配给相应的外部设备,每个中断通道都具备 阅读全文
posted @ 2012-10-04 17:46 Moonwolf 阅读(2117) 评论(0) 推荐(0) 编辑
摘要: 下面跟大家说一下STM32单片机的端口重映射,因为是以自己为实例.这里是以USART1的重映射为例..因为我要一个TFT_LCD屏的主控板,考虑到FSMC 我选用了STM32F103VCT6 型号的CPU,一不小心串口接到USART1上了.因为在调程序时才发现错了,没得办法,只能通过端口重映射来解决.但是以前没用过端口重映射,只闻其名,未用其身,所以..呵呵 ...只能从头去看了.STM32上有很多I/O口,也有很多的内置外设想I2C,ADC,ISP,USART等,为了节省引出管脚,这些内置外设基本上是与I/O口共用管脚的,也就是I/O管脚的复用功能。但是STM32还有一特别之处就是:很多复用 阅读全文
posted @ 2012-10-04 09:19 Moonwolf 阅读(815) 评论(0) 推荐(0) 编辑
摘要: Android MediaPlayer使用方法简单介绍1)如何获得MediaPlayer实例:可以使用直接new的方式:MediaPlayer mp = new MediaPlayer();也可以使用create的方式,如:MediaPlayer mp = MediaPlayer.create(this, R.raw.test);//这时就不用调用setDataSource了2) 如何设置要播放的文件:MediaPlayer要播放的文件主要包括3个来源:a. 用户在应用中事先自带的resource资源例如:MediaPlayer.create(this, R.raw.test);b. 存储在S 阅读全文
posted @ 2012-09-07 14:02 Moonwolf 阅读(442) 评论(0) 推荐(0) 编辑