历史上的今天
今天是:2025年02月07日(星期五)
2020年02月07日 | PIC单片机入门必看基础知识
2020-02-07 来源:eefocus
PIC单片机的特点及与51系列单片机的区别:
这里仅以使用广泛的中低档PIC16/PIC12/10系列为例说明。
PIC系列单片机采用哈佛总线结构,程序空间总线和数据总线分开,地址长度也不一样,也同样不在一个连续的空间,程序为单字结构,一句程序占用一个程序字长,这与51不一样,51系列则采用冯.诺依曼结构,程序空间和数据空间共用一组8BIT的总线,程序空间和数据空间共用一个连续的地址空间;程序为多字节结构,根据不同指令及数据每句程序有不同的长度,这种结构有可能在程序跑飞的时候让系统把数据当做指令执行。
PIC系列单片机使用精简指令集,总共不超过35条指令,采用预取指令的做法使绝大多数指令只要一个指令时钟周期,51则采用复杂指令集,需要4个或更多指令周期才能执行一条指令。
PIC中低档单片机只有一个中断入口,一些低档单片机甚至没有中断,中断发生后需要用软件清除中断标志,并且需要用软件来判断中断源,这与51系列有丰富的中断入口相比有一些局限,而且由于指令长度的局限,PIC 程序和数据寻址采用分页(PAGE)和分块(BANK)的做法,在程序跳转和数据查找方面需要注意页面和块的跳转。
PIC系列单片机采用硬件堆栈,堆栈只储存程序跳转前的程序地址,而且堆栈深度最多8级,不能支持程序的无限嵌套,不能使用51系列PUSH,POP等方便的数据堆栈指令来保护现场。在中断中保护现场比较繁琐。
上一篇:PIC单片机特点和优势介绍
下一篇:PIC单片机各功能模块介绍
史海拾趣
|
本帖最后由 paulhyde 于 2014-9-15 09:26 编辑 在DDS设计中,要求实现VPP的幅度调整,看过一些资料是用产生波形的DA的输出接在ad0832的VREF端,我有几个问题不是很清楚: 1、这样的连接方法,是不是对DA的速度没有要求?就是说信号的频率高于DA的 ...… 查看全部问答> |
|
硬件:熊猫pm828c无线网卡+Pocket PC 软件:vs2005+Windows Mobile SDK for Pocket PC 做短信收发程序时,出现Error:无法找到PInvoke DLL\"cemapi.dll\"的入口点\"#20\". 这是什么原因? 谢谢!!!… 查看全部问答> |
|
从单片机初学者迈向单片机工程师!回复 kobe1941 一个不错的资料 这个 是很久前一个斑竹给我的,再次上传希望大家看看。 惭愧的是我最近才仔细的看这个资料 后悔莫及啊。。。。。。 简单介绍: 释放CPU 模块化 键盘 LED 。。、 。。 让你跳出演示实验!!跳出LED的地狱。。。。 其实学习了才知道,一 ...… 查看全部问答> |
|
在上一篇文章中我们分析了jni的led service代码,该代码通过调用led的HAL层代码,实现了mokoid_init, mokoid_setOn, mokoid_setOff三个C/C++接口,但是该接口还无法直接提供给java程序使用,因此还需要一段java代码通过jni调用这些操作接口。 下面 ...… 查看全部问答> |
|
目前,MOS工艺的绝缘栅场效应管由于其优越的性能在分立元件和集成电路方面都得到了广泛的应用。由其结构可以看出,目前的场效应管是在沟道的两端各扩散一个PN结,形成一种PN结背靠背连接的结构。 以P型衬底N沟道增强型场效应管为例,在电路中,源 ...… 查看全部问答> |
|
【我为C2000 LaunchPad“画”外围】 -----电子负载电路调试完成 昨天以前,把程序做得差不多了,今天把就把板子在程序指挥下工作,遇到了不少问题,现已基本解决,功能性调试完成! 下一步该调整性能了。 … 查看全部问答> |




