搜索
bottom↓
回复: 13

最新版本的MPLABX IDE是否支持PIC12系列的C语言开发

[复制链接]

出0入0汤圆

发表于 2014-10-8 15:20:09 | 显示全部楼层 |阅读模式
如题,很久以前用过PIC32做开发,那时候还没有MPLABX,不知现在的MPLABX是否已支持PIC12的C语言开发

出0入0汤圆

发表于 2014-10-8 15:27:25 | 显示全部楼层
支持的吧,我看我们工程师就在用的

出0入0汤圆

发表于 2014-10-8 15:37:50 | 显示全部楼层
MPLAB IDE已經被遺棄了,所以MPLAB X IDE應該是目前MicroChip唯一的IDE,所以理論上是要支持所有型號的。
但是因爲MPLAB X IDE慢得令人髮指,所以我都是直接用命令行invoke編譯器和PK3CMD的,MPLAB X IDE衹在新建工程時調下設置和生成makefile。

出0入0汤圆

 楼主| 发表于 2014-10-8 17:28:49 | 显示全部楼层
哦 了解了!多谢多谢

出0入0汤圆

发表于 2014-10-8 18:13:27 | 显示全部楼层
支持的~PICC编译器就可以

出0入12汤圆

发表于 2014-10-8 18:15:13 | 显示全部楼层
MPLABX IDE 是个 IDE,你需要 XC8 编译器。

出0入0汤圆

发表于 2014-10-9 13:56:18 | 显示全部楼层
千万不要用MPLABX;3楼说得对,慢得令人发指!

出0入0汤圆

 楼主| 发表于 2014-10-10 17:27:35 | 显示全部楼层

三楼的哥们儿的方法有没有相关的文档参考一下

出0入0汤圆

发表于 2014-10-10 17:58:21 | 显示全部楼层
本帖最后由 qlb1234 于 2014-10-10 21:59 编辑
eagle_avr 发表于 2014-10-10 21:27

三楼的哥们儿的方法有没有相关的文档参考一下


用MPLAB X IDE建好工程,就會有makefile。
打開一箇命令行窗口,將MPLAB X IDE自帶的GNU工具的路徑,加入到環境變量PATH裏。編譯器的路徑也是這樣操作。
留意你在MPLAB X IDE中,按下編譯鍵,會產生甚麼命令,然後照抄到你的命令行窗口內,就可以得到同樣的效果了。

PK3CMD是MPLAB IDE自帶的燒錄工具,也是命令行操作的。
找到你編譯好的hex文件,用這箇工具控制PICkit 3,將他燒錄到器件內。

這樣說可以理解嗎?

出0入0汤圆

发表于 2014-10-10 21:11:36 | 显示全部楼层
可以支持12系列的,用picc或xc8,正在用这个开发项目,挺好用的,比旧的好用多了,启动时慢了点,java程序都这样,其它很好用。

出0入0汤圆

 楼主| 发表于 2014-10-11 09:21:34 | 显示全部楼层
非常感谢qlb1234的回复,我还有几个疑问:
1. 打開一箇命令行窗口  这个操作是在windows下的cmd.exe命令行,而不是linux下的终端命令行吧?
2. 如何将將MPLAB X IDE自帶的GNU工具的路徑和編譯器的路徑加入到環境變量PATH裏?
3. 如果我在MPLAB X IDE 里编译一个项目会出现这样的以下提示,我需要用到的命令是哪些呢?
    make -f nbproject/Makefile-default.mk SUBPROJECTS= .build-conf
