高效的C编程之: 变量类型(上) 14.8变量类型ARMC编译器支持基本的数据类型:char、short、int、longlong、float和double。表14.2说明了armcc对C语言所使用的数据类型的映射。表14.2 C编译器数据类型映射C数据类型表示的意义char无符号8位字节数据short有符号16位半字数据int有符号32位字数据long有符号3... 2023-06-13 C编程变量类型armccARM编译器文章软件开发程序设计
高效的C编程之: C循环结构(上) 14.5C循环结构循环体是程序设计与优化的重点考虑对象。本节将着重讲解在ARM上处理for和while循环最有效的方法。14.5.1循环中止首先来看下面的例子,两个不同的循环退出条件,产生的不同汇编代码。C源程序如下所示。intfact1(intn){inti,fact=1;for(i=1;i<=n;i++)fact*=i;ret... 2023-06-13 C编程循环结构循环中止forwhileARM文章软件开发程序设计
高效的C编程之: 浮点运算 14.10浮点运算大多数的ARM处理器硬件上并不支持浮点运算。但ARM上提供了以下几个选项来实现浮点运算。·浮点累加协处理器FPA(Floating-PointAccelerator):ARM上提供了一组协处理器指令专门实现浮点运算。但这需要硬件支持,具体某一处理器上是否有FPA协处理器支持,可以... 2023-06-13 C编程浮点运算浮点累加协处理器FPAARM文章软件开发程序设计
高效的C编程之: 移植问题 14.11移植问题当对源代码使用不同的编译器时,可能会出现一些移植上的问题,这时可以宏将一些ARM特有的关键字“打包”。例如:#ifdef__arm#defineINLINE__inline#defineVALUE_IN_REGS__value_in_regs#definePURE__pure#else#defineINLINE#defineVALUE_IN_... 2023-06-13 C编程移植inlineVALUE_IN_REGSARM文章软件开发程序设计
PIC单片机程序设计基础格式 为了快速掌握PIC单片机源程序的基本结构,这里给出一个典型的程序结构框架。建立源程序时首先用伪指令TITLE提供程序的标题,接着给出整个程序的总说明,并用列表伪指令LIST指定所用单片机型号和文件输出格式,再利用INCLUDE伪指令读入MPASM中提供的定义文件如《P16F84INC》,然... 2023-06-13 PIC单片机程序设计基础格式文章软件开发
PIC单片机中断程序的设计技巧 PIC单片机中断程序的设计技巧 所有的中档系列PIC单片机,PORTB端口最高的4个引脚(RB7~RB4)在设为输入模式时,当输入电平由高到低或由低到高发生变化时,可以让单片机产生中断。这就是通常所说的引脚状态变化中断。 在设计引脚中断程序时,有三个需要特别注意的地方。一是,在清除... 2023-06-13 PIC单片机中断程序设计技巧文章软件开发程序设计
ARM7在嵌入式应用中启动程序的实现 【摘要】本文给出了基于ARM7嵌入式系统的启动程序的实现流程,并针对存储器控制单元的使用以及目标文件的分布装载等技术难点进行详细分析。【关键词】嵌入式系统、启动程序、ARM7嵌入式系统被定义为:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功... 2023-06-13 ARM7嵌入式启动程序文章软件开发程序设计
DSP的汇编程序优化 1引言数字信号处理器(DSP)相对于模拟信号处理器有很大的优越性,表现在精度高,灵活性大,可靠性好,易于大规模集成等方面。随着半导体制造工艺的发展和计算机体系结构的改进,数字信号处理器的功能越来越强大,对信号处理系统的研究重点又重新回到软件算法上,而不再像过去那样过多地... 2023-06-13 DSP汇编程序文章软件开发程序设计
浅谈单片机程序设计中的“分层思想” 浅谈单片机程序设计中的“分层思想”随便写下的一点东西,本来打算去发表,不过想想还是算了,不是什么重要的东西,不过这个东西确实很有用。文章烂的去组织和修改了,随便看看吧。分层的思想,并不是什么神秘的东西,事实上很多做项目的工程师本身自己也会在用。看了不少帖... 2023-06-13 单片机程序设计“分层思想”文章软件开发Linux
单片机程序常用加密方法介绍 科研成果保护是每一个科研人员最关心的事情,目的是不使自己的辛苦劳动付之东流。单片机程序加密方法有软件加密,硬件加密,软硬件综合加密,时间加密,错误引导加密,专利保护等措施。下面介绍几种常用的加密方法:一、单片机程序软件加密现先讲一个软件加密:利用MCS-51中A5指... 2023-06-13 单片机程序常用加密方法介绍文章软件开发程序设计
用单片机实现万年历的算法_很实用 本文只是讲解如何用单片机实现万年历的算法,而不针对某一个特定型号的单片机,因为此算法是基于C语言的,通用性较强。万年历的算法包括阳历算法和阴历算法,同时还包括了阳历和阴历的节气算法,下面将一一讲述。很实用哦!一、 阳历算法具体算法见函数Void get_solar_day_date(void... 2023-06-13 单片机 实现 万年历 算法 文章软件开发程序设计
用51单片机实现I2C总线的源程序-C语言 /*功能:在51单片机上用C语言实现I2C总线功能*//*下面的代码是基于51单片机P1口模拟I2C总线。*//*电平模拟函数和基本读写函数voidIIC_Start(void);voidIIC_Stop(void);voidSEND_0(void);voidSEND_1(void);bitCheck_Acknowledge(void);voidWrite_Byte(ucharb)reentr... 2023-06-13 51单片机实现I2C总线源程序C语言文章软件开发程序设计
51单片机编程技巧--功能强大的时钟中断 在单片机程序设计中,设置一个好的时钟中断,将能使一个CPU发挥两个CPU的功效,大大方便和简化程序的编制,提高系统的效率与可操作性。我们可以把一些例行的及需要定时执行的程序放在时钟中断中,还可以利用时钟中断协助主程序完成定时、延时等操作。下面以6MHz时钟的AT89C51系统... 2023-06-13 51单片机编程技巧功能强大时钟中断文章软件开发程序设计
PIC入门 引脚中断编程技巧 1简述所有的中档系列PIC单片机,PORTB端口最高的4个引脚(RB7~RB4)在设为输入模式时,当输入电平由高到低或由低到高发生变化时,可以让单片机产生中断.这就是通常所说的引脚状态变化中断.在设计引脚中断程序时,有三个需要特别注意的地方.一是,在清除PORTB中断标志位RBIF之前... 2023-06-13 PIC入门引脚中断编程技巧文章软件开发程序设计
基于LPC2138的VGS12864E程序设计 系统简述LPC2138简介LPC2138是基于支持实时仿真和嵌入式跟踪的32/16 位ARM7TDMI-S CPU 的微控制器,带有512 KB高速Flash和32KB的SRAM。128位宽度的存储器接口和独特的加速结构使32 位代码能够在最大时钟速率下运行。对代码规模有严格控制的应用可使用16 位Thumb模式将代码... 2023-06-13 LPC2138VGS12864E程序设计文章课设毕设显示类
ARM程序设计优化 程序优化是指软件编程结束后,利用软件开发工具对程序进行调整和改进,让程序充分利用资源, 提高运行效率, 缩减代码尺寸的过程。按照优化的侧重点不同, 程序优化可分为运行速度优化和代码尺寸优化。运行速度优化是指在充分掌握软硬件特性的基础上, 通过应用程序结构调整等手段来... 2023-06-13 ARM程序设计优化文章软件开发
struct、union、enum和typedef分析 struct空结构体大小,依据编译器的不同而不同,gcc中为0,且不同的结构体变量地址相同;而在g++中为1,不同的结构体变量地址也不同。没有谁对谁错,现代编译器中认为空结构体大小为1较为合理。柔性数组即数组大小待定的数组。规则:结构中最后一个元素允许是未知大小的数组;结构中的柔... 2023-06-13 structunionC语言enumtypedef文章软件开发程序设计
const和volatile分析 constconst 修饰的是只读变量,不是常量,会在内存中占用空间,本质上const只对编译器有用,在运行时无用const 修饰的只读变量不能作为左值直接赋值,但可以通知指针修改其值const 修饰的只读变量必须在定义的同时初始化case语句后面不可以跟const修饰的只读变量,case后面只能是整... 2023-06-13 constvolatileC语言文章软件开发程序设计
单片机程序设计中的“分层思想” 分层的思想,并不是什么神秘的东西,事实上很多做项目的工程师本身自己也会在用。看了不少帖子都发现没有提及这个东西,然而分层结构确是很有用的东西,参透后会有一种恍然大悟的感觉。如果说我不懂LCD怎么驱动,那好办,看一下datasheet,参考一下别人的程序,很快就可以做出来。但是如... 2023-06-13 单片机程序设计分层文章软件开发程序设计
提高编程技巧的十大方法 1.学习一门新的编程语言(Learn a new programming language)学习一门新的编程语言将有助于你开拓新的思维方式,特别是当你使用不熟悉的语言时,你将学习到很多种思维方法应用到语言中。而所学习到的新思维方式,你可以运用在你所熟知的语言中。甚至有时你会使用新学的语言进行你... 2023-06-13 提高编程技巧方法文章软件开发程序设计
C语言全局变量那些事儿 作为一名程序员,如果说沉迷一门编程语言算作一种乐趣的话,那么与此同时反过来去黑一门编程语言就是这种乐趣的升华。今天我们就来黑一把C语言,好好展示一下这门经典语言令人抓狂的一面。我们知道,全局变量是C语言语法和语义中一个很重要的知识点,首先它的存在意义需要从三个不... 2023-06-13 C语言文章软件开发程序设计
基于云计算平台的图书馆构建1 目前大多数图书馆已实现了向数字化转型,但图书馆的数据存储面临着安全、访问空间、速度及管理等多方面问题。而采用云计算对数据进行管理是一项有效的措施,同时也将改变图书馆管理系统的架构。1 云计算的定义云计算是基于互联网基础设施和软件的应用,将其作为提供客户&ldquo... 2023-06-13 基于云计算平台的图书馆构建文章软件开发程序设计
用1602做简易时钟 /**********************************************MCU: STC89C52晶振:11.0592网名:秋天里的落叶日期:2014年5月11日21:56:00功能:用1602显示 00:00:00 的简易时钟**********************************************/#include #define uc... 2023-06-13 1602时钟显示程序设计STC89C52单片机文章课设毕设时钟类
Android网络编程之Http通信 Android中提供的HttpURLConnection和HttpClient接口可以用来开发HTTP程序。以下是本人在学习中的总结与归纳。1. HttpURLConnection接口首先需要明确的是,Http通信中的POST和GET请求方式的不同。GET可以获得静态页面,也可以把参数放在URL字符串后面,传递给服务器。而POST方... 2023-06-13 Android网络编程Http通信文章软件开发程序设计
viewpager 获取当前现实的view 我使用viewpager做了一个滑动的切换效果,效果还挺不错,具体实现效果网上很多,各位可以去找,不过在实现切换效果之后,因为需求需要,我需要获取当先显示的那个view,这就很让人恶心了。viewpager有setOnPageChangeListener,里面有@Overridepublic void onPageSelected(int arg0) {}@... 2023-06-13 ViewPagerView文章软件开发程序设计