7385|5

207

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

PIC 入门须知 [复制链接]

芯片数据手册:可在www.microchip.com 查找及下载,目前大多数新的芯片均有中文数据手册

看论坛没有,就来个汇总的

免费的集成开发环境MPLAB IDE
免费的集成编译调试环境:集成了工程管理、语法高亮显示的文本文件编辑器、汇编编译器、功能强大的软仿真调试器等,同时可外挂多种C编译器、硬件仿真调试器、烧写器等。
下载地址:http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469&part=SW007002
注意事项:必须安装在C:盘,工程及文件夹名、文件名不能有中文及其他双字节文字。

主要的C语言编译器
介绍及下载网址:http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en534868&page=wwwCompilers
目前MPLAB支持所列的所有C编译器的内嵌调试,单步,全速都没问题。
注意事项:不同的单片机系列必须使用不同的编译器,目前大多数编译器都有免费的试用版或限制版本下载,正版的也不贵。

低成本下载器、在线调试器

目前有ICD2,KIT2,ICD3,KIT3,推荐ICD3,KIT3,
介绍网址:http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2519¶m=en534451

ICD3,KIT3特点:成本低,速度快,集成了编程器(或称下载器)和在线调试器,支持多断点,调试、下载速度非常快,而且KIT2、KIT3支持脱机烧写,这对一些不方便拿到电脑边调试的项目很有用,而且可以作为小批量量产的选择方案

注意事项:缺点是要占用一定的单片机资源,包括引脚、部分程序和数据寄存器等,而且要特别注意引脚上面零件不能影响电平及数据通讯,20PIN及以下的单片机需要用一个专门制作的DEBUG转接头才能仿真,否则只能烧写程序后盲调。
引脚的接法及注意事项在每种产品的用户手册里均有特别说明。


使用低成本在线调试器(ICD2,ICD3,KIT2,KIT3)调试之前须知
首先请确认:
1.MCLR上不能有大于104的电容,不能有钳位二极管,PGD,PGC上不能有任何电容电感性负载,不得有上拉电阻。连线不得超过0.5米。USB线也很重要,大街上买的3块一根的线不能用,这些都将导致通讯不畅,容易死机等毛病。
2.在MPLAB中连上在线调试器之前,最好确认选择由目标板供电。连上之后请确认是否识别出目标芯片。
3.建立工程,加入源文件之后,用C的必须选择DEBUG模式编译,用汇编的必须留出一定的资源给DEBUG模块使用,具体什么资源,请参考MPLAB帮助。每次修改程序编译成功之后必须重新烧写(或叫下载)。

常见问题,也是最需要注意又常常被忽略的问题:
ICD2,KIT2,ICD3,KIT3常常掉线或连接不上,这都是USB惹的祸,请使用原装的USB线或到市场上买一根20块钱的有屏蔽层的USB线,这样会省很多麻烦



PIC单片机系列介绍
PIC单片机目前有8位系列、16位系列和32位系列,简单介绍如下:

8位机系列
早期一次性编程的有PIC12Cxxxx系列、PIC16CXXX系列,目前不推荐使用,但还有一些老产品在用,所以还有出货。
目前的FLASH系列产品,PIC10FXXX、PIC12FXXX、PIC16FXXX,PIC18FXXXX等,PIC10F/PIC12F属于低档8位单片机,某些系列带8BIT AD口,价格低,体积小,适合一些小应用,PIC16F属于中档8位单片机,大多数带10BIT AD口,还有诸如CCP,SPI,I2C,UART等外设端口,价格适中,出货量大,PIC18F系列属于高档8位单片机,价格偏高,小批量购买的价格和16位单片机差不多。当然外设功能丰富。
8位机的C编译器,PIC10,12,16系列目前的主流编译器是HI-TECH的PICC,18系列的主流编译器有HI-TECH的PICC18及PICC18MCHP自己的PICC18,均为收费软件,但有评估板或限制版供免费下载使用。
单片机介绍网址:http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2696¶m=en537796



