搜索
bottom↓
回复: 13

16f77奇怪的端口问题

[复制链接]

出0入0汤圆

发表于 2009-4-8 23:14:39 | 显示全部楼层 |阅读模式
最近搞了个项目太奇怪了。使用芯片是16f77 portb端口初始化0x83 但是不知道什么时候就被改写成0x9f 我只有在while(1)之前有改写的动作,在往后就没有了。 按照程序来说应该是不可能的。 发生改写的时候是在上电运行2个小时之后。有时候稍微长一些。那位大侠给解释一些。

出0入0汤圆

 楼主| 发表于 2009-4-8 23:16:46 | 显示全部楼层
从现象来看应该是非正常改写的。我已经试验了快一个星期了。就是不知道哪里的问题。我用到了串口,spi,定时器0和1.

出0入0汤圆

 楼主| 发表于 2009-4-8 23:40:00 | 显示全部楼层
不好意思,芯片是16f877

出0入0汤圆

发表于 2009-4-9 08:31:10 | 显示全部楼层
看看是不是外部电路影响的

出0入0汤圆

发表于 2009-4-9 16:12:28 | 显示全部楼层
端口操作时不能使用位操作的
不知道是不是这个原因

出0入0汤圆

发表于 2009-4-9 16:45:33 | 显示全部楼层
有没有换个芯片试试?

出0入0汤圆

 楼主| 发表于 2009-4-10 18:54:22 | 显示全部楼层
我有很多地方对端口操作都是位操作!  为什么不行呢?小弟刚学,期待解答。对了外部除了和ICD2连接的两跟线外都是输出。应该不是外部的原因。对了在加一句portb的trisb初始话为0X83但是过一段时间(超过两个钟头)被改写成0x9f  。

出0入0汤圆

发表于 2009-4-11 00:01:12 | 显示全部楼层
16系列没有锁存输出,你观测到的值是受外部电路影响的,要判断某口是否是被外部电路影响了,把外部电路断开再看看值还变不

出0入0汤圆

 楼主| 发表于 2009-4-11 08:14:29 | 显示全部楼层
输出是个发光二极管。刚开始是好用的,但是不知道什么时候被改写成输入了。我地方对方向位操作啊。

出0入0汤圆

发表于 2009-4-11 20:53:56 | 显示全部楼层
那只能是程序的事了,一部分一部分裁减吧,看是哪段程序做得好事

出0入0汤圆

 楼主| 发表于 2009-4-12 08:32:51 | 显示全部楼层
我其他的地方都没有对trisb操作的地方,怎么能呢??对了portb的中断会么?但是我已经关闭了啊。

出0入0汤圆

发表于 2009-4-12 08:42:24 | 显示全部楼层

(原文件名:寄存器.jpg)

会不会是bank设错了,对PORTB操作实际修改的是TRISB。

出0入0汤圆

 楼主| 发表于 2009-4-12 18:53:19 | 显示全部楼层
谢谢caochunhua  我想应该不会的。我没有用汇编,是编译器自动分配的。
不过你这么一说我倒是感觉很像。 从现象来说,有一段时间不对portb操作就会导致trisb的错误。要是不停的对portb操作就没有问题。因为开始我不停的让他工作就没有问题。后来到了晚上他就处于待机的状态,没有对portb操作的指令了所以就出现了trisb的错误现象。倒是也可能是巧合

出0入0汤圆

 楼主| 发表于 2009-4-12 18:56:30 | 显示全部楼层
其实倒也是有解决的办法。就是在程序的某个部位不停的初始化端口。这样就没有问题了。但是这个不是能根本解决问题的办法。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-10 00:39

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表