打印
[PIC®/AVR®/dsPIC®产品]

PIC 18F系列 的RETLW 指令 配合ADDWF PCL指令查表有什么要求吗?

[复制链接]
4695|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
我这样调用有什么问题吗  ?  为什么总是调用不对  而且 表格放在不同的地方调用出来的数据不一样 是什么原因呢?  请各位大侠 看看  感激不尽!!!

1.JPG (29.9 KB )

1.JPG

未命1.bmp (878.08 KB )

未命1.bmp
沙发
yewuyi| | 2014-4-29 10:11 | 只看该作者
PIC18的指令长度可能是16位的了吧。

直接C,很简单

使用特权

评论回复
板凳
a1048495714|  楼主 | 2014-4-29 10:15 | 只看该作者
yewuyi 发表于 2014-4-29 10:11
PIC18的指令长度可能是16位的了吧。

直接C,很简单

是 16位啊  但是我的地址每次 是加的2啊  

使用特权

评论回复
地板
huangxz| | 2014-4-29 10:45 | 只看该作者
直接贴工程吧,做测试工程

使用特权

评论回复
5
a1048495714|  楼主 | 2014-4-29 11:16 | 只看该作者
huangxz 发表于 2014-4-29 10:45
直接贴工程吧,做测试工程

就是这个


18f2860.rar

30.09 KB

使用特权

评论回复
6
huangxz| | 2014-4-29 12:29 | 只看该作者
a1048495714 发表于 2014-4-29 11:16
就是这个

你是要把表格的数据通过串口输出吗,没有问题啊,是顺序输出的

使用特权

评论回复
7
a1048495714|  楼主 | 2014-4-29 14:07 | 只看该作者
huangxz 发表于 2014-4-29 12:29
你是要把表格的数据通过串口输出吗,没有问题啊,是顺序输出的

:L  看着 是没问题 可是当我把表格放在程序的很后面的时候  表格就不能正常输出   也不是完全输出错误  有可能 前面的十多个或者几个 可以正常输出 后面的就不行了 会不会 和我的 MPLAB IDE软件的配置有关  第一次用 PIC的单片机 不知道有哪些规则!

使用特权

评论回复
8
huangxz| | 2014-4-29 16:15 | 只看该作者
a1048495714 发表于 2014-4-29 14:07
看着 是没问题 可是当我把表格放在程序的很后面的时候  表格就不能正常输出   也不是完全输出错误   ...

跟工程配置没有关系,就是不知道是不是你有没有采用中断之类的,
因为你是用汇编语言,也不知道是每次复位输出都不一样,还是每次编译完以后烧录后有不同的输出,
但是我觉的,你使用的这个指令是没有问题的.

使用特权

评论回复
9
a1048495714|  楼主 | 2014-4-29 16:52 | 只看该作者
huangxz 发表于 2014-4-29 16:15
跟工程配置没有关系,就是不知道是不是你有没有采用中断之类的,
因为你是用汇编语言,也不知道是每次复位输 ...

指令 我也觉的没什么问题   中断返回时 我都是恢复了W的值的啊  表格是放在不同的地方 就会输出不同的值   复位也是输出这个值  只要不移动表格的位置 输出就一样!  是不是因为  是我自行加的 PCL的值  所以当PCL值溢出的时候 不会往高位累加?所以出错?

使用特权

评论回复
10
huangxz| | 2014-4-29 18:08 | 只看该作者
a1048495714 发表于 2014-4-29 16:52
指令 我也觉的没什么问题   中断返回时 我都是恢复了W的值的啊  表格是放在不同的地方 就会输出不同的值  ...

你说的这个是很有可能的 ,pcl如果跨区了,是按照0xff为模的,看看地址信息就知道了

使用特权

评论回复
11
zhimagod| | 2014-4-29 23:31 | 只看该作者
18的片子支持直接读取程序空间的数据吧,那样还节约空间呢

使用特权

评论回复
12
a1048495714|  楼主 | 2014-4-30 08:38 | 只看该作者
zhimagod 发表于 2014-4-29 23:31
18的片子支持直接读取程序空间的数据吧,那样还节约空间呢

嗯 是可以 直接读取程序储存空间  但是那个写入的时候比较麻烦啊   难道我还是像建立表格一样  RETLW   00H  然后通过表读命令 直接读取00H吗?  那我还不如把数据存入EEPROM喃  !

使用特权

评论回复
13
a1048495714|  楼主 | 2014-4-30 08:39 | 只看该作者
huangxz 发表于 2014-4-29 18:08
你说的这个是很有可能的 ,pcl如果跨区了,是按照0xff为模的,看看地址信息就知道了 ...

我看过啊  是 会夸区   但是 我把表格放在前面还不是一样 会跨区啊 为什么放前可以  后面就不行!

使用特权

评论回复
14
huangxz| | 2014-4-30 09:38 | 只看该作者
a1048495714 发表于 2014-4-30 08:39
我看过啊  是 会夸区   但是 我把表格放在前面还不是一样 会跨区啊 为什么放前可以  后面就不行! ...

你的表格大于256字节吗,如果小于256不一定会跨区的

使用特权

评论回复
15
youss| | 2014-5-1 10:57 | 只看该作者
网上搜一下   参考pic查大表
和下面这个: P​I​C​单​片​机​查​表​指​令​安​全​性​分​析​初​探

使用特权

评论回复
评分
参与人数 2威望 +3 收起 理由
MOVWF + 1 很给力!
a1048495714 + 2 很给力!
16
jeoge| | 2020-4-13 09:33 | 只看该作者
大于255个字节的表怎么搞?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

17

帖子

0

粉丝