采用c51语言写出延时程序,Keil C51通用精确延时程序设计

余巧书

dab0a24b78958fcbd39f6d618e1a24ff.png

b291eac76a2ce59f875b3acd1241c03e.png

3e33c7284dfdeb8155082bfe2b1ae44d.png

摘 要:本文从实际应用出发,探讨一种通用精确延时程序设计方法,并给出使用的详细步骤,以便开发者能很好的理解和掌握。

关键词:Keil C51;精确延时;C语言与汇编语言混合编程

单片机因具有体积小、功能强、成本低以及便于实现分布式控制而有非常广泛的应用领域。单片机开发者在编制各种应用程序时经常会遇到实现精确延时的问题。用汇编语言编制程序时,这种问题比较容易解决,而目前开发单片机应用系统的主流工具为C语言。相对汇编语言来说,C语言有很多优点,但缺点就是实时性没有保证,因而在实时性要求高的场合,还需要汇编语言和C语言的联合应用。

使用C语言编写单片机程序时,生成的机器代码、代码大小和效率,除了与C语言代码本身有关外,还与编译器有非常重要的关系。本文以Keil C51為例,探讨如何编制通用

律姐有范儿
关注 关注
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C51常用延时程序
从零开始5339的专栏
10-03 1万+
在一些场合下,我们需要对单片机
51c语言延时程序怎么编,C51延时程序的编
weixin_30975237的博客
05-22 2394
众所周知,在编程时很难掌握程序运行的时间,所以编时很难做到很精确,解决的方式有插入汇编语句,但总觉得汇编用起来不是那么顺手,还可以用定时器来做,但只是一个很小的延时程序而已,不必小题大作。其实办法还是有的,下面介绍一下常用的几种延时程序。1、us级延时程序常用的一个函数如下:void delayus(unsigned char x){ while(--x) ;}生成的汇编代码为:C:0x001C...
【代码收藏夹 · C51】51单片机延时函数
不定时分享与嵌入式有关的知识
09-16 8760
51单片机延时函数
【51单片机】汇编程序流水灯延迟函数
最新发布
weixin_72935906的博客
03-23 1730
汇编指令的内核与C语言是相似的。在使用汇编语言的过程中,可以首先尝试用C语言的思考逻辑思考,再转化为汇编语言。当然,在仿真的过程中会遇到很多疑问,这些主要受限于硬件原因,例如51的内存只有256B,超过255的数无法计入,超出内存的指令也无法执行。其次就是数值转换的问题,虽然我们输入的是十进制数,但内存存储的是十六进制数,因此我们在观察寄存器数值的时候,不要因为寄存器的值与输入的值不一样就直接否认,而是要思考一下进制转换的问题。
【转】c嵌入汇编
Elta学习
07-03 544
由于C语言在定时方面的缺陷,在某些场合下,C程序中需要嵌入汇编代码,以弥补C的缺陷。通常,在C语言程序中嵌入汇编的方法,无外乎两种    · 在C程序中填入#asm和#endasm的编译命令,在之中填入汇编代码 · 编汇编函数,通过链接定位器和特殊的编译方式链接方式加入到所有程序的目标代码中 但这两种方法都存在实现困难的问题,对刚起步经验不足的程序员来说,基本上很难弄懂和编译成功。
延时程序
CODE实验室
08-25 971
目录 前言 参考 QueryPerformanceCounter()实现 例程1 例程2 GetTickCount()实现 前言 近两年的项目中用到的延时程序收集整理。一般在线程中使用,如果使用系统api函数Sleep(),将会导致线程休眠挂起,如果频繁调用将导致线程运行挂起和恢复重复执行,占用系统CPU的资源,相对来说开销会比较大。比较几种延时方式,QueryPerformanceCounter()精度最高,GetTickCount()次之,sleep()再次之,time()最次。精度高并
C51软件延时(STC12,STC15通用,12MHz,24MHz通用
06-14
最初级的软件延时,会让你CPU白白等待(俗称阻塞延时),适合初学者,简单省事,延时函数由stc官方提供,非常准确,内附详细教程。
C51 延时程序
liufei_learning--脚踏实地,戒骄戒躁!
07-18 2245
一.相关换算1s=10^3ms(毫秒)=10^6μs(微秒)=10^9ns(纳秒)=10^12ps(皮秒)=10^15fs(飞秒)=10^18as(阿秒)=10^21zm(仄秒)=10^24ym(幺秒) 物质在1秒内完成周期性变化的次数叫做频率,常用f表示。 物 理中频率的单位是赫 兹(Hz),简称赫,也常用千赫(kHz)或兆赫(MHz)或GHz做单 位。1kHz=1000Hz,1MHz=1000000Hz 1GHz=1000MHz。频率f是周期T的倒数,即f =1/T,波速=波长*频率。 而像中国使用的电
汇编语言c51延时程序,单片机延时程序实例讲解
weixin_39752941的博客
05-22 7126
在单片机实验中,有一个很重要也是很基本的子程序必须要求我们掌握,那就是延时程序。下面我凭记忆来讲解延时程序。课本上讲,1个机器周期=6个状态周期=12个时钟周期,而这个时钟周期与晶振频率有关。我们接下来要上的实验基本都是以12MHz的晶振。12M的频率,得其周期为1/12乘10的-6方s,那么1个机器周期就是它的12倍,即1us,而一般语句需要2个机器周期,例如MOV R6,#20DNJZ R6,...
我的C51延时程序
weixin_34277853的博客
11-20 173
基础延时程序经过了严格计算得出的,保证精准。 #include <intrins.h> /******************************** * 基础延时 * ********************************/ //适用于12MHz晶振,如果不需要请注释掉 void delay1s(void) ...
C51单片机延时函数
07-14
参考了51单片机 Keil C 延时程序的简单研究,自己也亲身测试和计算了一些已有的延时函数。
51单片机1分钟延时程序
06-05
一分钟的延时程序 同时输出方波 还有流水灯 程序很简单 但比较实用 特别是考试的时候
单片机延时程序怎么?
07-16
本文主要讲了如何单片机延时程序,希望对你的学习有所帮助。
C51精确延时函数的编及调试方法
03-18
本文详细分析了函数及循环语句的执行过程,介绍了用C51和调试精确延时程序的方法。
51单片机精确延时函数DELAY.H(误差小于机器周期)
01-06
51单片机精确延时函数DELAY.H(误差小于机器周期) 建议放入Keil的INC文件夹备用
Keil C51程序设计中几种精确延时方法
08-04
本文从实际应用出发,讨论几种实用的编制精确延时程序和计算程序执行时间的方法,并给出各种方法使用的详细步骤,以便读者能够很好地掌握理解。
keil c51程序设计中集中精确延时方法
08-03
实现延时通常有两种方法:一种是硬件延时,要用到定时器/计数器,这种方法可以提高CPU的工作效率,也能做到精确延时;另一种是软件延时,这种方法主要采用循环体进行。
Keil C51程序设计中几种精确延时方法.doc
05-31
Keil C51程序设计中几种精确延时方法.doc
c51语言双层for循环延时2ms,Keil_C51_for循环精确延时
09-20
C51 语言中,可以使用循环来实现延时。以下是实现双层 for 循环延时 2ms 的示例代码: ```c #include <reg52.h> void delay_2ms() { unsigned char i, j; for (i = 0; i < 250; i++) { for (j = 0; j < 127; j++) { // 空循环 } } } void main() { // 执行其他操作 delay_2ms(); // 执行其他操作 while (1) { // 无限循环 } } ``` 上述代码中,双层循环的执行次数经过调试得出,以实现延时约为 2ms。其中外层循环执行 250 次,内层循环执行 127 次,通过调整这两个循环的执行次数可以实现精确延时

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • 处理效应模型stata实例_重复测量数据分析系列:再谈多层混合效应模型(基于Stata)... 7301
  • nacl溶解度_氯化钠溶解度4 氯化钠溶解度不同温度的 5664
  • 计算机挂载磁盘阵列,史上最简单的RAID(磁盘阵列)教程!没有之一 4831
  • mysql去除数据中的tab_SQL去除数据库表中tab、空格、回车符等特殊字符的解决方法... 4827
  • dword类型和十进制有什么区别_西门子S7-1200plc支持的数据类型 4255

大家在看

  • 【GIC400】——SGI 软件中断
  • 【GIC400】——GIC 简介 39
  • 【GIC400】——PLIC,NVIC 和 GIC 中断对比 169
  • Mysql子查询 1
  • AI智能体|一分钟教你学会使用扣子Coze工作流

最新文章

  • es文件管理连接ftp服务器,es文件连接ftp服务器
  • bootstrap-select.css,Bootstrap Select
  • 计算机课题参与者的学术背景,课题参与有几种方法
2021年111篇
2020年18篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

深圳SEO优化公司防城港网站优化排名报价三亚建设网站公司临汾seo优化价格襄樊企业网站建设价格天门网站排名优化多少钱信阳建网站推荐果洛阿里店铺托管多少钱林芝网站搜索优化推荐广元建设网站多少钱临猗百度标王公司吉安网站推广方案多少钱黄南网站定制价格亳州网站排名优化哪家好巢湖模板制作价格漳州seo排名哪家好德宏企业网站改版多少钱包头百度爱采购推荐锦州网页制作价格清远关键词按天计费哪家好大芬百姓网标王推荐中卫企业网站建设玉林网站排名优化多少钱襄阳设计网站哪家好扬州seo网站推广哪家好海西关键词排名玉林网站开发哪家好莱芜网站设计价格丽水百度竞价报价泰安seo网站推广公司丽水百度网站优化排名报价歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化