微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PIC 16F887 内部 EEPROM 写入问题

如何解决PIC 16F887 内部 EEPROM 写入问题

这里有 PIC 单片机程序员吗?

我正在使用 pickit2 和 16F887 芯片学习一些 PIC 微控制器编程,我目前正在尝试各种设施。我无法从位置读取正确的字节。 我正在分享我的读写代码。在网络和表格上做了很多组合/阅读了大量数据,但无法关闭此问题。 我的阅读代码

parent_row[i]

写指令:

EDREAD
        BANKSEL EEADR
        movlw   0X08            ;Read data from location 08
        movwf   EEADR
        BANKSEL EECON1
        bcf     EECON1,EEPGD
        bsf     EECON1,RD
        BANKSEL EEDATA
        movf    EEDATA,W
        BANKSEL BIN1
        movwf   BIN1
        RETURN

我将值电阻中的数据写入 EEPROM。该数据来自 ADC 输入值。尽管 ADC 的输入在 100 到 200 之间变化,但运行后代码显示的数据为 255。

解决方法

您执行的指令序列无法正确写入 EEPROM。有额外的 BANKSEL 指令会干扰 EEPROM 写解锁序列的工作方式。

我建议您阅读并理解 PIC16F887 数据表第 113 页上的示例 10-2。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。