首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 电子制作
开发单片机的一些小技巧
来源:本站整理  作者:佚名  2011-10-27 15:14:40



  很多朋友正在学习单片机开发技术,但开发中免不了要碰到这样、那样的问题,有些问题可能无碍大局,但有一些问题却直接影响到产品的成本、体积、性能。这里介绍笔者的几个技巧,希望对大家的工作有帮助。

  一、C语言中嵌入汇编语言
  
  单片机开发中,通常我们使用C语言编写主程序,这样可以充分借助C语言工具提供的运算库函数及强大的数据处理能力。但C语言的可控性不及汇编语言,在有些对时序要求严格的处理上,我们还需用灵活性更强的汇编语言来编写。这样就产生了C语言和汇编语言混合编程的问题,一般分成三种方式:
  
  1.汇编语言调用C语言函数:

  2.C语言调用汇编语言;
  
  3.C语言中嵌入汇编语言。这里我们主要介绍第3种,即C语言中嵌入汇编语言。

  下面的一段程序是主程序调用精确的205 U s延时子程序并使P1.0交替输出高、低电平的方波。

  具体实现过程为:

  1.先用汇编语言编制一段延时程序,在keil开发环境中编译,然后进行软件仿真,晶振频率的设置应和你的要求相符。仿真时注意观察左边寄存器窗口内的时间显示,调整延时程序的参数可得到我们需要的精确延时。

  2.用C51编写主程序及延时子程序的外壳(等待嵌入汇编语言),假定此程序名称为test.c。

  3.将第1步所得的汇编延时子程序放入C51编写的延时子程序外壳中。注意在开始及结束时分别加上#pragmaasm、#pragmaendasm语句,这种方法是通过asm与endasm告诉C51编译器,中间行不用编译为汇编行。

  4.按照Keil的使用方法,建立工程文件并添加源程序。

  5.点击含有汇编程序的C源程序后再右击,在弹出的下拉菜单中选中OptionsforFile'test.c’(上图).这时出现下图所示的界面,勾选GenerateAssemblerSRCFile(生成汇编SRC文件)及AssemblerSRCFile(封装汇编文件)使其有效。

  6.根据项目的编译模式加载封装库文件,通常在Small模式时为C51S.LIB(该文件在C:\KeiI\C51\Lib\C51SLIB)。

  7.点击Rebuild target(重建所有目标文件)即可得到编译结果。

[1] [2] [3] [4] [5] [6]  下一页

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:125,773.40000 毫秒