16位单片机系列
有dsPIC30F系列,dsPIC33FJ系列,PIC24F系列,PIC24H系列
dsPIC30F及dsPIC33FJ系列是MCHP推出的带DSP内核的高性能数字信号控制器,被称为"DSC",dsPIC30F是5V供电系统,33FJ系列是3.3V供电系统。适合需要一些高速处理AD信号的场合,其中33FJXXXGPXXX系列适合音频数字信号处理,33FJXXXMCXXX及30F系列适合马达控制场合。

PIC24F系列及PIC24H系列是普通的16BIT MCU,适合一些要求较高的应用场合

16位单片机共用一种C编译器:MCHP自己的PICC30及HI-TECH的PICC30,收费软件,同样有限制版或试用版供下载免费使用。

16位DSC及MCU介绍网址:http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2629¶m=en533465


32位单片机系列
PIC32系列为MCHP在2007年发布的一个系列高端单片机系列,最高工作频率80MHz,
以下文字是我从网站说明直译,有错请指出:
其特点:



80 MHz, 1.56 DMIPS/MHz CPU core

80MHz,每MHz的工作频率可提供1.56MIPS的整数运算能力的内核。


Single cycle multiply and divide hardware
单指令周期的乘法和除法运算器
Flash pre-fetch module, 256Byte cache
FLASH预取指令技术,256字节深度缓存
Fast context switch and interrupt response
高速切换及中断响应
8 ch. DMA controller
8通道 直接存储器存取控制器
Key peripherals have dedicated DMA channels
键周边设备有专用的 直接存储器存取通道

Atomic bit manipulation

最小单位的二进制处理?



PIC单片机的特点及与51系列单片机的区别:

这里仅以使用广泛的中低档PIC16/PIC12/10系列为例说明。
PIC系列单片机采用哈佛总线结构,程序空间总线和数据总线分开,地址长度也不一样,也同样不在一个连续的空间,程序为单字结构,一句程序占用一个程序字长,这与51不一样,51系列则采用冯.诺依曼结构,程序空间和数据空间共用一组8BIT的总线,程序空间和数据空间共用一个连续的地址空间;程序为多字节结构,根据不同指令及数据每句程序有不同的长度,这种结构有可能在程序跑飞的时候让系统把数据当做指令执行。
PIC系列单片机使用精简指令集,总共不超过35条指令,采用预取指令的做法使绝大多数指令只要一个指令时钟周期,51则采用复杂指令集,需要4个或更多指令周期才能执行一条指令。
PIC中低档单片机只有一个中断入口,一些低档单片机甚至没有中断,中断发生后需要用软件清除中断标志,并且需要用软件来判断中断源,这与51系列有丰富的中断入口相比有一些局限,而且由于指令长度的局限,PIC 程序和数据寻址采用分页(PAGE)和分块(BANK)的做法,在程序跳转和数据查找方面需要注意页面和块的跳转。
PIC系列单片机采用硬件堆栈,堆栈只储存程序跳转前的程序地址,而且堆栈深度最多8级,不能支持程序的无限嵌套,不能使用51系列PUSH,POP等方便的数据堆栈指令来保护现场。在中断中保护现场比较繁琐。

PIC单片机汇编语言编程基础

https://bbs.eeworld.com.cn/viewthread.php?tid=292630&extra=page%3D1&frombbs=1

 

[ 本帖最后由 芝锐 于 2011-6-2 10:21 编辑 ]

最新回复

太给力了,楼主  详情 回复 发表于 2015-6-16 11:12
点赞 关注(1)
 

回复
举报

2130

帖子

0

TA的资源

五彩晶圆(中级)

沙发
 
支持
 
 
 

回复

9

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
楼主 介绍的很全面啊
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

4
 
太给力了,如果有实际的例程就好了
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

5
 
谢谢,见识了。
 
 
 

回复

3

帖子

0

TA的资源

一粒金砂(初级)

6
 
太给力了,楼主
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表