make[1]: Entering directory `F:/12F1822_I2C_EEPROM/12F1822_I2C_EEPROM.X'
make  -f nbproject/Makefile-default.mk dist/default/production/12F1822_I2C_EEPROM.X.production.hex
make[2]: Entering directory `F:/12F1822_I2C_EEPROM/12F1822_I2C_EEPROM.X'
"C:\Program Files\Microchip\xc8\v1.33\bin\xc8.exe" --pass1  --chip=12F1822 -Q -G --asmlist  --double=24 --float=24 --opt=default,+asm,-asmfile,+speed,-space,-debug --addrqual=ignore --mode=free -P -N255 --warn=0 --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,+osccal,-resetbits,-download,-stackcall,+clib --output=-mcof,+elf "--errformat=%%f:%%l: error: %%s" "--warnformat=%%f:%%l: warning: %%s" "--msgformat=%%f:%%l: advisory: %%s"  -obuild/default/production/_ext/1472/12F1822_I2C_EEPROM_Example.p1  ../12F1822_I2C_EEPROM_Example.c
"C:\Program Files\Microchip\xc8\v1.33\bin\xc8.exe"  --chip=12F1822 -G --asmlist -mdist/default/production/12F1822_I2C_EEPROM.X.production.map  --double=24 --float=24 --opt=default,+asm,-asmfile,+speed,-space,-debug --addrqual=ignore --mode=free -P -N255 --warn=0 --summary=default,-psect,-class,+mem,-hex,-file --output=default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,+osccal,-resetbits,-download,-stackcall,+clib --output=-mcof,+elf "--errformat=%%f:%%l: error: %%s" "--warnformat=%%f:%%l: warning: %%s" "--msgformat=%%f:%%l: advisory: %%s"   -odist/default/production/12F1822_I2C_EEPROM.X.production.elf  build/default/production/_ext/1472/12F1822_I2C_EEPROM_Example.p1     
Microchip MPLAB XC8 C Compiler (Free Mode) V1.33
Part Support Version: 1.33 (A)
Copyright (C) 2014 Microchip Technology Inc.
License type: Node Configuration

:: warning: Omniscient Code Generation not available in Free mode

Memory Summary:
    Program space        used   1C9h (   457) of   800h words   ( 22.3%)
    Data space           used    3Ch (    60) of    80h bytes   ( 46.9%)
    EEPROM space         used     0h (     0) of   100h bytes   (  0.0%)
    Data stack space     used     0h (     0) of    3Ch bytes   (  0.0%)
    Configuration bits   used     2h (     2) of     2h words   (100.0%)
    ID Location space    used     0h (     0) of     4h bytes   (  0.0%)


Running this compiler in PRO mode, with Omniscient Code Generation enabled,
produces code which is typically 40% smaller than in Free mode.
The MPLAB XC8 PRO compiler output for this code could be 182 words smaller.
See http://microchip.com for more information.

make[2]: Leaving directory `F:/12F1822_I2C_EEPROM/12F1822_I2C_EEPROM.X'
make[1]: Leaving directory `F:/12F1822_I2C_EEPROM/12F1822_I2C_EEPROM.X'

BUILD SUCCESSFUL (total time: 4s)
Loading code from F:/12F1822_I2C_EEPROM/12F1822_I2C_EEPROM.X/dist/default/production/12F1822_I2C_EEPROM.X.production.hex...
Loading symbols from F:/12F1822_I2C_EEPROM/12F1822_I2C_EEPROM.X/dist/default/production/12F1822_I2C_EEPROM.X.production.elf...
Loading completed

出0入0汤圆

发表于 2014-10-11 09:58:23 | 显示全部楼层
eagle_avr 发表于 2014-10-11 13:21
非常感谢qlb1234的回复,我还有几个疑问:
1. 打開一箇命令行窗口  这个操作是在windows下的cmd.exe命令行 ...

1. 打開一箇命令行窗口  这个操作是在windows下的cmd.exe命令行,而不是linux下的终端命令行吧?
無所謂。不論Windows和Linux,操作方法是一樣的。

2. 如何将將MPLAB X IDE自帶的GNU工具的路徑和編譯器的路徑加入到環境變量PATH裏?
Windows:
假如路徑是C:\MPLAB
  1. set PATH=C:\MPLAB;%PATH%
复制代码

Linux:
假如路徑是/usr/MPLAB
  1. export PATH="/usr/MPLAB:$PATH"
复制代码


3. 如果我在MPLAB X IDE 里编译一个项目会出现这样的以下提示,我需要用到的命令是哪些呢?
cd到文件夾nbproject,然後
  1. make -f nbproject/Makefile-default.mk SUBPROJECTS= .build-conf
复制代码

或者直接利用make的進入文件夾功能(-C),參看
  1. make -h
复制代码

出10入10汤圆

发表于 2014-10-11 12:35:36 来自手机 | 显示全部楼层
lDE只是—个开发平台,是否支持要看你安装的编译器

出0入0汤圆

 楼主| 发表于 2014-10-11 15:18:18 | 显示全部楼层
