推荐阅读最新更新时间:2024-03-16 13:53
c51的精确延时
用c语言为单片机编程无疑十分节约时间,可在很短的时间内开发出较高效的代码,对于程序的维护和扩充也较汇编语言方便许多。 但c语言也有它的不足之处,那就是在时间的精确控制上。要想用c实现精确的延时,只能把c的函数编译成汇编语言,然后按照汇编语言计算其执行时间。本人就按照这种方法,编写了几个51单片机的c语言精确延时函数。 注:1.编译软件为 Keil uVision3 (Keil uVision2也试用)。用其他编译软件的话就不准了。 2.需要包含头文件 3.所有函数的延时时间都是在12Mhz晶振下计算的,如用其他晶振需进行换算。 4.函数的执行时间为 函数的参数 乘以精确到
[单片机]
AVR使用范例--AVR软件延时精确计算指导
和软件延时时间长短有关的因素有,单片机,晶振,延时语句,此处以for循环语句为例。 首先,我们编写一个for循环的延时语句,如下:非关键代码省略 void delay(unsigned char n) { for(;n!=0;n--) ; } void main(void) { init_devices(); delay(254); /*计算结果,本条语句延时约138微秒,avr studio仿真结果延时141微妙 以仿真的为准。*/ while(1) ; } 正常编译,按照常规方法打开JTAG下载并进入调试。我们要想办法获取程序的运行指令个数。
[单片机]
Altera发布Quartus II软件9.1 缩短编译时间
Altera公司日前宣布推出Quartus II软件9.1——在CPLD、FPGA和HardCopy ASIC设计方面,业界性能和效能突出的软件。与以前的软件版本相比,Quartus II软件9.1新特性和增强功能将编译时间缩短了20%,编译时间比竞争高密度40-nm和65-nm设计仍然快2到3倍。软件新特性是快速重新编译,对于较小的设计改动,这一特性大大缩短了编译时间,而且还支持Altera最新发布的CycloneIV FPGA。 Quartus II软件9.1建立在Altera设计软件一直保持的效能优势基础上。对于高端FPGA,软件实现了业界最快的编译时间,过去5年中,编译时间平均每年缩短20%。最新版软件编译时间上
[嵌入式]
C51全局初始化及精确延时程序
/********************************************************************************************************* * Initialization Program * QiZhao,2007 * All Rights Reserved * File : initial.h * By : QiZhao * Contact : zq1987731@163.com * * Version : V2.
[单片机]
PIC单片机实现x ms/1s钟精确延时
1、编写子程序DelayMS,实现延时x毫秒的功能,x由w寄存器中的值设定。 ;**************DelayMS************** DelayMS ; 延时x毫秒,x由变量w寄存器设定 movwf L1 ; Loop1 movlw .39 ; movwf L2 ; Loop2 movlw .31 ; movwf L3 ; Loop3 nop
[单片机]
单片机keil C语言精确延时
for循环实现C语言精确延时 zang0108 @ 2005-12-15 10:42:00 C语言最大的缺点就是实时性差,我在网上到看了一些关于延时的讨论,其中有篇文章 51单片机 Keil C 延时程序的简单研究,作者:InfiniteSpace Studio/isjfk 写得不错,他是用while(--i);产生DJNZ 来实现精确延时,后来有人说如果while里面不能放其它语句,否则也不行,用do-while就可以,具体怎样我没有去试.所有这些都没有给出具体的实例程序来.还看到一些延时的例子多多少少总有点延时差.为此我用for循环写了几个延时的子程序贴上来,希望能对初学者有所帮助.(晶振12MHz,一个机器周期1us.) 一
[单片机]