PIC单片机入门必看基础知识

2020-02-07来源: eefocus关键字:PIC单片机  入门必看  基础知识

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://news.eeworld.com.cn/mcu/ic487497.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:PIC单片机特点和优势介绍
下一篇:PIC单片机各功能模块介绍

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

PIC单片机入门_MPLAB 集成开发环境和 MPASM编译器
1.七大汇编指令1.1 #INCLUDE语法:  #include “文件名.*” 或<文件名.*> 或无括号 或 引号示例:   #INCLUDE p12f675.inc1.2 #DEFINE用于定义变量和分配初始值;用户友好的名字被分配给常数,寄存器 ,管脚名等. 使程序易读;例:   #DEFINE MYCONSTANT H’5A’1.3 _ _CONFIG设置配置位1.4 ORG语法: ORG   <address>例: ORG 0x0000描述:  定义起始地址(0x0000).1.5 EQU语法:  &nbs
发表于 2020-03-09
PIC单片机入门_MPLAB 集成开发环境和 MPASM编译器
PIC单片机的第一个例程
今天白天在网上找软件找了好久,在官网下了MPLAB,和PICC还要注册比较麻烦。今天用的软件Protues仿真的。 第一个程序点亮一盏灯,电路很简单。下面贴出程序。 #include <pic.h>//包含头文件int main(void){    TRISB=0x00;//PortB方向寄存器,PortB为输出         while(1)    {         
发表于 2020-03-09
PIC单片机存储器拓展
择备用电池顶替上,改为备用电池供电,确保感应水龙头能正常工作不受影响。英锐恩开发芯片PIC16F684是Microchip的8位单片机产品,其功能特性主要有以下几点:增强中程核心,49个指令,16个堆栈级别具有自读写功能的FLASH程序存储器96 LCD段驱动支持内32 MHz振荡器集成电容mTouch传感模块综合温度指示器MI2C,SPI,EUSART W/AUTOW3 ECCP和2 CCP(增强/捕获比较PWM)可选电压基准的比较器14路电压基准10b模数转换器25 mA源/槽电流I/O四个8位定时器(TMR 0/TMR 2/TMR 4/TMR 6)一个16位定时器(TMR 1)扩展看门狗定时器(EWDT)增强型断电复位棕色复位
发表于 2020-03-08
如何在PIC单片机的GPIO引脚上生成PWM信号
T_OFF, 如上所示。T_OFF = T_TOTAL – T_ON鉴于这些公式,我们可以开始编程PIC单片机。该程序涉及PIC定时器模块 和PIC ADC模块 ,根据POT的ADC值,根据变化的占空比创建PWM信号。编程PIC在GPIO引脚上生成PWM在本节中,让我们了解程序的实际编写方式。像所有程序一样,我们首先设置配置位。我已经使用了memory views选项为我设置它。// CONFIG#pragma config FOSC = HS        // Oscillator Selection bits (HS oscillator)#pragma config WDTE
发表于 2020-03-08
如何在PIC单片机的GPIO引脚上生成PWM信号
PIC单片机的新开发环境--MPLAB X IDE
自从学习pic单片机开始所有的历程全部是以MPLAB  IDE为编译环境,然MPLAB  IDE即便是最新的版本在win7 64位下运行也会出现挂载不上picc编译器的情况,这就导致了作为初学者的我选择了更换电脑系统的下下策。我安装了win7 32位系统,首先说32位系统会吞掉将近一个多G的内存分配给显卡,而且32位系统最多识别4个G的内存所以家内存条也解决不了问题,也就是说实际电脑使用的时候能用到的内存只有2个多G,这将对我们电脑的工作产生非常大的影响。于是我在网上搜罗发现Microchip公司推出的新版本的编译环境MPLAB X IDE是可以在windows7-10之间畅游的,所以便打起了这个家伙的主意
发表于 2020-03-05
PIC单片机之硬件仿真的配置字问题
注意:本实验的芯片是PIC24FJ256DA210,用到的开发环境是:MPLAB IDE v8.92   编译工具是xc16-gcc.exePIC单片机在硬件仿真的时候如果配置字配置不好,会出现不能仿真的后果,会有下面提示:PK3Err0040: The target device is not ready for debugging.Please check your configuration bit settings and programthe device before proceeding.如下图:这时候我的配置字是这样的:        _CONFIG1
发表于 2020-03-04
PIC单片机之硬件仿真的配置字问题
小广播
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved