使用MPLAB C30编译器制作自己的库文件33.pdfVIP

使用MPLAB C30编译器制作自己的库文件33.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
使用MPLAB C30编译器制作自己的库文件33

在MPLAB C30 的编译器下制作自己的库和使用方法 作者:不负责任的天使^_^ 最近我学习了一下gcc 编译器,感觉gcc 很强大,感觉深不见底,很好的东西,里面有一个 制作自己的函数库,我非常感兴趣,同时,我是学习pic 单片起身的人,了解pic 系列单片 机16 位的人应该知道,16 位的pic 单片机使用的是C30 gcc 编译器,gcc 原有是GNU 组织推 出,GUN 是一个倡导软件程序源代码的自由的组织,现在有好多嵌入式编程都是开发环境 都使用的是gcc 编译器,并且大名鼎鼎的开源操作系统 Linux 必需是使用gcc 编译器,同时 gcc 编译器通用性很强,可以经过改编适应其他的系统和一些硬件的使用,所以gcc 编译器 的强大,不是我说的这一点点。下面介绍如何将创建自己的库和创建自己的库的意义及其应 用: 要想制作自己的库必需懂得一些dos 的命令操作,和gcc 编译器的一些简单命令,下面介绍 一些自作自己的库函数的一些设置: ①环境变量的设置,例如 在“CHL 的用户变量“中改变”PATH “选项,添加上你安装C30 编译器的路径例如我的电脑 中是 PATH G:\ Program\ UltraEdit\;G:\ Program\ MinGW\bin;G:\ Program\ Microchip\compiler\C30\bin; 然后还要新建一个PIC30_C_INCLUDE_PATH 路 径 : G:\ Program\ Microchip\compiler\C30\include;G:\ Program\ Microchip\compiler\C30\support\dsPI C30F\h; (这两个文件目录都要加上) 以上的目录因C30 安装的不同而不同,要根据自己安装路径而设定 (如果你的原来PATH 路径中有东西,在原来的的基础上加上“; ”然后在原来的路径上加上 你安装MPLAB C30 编译器的路径,我的是G:\ Program\ Microchip\compiler\C30\bin;设置这个 路径的目的是为了在使用C30 编译器是能找到pic30-gcc.exe 和pic30-ar.exe(这个程序是制作 函数库用的,制作完成是*.a)) ②创建一个项目,文件组成如下: CommonFunction.c 文件内容如下: /* ******************************************************************************* ******************** CommonFunction.c filename :CommonFunction.c description :本文件是为了编写函数方便而建设的,以后在一般的文件中包含该文件即可,其 他工程即可使用 author : “不负责任的天使^_^ ” ******************************************************************************* ******************** */ #include CommonFunction.h /*void delay1us(void)*/ //精确延时1us extern void delay1us(void) { // 呼叫这个函数需要两个指令周期,返回还需要两个指令周期 Nop();Nop();Nop();Nop();Nop(); //软件精确延时5 个指令周期 Nop();Nop();Nop();Nop();Nop(); Nop();Nop();Nop();Nop();Nop(); Nop(); //Nop()延时16 个指令周期,加上函数的调用和返回正好20 个指令周期 } / *void delay(INT16U count)*/ //延时函数 extern void delay(INT16U count) { while(count--) delay1us(); } test.c 文件内容如下: /

文档评论(0)

mliaojfangwi + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档