完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
我试图在32MX上设置电阻式触摸屏SPI,并使用SPI2,SPICOM2=0x08260(启用,8位,时钟空闲高,主模式)。我有SPI2BRG=0x08(我试过0xFF),但是我看到时钟脉冲在整个写/读过程中保持高电平,我知道我的外围时钟正在运行,因为PMP工作正常。在家族SPI规范表单中,我看到有一条控制线为SPI启用主时钟(在示意图中简单地显示为“Enable Master Clock”,但未讨论),我想知道这是否以某种方式禁用,以及是否存在对它的访问?
|
|
相关推荐
19个回答
|
|
|
这将有助于显示你为写/读过程编写的代码。
|
|
|
|
|
|
以及你使用的确切芯片。你检查过它吗?
|
|
|
|
|
|
谢谢NKurzman,确切的芯片是3MX795F512L,不,我没有检查勘误表。到目前为止,这里是MPLAB8:SPI2CONC= 0x8360;//启用(15),输入采样(9),活动到空闲(8),空闲高(6),主(5)[码],LATC1=0;//启用CHIPSPI2BUF=0B111000;//命令触摸屏提供X协调(SPI2STATBITS.SPIBF);//XVAL= SPI2BUF;/ /写XValSPI2BUF=0x00;//假给必要的15个时钟分钟时间(SPI2STATbits.SPIRBF);//SPI2BUF=0b10011000;//命令触摸屏提供Y坐标(SPI2STATbits.SPIRBF);//Yval=SPI2BUF;//写到Yval_LATC1=1;//禁用芯片[代码]
|
|
|
|
|
|
感谢QHBT设备ID修订版=54300053
|
|
|
|
|
|
因为结束标记必须是[/code]所以代码标记不能工作,所以这个测试是反向的(SPI2STATbits.SPIRBF);//当传输完成时该位被设置。您应该对SSP2BUF进行伪读以确保标记是清晰的,并等待它被设置。
|
|
|
|
|
|
QHB -谢谢你-但是,经过校正,我仍然没有时钟脉冲发出。时钟引脚高,并停留在那里的整个交易。任何编码错误,我可能会使单命令写PI2(0B111000);应该肯定引起八个时钟脉冲?-时钟刚好保持高。修正和使用PLBI.HNO相关的勘误表。
|
|
|
|
|
|
三级还是PPS?
|
|
|
|
|
|
谢谢你的回复。崔斯很好。PPS…我最近刚到达32MX,开始使用一个100引脚的TQFP,它没有PPS(这让我很惊讶,来自PIC24),但现在我看到一些32MX的引脚更少的TQFP确实有PPS。不管怎样,当你提到它的时候,我很兴奋,认为我忽略了它,但是,唉,不是PPS。我现在开始认为我的筹码很糟糕,但每次我都认为过去还有别的问题(通常是我的无能)。
|
|
|
|
|
|
好的,现在我仍然不确定您的Read/Write函数——QHB给了您一些建议,您也修改了代码……正如他几天前建议的,对于SPI,由于SPI本身的性质,单个“SPIxfer()”函数将更容易理解和调试……
|
|
|
|
|
|
我的SPI2时钟管脚具有以下功能:4SCK2/U6TX/U3RTS/PMA5/CN8/RG6I具有_TRISG6=0和在8位主模式下启用的SPI2,设置为高空闲,并且即使管脚确实变高,当我尝试执行写时它也死掉了。现在我也使用PMP,并且该管脚是PMP地址线。PMP有可能阻止SPI工作吗?
|
|
|
|
|
|
啊,是的,当然!我的意思是,这是可能的-我从来没有用过这张照片。你能尝试只启用SPI吗?
|
|
|
|
|
|
禁用PMP,但仍然没有时钟。
|
|
|
|
|
|
根据该引脚上的功能顺序,SPI的使用将超过PMP使用。我注意到,一些芯片上的一些设备希望在启用之前完全设置——不知道这是否是这样的设备或外围设备。尝试配置SPI2COM寄存器,但没有设置ON位,然后自己设置ON位。如何确定没有SCK信号?你是否把一个范围探头直接放在设备的PIN(不是PCB轨道)上检查一个干式接头?此外,您可以尝试一个简单的RG6引脚切换(没有任何其他外围活动),并确保您可以检测到。(抓住这里的稻草!)苏珊
|
|
|
|
|
|
“尝试配置SPI2COM寄存器,但没有设置ON位,然后自己设置ON位。如何确定没有SCK信号?”澳大利亚人苏珊-谢谢你的回应。我将按照您的建议进行尝试,在SPI2事务之前,禁用PMP并启用SPI2。我知道SCK管脚连接是完整的,因为,根据需要,它在提示上变高——并且查看范围,它只是保持高而不会计时——一旦事务结束,就返回。除了明显地使SDI、SDO、SCK和CS连接正确(检查、重新检查和再次检查)并将正确的值放入SPI2CON(还禁用Family Spec中提到的所有中断)之外,我不明白WriteSPI2()为什么没有触发作用域上的时钟。无论何时,我都会把它贴在这里。
|
|
|
|
|
|
不幸的是没用。不过,我和SPI4在同一个芯片上有业务,并会努力做到这一点。
|
|
|
|
|
|
Hi.16个帖子之后,我们仍然不知道您使用的PIC的确切模型……周围只有1200个不同的PIC;=)
|
|
|
|
|
|
在16个帖子中,东西被埋葬和遗忘,RISC:我在第二个帖子中提到了它-它是32MX795F512L。你说得对,那里确实有很多。
|
|
|
|
|
|
可能会显示初始化代码。如SPIXBRG等的设置,也有实际的代码写为PI2和ReXSPI2。
|
|
|
|
|
|
这是我的SPI2设置:SPI2CON=0x8360;//.(15),输入样本在末尾(9),活动到空闲(8),空闲高(6),主(5),我在0xFF和0之间尝试过SPI2BRG,我相信那些plib.h函数等价于:
|
|
|
|
|
只有小组成员才能发言,加入小组>>
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
473 浏览 0 评论
5793 浏览 9 评论
2334 浏览 8 评论
2224 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3530 浏览 3 评论
1122浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
1095浏览 1评论
我是Microchip 的代理商,有PIC16F1829T-I/SS 技术问题可以咨询我,微信:A-chip-Ti
873浏览 1评论
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
475浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 23:56 , Processed in 1.786925 second(s), Total 79, Slave 72 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
729