根据qlb1234说的步骤,碰到了一些问题,刚才终于可以编译了(是在Windos 7下面操作的),总结一下:
1. 关于GUI工具的路径。
    我的MPLAB X IDE 是安装在这个目录的:C:\Program Files\Microchip\MPLABX
    用:
  1. set PATH=C:\Program Files\Microchip\MPLABX\gnuBins\GnuWin32;%PATH%
复制代码

   设置好GUI工具的路径。刚开始设置的路径不够详细:set PATH=C:\Program Files\Microchip\MPLABX;%PATH% 导致无法编译
2. 关于编译的目录。
   我的MPLAB X IDE 工程文件的路径为:F:\12F1822_I2C_EEPROM\12F1822_I2C_EEPROM.X
   打开cmd.exe必须进入这个目录下输入:
  1. make -f nbproject/Makefile-default.mk SUBPROJECTS= .build-conf
复制代码

   才能认到make,否则不能编译。

整个编译的过程贴出来:
  1. F:\12F1822_I2C_EEPROM\12F1822_I2C_EEPROM.X>make -f nbproject/Makefile-default.m
  2. SUBPROJECTS= .build-conf
  3. make  -f nbproject/Makefile-default.mk dist/default/production/12F1822_I2C_EEPR
  4. M.X.production.hex
  5. make[1]: Entering directory `F:/12F1822_I2C_EEPROM/12F1822_I2C_EEPROM.X'
  6. make[1]: `dist/default/production/12F1822_I2C_EEPROM.X.production.hex' is up to
  7. date.
  8. make[1]: Leaving directory `F:/12F1822_I2C_EEPROM/12F1822_I2C_EEPROM.X'

  9. F:\12F1822_I2C_EEPROM\12F1822_I2C_EEPROM.X>make -f nbproject/Makefile-default.m
  10. SUBPROJECTS= .build-conf
  11. make  -f nbproject/Makefile-default.mk dist/default/production/12F1822_I2C_EEPR
  12. M.X.production.hex
  13. make[1]: Entering directory `F:/12F1822_I2C_EEPROM/12F1822_I2C_EEPROM.X'
  14. "C:\Program Files\Microchip\xc8\v1.33\bin\xc8.exe"  --chip=12F1822 -G --asmlist
  15. -mdist/default/production/12F1822_I2C_EEPROM.X.production.map  --double=24 --fl
  16. at=24 --opt=default,+asm,-asmfile,+speed,-space,-debug --addrqual=ignore --mode
  17. free -P -N255 --warn=0 --summary=default,-psect,-class,+mem,-hex,-file --output
  18. default,-inhx032 --runtime=default,+clear,+init,-keep,-no_startup,+osccal,-rese
  19. bits,-download,-stackcall,+clib --output=-mcof,+elf "--errformat=%%f:%%l: error
  20. %%s" "--warnformat=%%f:%%l: warning: %%s" "--msgformat=%%f:%%l: advisory: %%s"
  21.   -odist/default/production/12F1822_I2C_EEPROM.X.production.elf  build/default/
  22. roduction/_ext/1472/12F1822_I2C_EEPROM_Example.p1
  23. Microchip MPLAB XC8 C Compiler (Free Mode) V1.33
  24. Part Support Version: 1.33 (A)
  25. Copyright (C) 2014 Microchip Technology Inc.
  26. License type: Node Configuration

  27. :: warning: Omniscient Code Generation not available in Free mode

  28. Memory Summary:
  29.     Program space        used   1C9h (   457) of   800h words   ( 22.3%)
  30.     Data space           used    3Ch (    60) of    80h bytes   ( 46.9%)
  31.     EEPROM space         used     0h (     0) of   100h bytes   (  0.0%)
  32.     Data stack space     used     0h (     0) of    3Ch bytes   (  0.0%)
  33.     Configuration bits   used     2h (     2) of     2h words   (100.0%)
  34.     ID Location space    used     0h (     0) of     4h bytes   (  0.0%)


  35. Running this compiler in PRO mode, with Omniscient Code Generation enabled,
  36. produces code which is typically 40% smaller than in Free mode.
  37. The MPLAB XC8 PRO compiler output for this code could be 182 words smaller.
  38. See http://microchip.com for more information.

  39. make[1]: Leaving directory `F:/12F1822_I2C_EEPROM/12F1822_I2C_EEPROM.X'

  40. F:\12F1822_I2C_EEPROM\12F1822_I2C_EEPROM.X>
复制代码


非常感谢qlb1234的热心帮助!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-5 11:09

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表