c51单片机编程,c51单片机流水灯
各位老铁们,大家好,今天由我来为大家分享c51单片机编程,以及c51单片机流水灯的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!
求51单片机浮点运算子程序 C51编程
你应该了解一下所用的C编译程序有没有带浮点库。如能选用一个带浮点库的C编译程序,就行了。
否则,你要自己编写浮点子程序的话,最好也不应该用C语言编,而应该用汇编来编,最后连接时再和你的C语言的主程序连接在一起。
因为,如过你的浮点子程序都是直接用C语言写的,那效率就太低了。在51单片机这样的环境下,恐怕大多数的应用,都会嫌它太笨重,不合要求。
你说你过去用汇编语言“直接调用子程序”,请问那些子程序是自己编的呢?还是某个开发系统提供的标准子程序?
如果是你自己编的,那么,你只要了解一下C51中函数的出口入口的寄存器规则,将你的子程序改一下,使他符合这些规则,即可。
如果那些子程序是别人提供的标准子程序,那么您可以了解一下,那些子程序的入口、出口条件是否和C语言的要求兼容,如果兼容,那就可以直接连接了。
【补充一点看法】
从您的问题补充来看,您的应用中对精度的要求不高,完全可以采用定点的Q格式,不用浮点运算。最合理。
假如用浮点,即使浮点子程序都是汇编编的,效率也会比定点的Q格式差很远(一、两个数量级)。如果子程序本身再用C语言来编,那就更不知差到什么程度了。
单片机应用及C51程序设计的内容简介
《单片机应用及C51程序设计(第2版)》第2版以目前广泛应用的AT系列和STC系列的51单片机、KeilC51编译器和μ Vision集成开发环境为背景,并结合作者设计的单片机硬件实验装置,较全面地介绍了C51程序设计和程序处理方面的内容,其突出的特点是资料丰富、内容紧凑、讲解透彻,面向实践性教学环节,面向实际应用。
全书共分4篇。第1篇介绍51单片机的背景知识、典型芯片、开发环境和软硬件工具;第2篇介绍C51程序设计(包括混合编程和实时操作系统支持下的多任务编程)、库函数/头文件和程序的编译处理;第3篇为μ Vision的典型操作和程序调试;第4篇为C51程序设计的实践项目和程序实例。
《单片机应用及C51程序设计(第2版)》的特色:(1)面向学习和一般应用,介绍51单片机的典型芯片、常用开发工具和开发手段,特别是对斗μ Vision下的调试资源和调试操作进行了较详细的描述;(2)从标准C起步学习C5l,适合短学时的C51授课;(3)提供了较多的参考资料,并较多地采用了表格的描述形式,内容比较浓缩精炼;(4)设计了31个大的实践项目,并提供60多个从易到难可直接运行演示的程序实例;(5)每个程序实例都有详细的说明和注释,演示内容饶有趣味,其中许多C函数可以作为模块资源来加以利用。
《单片机应用及C51程序设计(第2版)》可以用做高等院校、中等职业技术学校的教材和参考书,在单片机教学、实验、实训、课程设计和毕业设计等环节发挥作用;或者用做培训机构的单片机培训教材;或者供具有一定基础的读者自学。
《单片机应用及C51程序设计(第2版)》也可为从事单片机开发和嵌入式应用的工程技术人员提供参考。
关于C51单片机单片机的几个问题
1、徐汉斌版单片机微型计算机原理教材P144上说“中断服务程序最后一条指令必须是中断返回指令RETI”,
这句话是不是错了?
如果最后一句话是跳转指令不是也可以么,只不过程序不会回到断点处罢了,PC也会填充跳转处PC地址
--写跳转指令、或者写其它什么指令,都行,随你便。单片机都会执行。
--只是,单片机没有执行 RETI指令,中断程序就没有结束。
--如果,你不写 RETI,中断后,单片机就永远处于中断程序之内。
2、在方式0定时器T0的初值为1E0CH,则TH0,TL0的初值分别为()
这题答案给的居然是F0H、0CH,我觉得分明是1EH、0CH啊,是不是答案错了
--写成二进制:1E0CH= 0001 1110 0000 1100B
--取其低 13位,写成高八位、低五位:11110000、01100
--方式0的初值,就应该是:F0、0C。
3、”MCS 51的程序计数器PC不能被用户使用,因为他没有地址“,
首先,不能被用户使用指的收拾什么?其次,它没有地址那他到底在哪?
--PC的数值,时时刻刻,在自动加一,这个特点,用户对其,不可控制。
--但是,用户,可以用 JMP指令,改变 PC的数值。
--说 PC不能被用户使用,实际上是他不会用。
--51单片机里面,确实没有 PC的地址,因为,谁都不需要这个地址。
4、MOV 20H,@DPTR这个语句错了是因为DPTR只能用于片外寻址么
--这个指令,并不存在。
DPTR只能用于片外寻址么
--查一下指令表,就知道了。
5、”80C51单片机子程序调用时能自动保护断点和现场“,
这句话错了是不是因为只能自动保护断点不能自动保护现场?
--中断时,51单片机,采用压栈的方法,自动的保护断点地址。
--保护现场?
--单片机,不知道你的现场是什么。
--把单片机和保护现场联系在一起,就是狗戴嚼子,胡勒!
6、MOV A,#33H是把33H当成无符号数吧?那么如果我想移入一个带符号数呢
就写上负号即可。
MOV A,#-33H
这就行了。
7、向前转移的偏移量为什么等于(目的地址+0100H)-(原地址+3),0100H是什么?
--编写程序,现在都用编译软件来进行编译。
--编译软件,会自动计算程序中的偏移量。
--编程人,根本不用讨论偏移量的计算,以及推导公式。
--有些教材,作者的思维,还停留在人工编译的阶段,抱残守缺,不用理他。
--0100H,是256。
c51单片机编程的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于c51单片机流水灯、c51单片机编程的信息别忘了在本站进行查找哦。