提到单片机,大家首先想到的可能是51和STM32,但PIC单片机在工业控制和小家电领域其实用得非常多。微芯科技(Microchip)的PIC系列以可靠性高、抗干扰强著称,很多家电、汽车电子、工业控制板子里都能看到它的身影。
PIC单片机跟51和STM32的架构不太一样。51是经典的8位CISC架构,指令集复杂;STM32是ARM Cortex-M内核的32位RISC架构;而PIC是哈佛结构的RISC架构,指令和数据总线分开,取指和执行可以流水线操作,速度更快。PIC的指令集非常精简,常见的也就30多条指令,学起来比51简单。
PIC单片机的产品线很全。8位的有PIC10、PIC12、PIC16、PIC18系列,其中PIC16是最经典的,很多人入门就是从PIC16F877A开始的。16位的有PIC24系列,32位的有PIC32系列,用的是MIPS内核。选型的时候根据项目需求来,简单的IO控制用PIC12、PIC16就够了,复杂点的上PIC18或PIC24。
入门开发环境用MPLAB X IDE,这是微芯官方的IDE,免费下载,支持C语言和汇编。编译器用XC8(8位)、XC16(16位)、XC32(32位),免费版够用,就是优化等级低一点。烧录器用PICkit或者ICD,PICkit比较便宜,适合入门。开发板的话买个PIC16F877A的最小系统板就行,十几块钱。
写PIC程序跟写51程序思路差不多,都是配置寄存器、操作IO口、配中断。但PIC的寄存器命名和操作方式跟51不太一样,比如配置IO口方向要用TRIS寄存器,输出数据用PORT寄存器,输入用PORT读。PIC的中断是单一中断入口,不像STM32有独立的中断向量,需要在中断函数里判断是哪个中断源触发的。
PIC单片机的优势在于抗干扰和可靠性。它内部集成了很多保护机制,比如看门狗、低电压检测、上电复位,在工业现场那种电磁环境复杂的地方比51稳定得多。缺点是生态不如STM32丰富,教程和开源项目少一些,遇到问题得自己啃数据手册。不过只要入门了,用起来还是很顺手的。
上一篇:Protel99SE元件库制作心得:从零画一个好用的原理图库
下一篇:没有了