打印

Program Memory KBytes 问题

[复制链接]
1927|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

粉丝