-
A51的程序执行时间可能通过指令周期计算出来,而C51的却无从下手,很多程序员为了得到精确的执行时间而研读反汇编代码,何等的悲哀。巧妙的使用Keil中的debug功能,问题就迎刃而...
-
AVR32怎么建立AP7linux开发环境?
下面我们以使用的ubuntu6.06来给大家做一下介绍,希望能起到抛砖引玉的作用。首先,使用ubuntu可以直接安装,...
-
调试过程中难免出现一些问题,许多同学也有类似的问题,现在就把可能出现的bug陆续更新吧!
1.Building configuration: as - DebugUp...
-
最近因为项目需要开始使用IAR for AVR,我用的是5.40版本的,主要是5.40以上才包括了aTtiny87,至于安装文件和和谐文件,大家自己找吧,很好找的。 &...
-
keil中常见的几种警告,固然,相对于错误的,警告的程度不及错误的严重性,有时候忽略,会出现意想不到的错误。先看看常见的几种错误,分析出来现的原因。1. Warnin...
-
本文讲述了将ANSIC程序移植到KeilC51上应该注意的事项。文章讲述了存储类型、指针类型、重入函数、根据目标系统RAM的分布的段定位和仿真栈设置、函数指针、NULL指针问题、字...
-
笔记:
(1)如何禁止KEIL初始化RAM为零?
1. 在KEIL Noinit 打钩
2.
<1> 另须对需要热启动保持的变量用__at...
-
折腾了大半天,才搞明白一个空操作的指令
先在网上查有的说是__asm{"NOP"},从intrins.h里调用,可犄角旮旯全找了,也没看到什么intrint.h的文件...
-
引起我注意Keil c函数参数传递的是在一个偶然的机会,我在写一个函数的时候:如下write_byte(ulong addr, uchar dat){ &nb...
-
头文件含义
avr_macros.h里面包含了读写16位寄存器的简化书写,和几个位操作函数
comp_a90.h对大量的内在函数做了简要书写
ina90.h包...
-
一般情况下,源程序中所有的行都参加编译。但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一部分内容指定编译的条件,这就是“条...
-
在C/C++中经常需要进行存储器的操作,关于数据如何在存储器中存储的问题也是非常重要的,如何在保证数据量(信息量)的同时又保证数据的存储量最小,乍一听感觉没什么好讨论的。但是作为学...
-
堆栈是计算机程序中非常重要的一部分,主要用来参数的调用,局部变量的存储等,在C语言中的函数调用过程中通过不同函数的堆栈空间可以非常方便的找到传递进来的参数以及退出时应该返回的地址。...
-
单片机C语言的主程序,通常要用一个while(1)语句来让程序进入一个无限循环,目的是为了让程序一直保持在我们需要运行的情况下。
虽然这种做法毋庸置疑,在网上还是有...
-
这几天看到好友的文章关于while(1)和for(;;)效率的讨论,手痒说了两句。回头一寻思,自己也只是推断。没有做任何实验,我们就看看这两种写法到底有什么区别:
实...
-
最近,在写程序的时候,碰到一个在自己看来非常不可思议的问题。当然,或者高手就觉得大惊少怪了,呵呵。
以下是问题相关:
平台:MEGA64;
编译环境:codeVi...
-
一:C语言程序的存储区域 由C语言代码(文本文件)形成可执行程序(二进制文件),需要经过编译-汇编-连接三个阶段。编译过程把C语言文本文件生成汇编程序,汇编过程把汇...
-
//对字符最容易忽视的是字符串结尾会默认添加一个不可见的‘0\’//因此用memcpy()函数对字符串复制时容器一定要多申请一个字节。//如:char*...
-
一、static在C语言里面可以用来修饰变量,也可以用来修饰函数。
1、 先看用来修饰变量的时候。变量在C语言里面可分为存在全局数据区、栈和堆里。
...
-
C++中函数的参数相比C语言中的函数参数要复杂的多,其中主要的原因是C++中引入了引用以及const限定符。这两个对象的引入,使得C++中的函数参数变得异常的复杂多变,每一种类型都...