完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我使用的是PIC16F18323、MPLAB X IDE V3.45、XC8 V1.38,在我的主要项目中,我尝试读写内部EEPROM。我用MCC生成了“内存C”。我已经确定,SFRS NVMADR,NVMAT,NVCON1和2都被困在0x00。我无法在代码或SFR内存查看器中更改它们的值。我创建了一个新项目,也使用MCC来简单地测试对内部eeprom的读/写。在同一硬件上运行的测试项目中的一切工作!我可以看到NVMADR、NVMDA、NVCON1和2随着我通过汇编代码而改变。我已经比较了两个项目的汇编代码,它们基本上是相同的。注意,配置寄存器在两个项目中都具有相同的值。我不明白为什么NVM寄存器在我的主项目中不能访问,但是在测试项目中正常工作。有人知道什么原因会导致NVM寄存器在0x00被卡住吗?
|
|
相关推荐
6个回答
|
|
如果您说配置寄存器在两个项目中都是一样的,那么可以合理地得出这样的结论:问题出在别处,但是您所发布的只是config语句?我怀疑你在某些方面有一些不同,或者你没有表现出来的相似之处…
|
|
|
|
这是在工作和非工作项目主文件中的唯一包含语句。#include“mcc_._files/mcc.h”mcc.h,来自非工作测试project的project mcc.h。在工作测试项目中,gnments没有中断。我已经禁用了非工作项目中的中断,但是这没有效果。必须有硅的某些方面防止NVM寄存器被写入。这会是什么?或者IDE在某种程度上屏蔽了对NVM寄存器的写入。
|
|
|
|
真正的芯片还是模拟器?什么版本的MCC?
|
|
|
|
实际的硬件.@描述该文件为内存提供了驱动API的实现。生成信息:产品修订:MPLAB(C)代码配置器- 4.15设备:PIC16F18323驱动程序版本:2
|
|
|
|
你好,提姆,你使用的是XC8和MPLABX的相同版本吗?这个工具的版本有什么不同吗?
|
|
|
|
谢谢大家的回复。我觉得自己像个白痴。我发现了访问EEPROM的问题。当然,在PDM0寄存器中有一点,它对EEPROM供电。我在我的实际项目代码中设置了NVMMD位,当然这个测试项目没有做。这应该是我检查的第一件事。
|
|
|
|
只有小组成员才能发言,加入小组>>
5248 浏览 9 评论
2036 浏览 8 评论
1956 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3217 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2264 浏览 5 评论
782浏览 1评论
676浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
602浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
684浏览 0评论
581浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-26 16:43 , Processed in 1.606186 second(s), Total 58, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号