Program Memory KBytes 问题

[复制链接]
2288|1
 楼主| dsoyy 发表于 2013-2-4 15:18 | 显示全部楼层 |阅读模式
PIC的官网选型的时候,有2个选项:Program Memory KBytes和Program Memory KWords。

1、我们常说的单片机的存储空间应该以 KBytes为标准吧。
2、KWords,不同单片机的体系结构不同,word也就不同,PIC的手册常说的容量:最多16K x 14 字的闪存程序存储器,这个14是不是PIC一个字的大小?
3、代码编译出来的hex单位是Program Memory KBytes还是Program Memory KWords?

yewuyi 发表于 2013-2-5 15:57 | 显示全部楼层
PIC的芯片体系结构和传统的51有区别,51等芯片的指令长度是8BIT的,而PIC的指令长度并不是8BIT长度,根据芯片类别不同,PIC的指令位宽也是不尽相同的,PIC16多数是14BIT宽度,最新的PIC16F1XXX系列增加了指令宽度,对于PIC来说,其程序空间大小以KWords来描述,如果有16KWords,则意味着可以写16K行汇编指令,而在这里,KWords并不一定是16bit宽度,如果指令宽度14bit,这个KWords就相当于14bit 。
而在数据手册中又给出了一个 KBytes,主要是照顾一些过去用51结构的工程师的习惯性思维方式而已,参考一下而已,没有实质意义。
HEX文件的大小是根据HEX格式生成的文件大小,这就和WORD文件一样,例如你某一个WORD文件中写了2个字符,但你这个WORD文件的大小显然不是2byte,具体这个WORD文件的大小,则有WORD文件格式+文件内容决定。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

144

主题

566

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部