当前位置:首页 >> 单片机入门 >> PIC单片机入门必看

PIC单片机入门必看

PIC 单片机 入门 作者:admin 来源:不详 发布时间:2018-05-18 13:25:27   浏览:4

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

免费的集成开发环境MPLAB IDE

免费的集成编译调试环境:集成了工程管理、语法高亮显示的文本文件编辑器、汇编编译器、功能强大的软仿真调试器等,同时可外挂多种C编译器、硬件仿真调试器、烧写器等。

下载地址:http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469&part=SW007002

注意事项:必须安装在C:盘,工程及文件夹名、文件名不能有中文及其他双字节文字。

扩展阅读:PIC单片机是什么

主要的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单片机汇编语言编程基础

http://bbs.颖特新.com/icview-86137-1-1.html

关于内置或外置EEPROM E2ROM 容易丢数据的一些问题讨论

http://bbs.颖特新.com/icview-85555-1-1.html 

PICC中的ram和rom的一定空间,如何让编辑器保留?

http://bbs.颖特新.com/icview-220292-1-1.html

编辑:admin  最后修改时间:2018-05-28