完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
我猜你希望我们从你以前的话题中回忆起你正在处理的家庭PIC设备。PARTA.B5的功能是什么?你使用什么编译器?这不是XC8的正确语法。我可以猜到它可能是连接到任何被定义为SaveNeOffice对你的主人,但为什么我必须猜测。这是你作为程序员的任务来记录这些东西。通常,在传输之前,奴隶应该用一个值预先加载SSPBUF。在事务发生后,您不会向SSPBUF写入任何东西。如果您的目标是在断言SLAVENESECESS信号之后从奴隶中取出一个字节,那么在声明该信号后,要让主机等待一点,以便给从属时间将数据写入SSPBUF。一旦大师开始转移,就太迟了。您会不会觉得我懒得呈现无文档代码,并且希望我们知道您希望它做什么?尤其是当代码不做我所期望的你认为它…
|
|
|
|
|
|
MikroC用于pic编译器PIC18F4620PORTA.B5是SSSlaveOneSelect,是主图中的一个位的别名,用于在从图中寻址PORTA.B5引脚
|
|
|
|
|
|
更改你的从属代码Too需要在SS上等待,硬件是为你做的。
|
|
|
|
|
|
这两个函数具有相同的名称,所以从属块永远等待主写入吗?奴隶如何知道何时调用这个函数?
|
|
|
|
|
|
看起来很傻,但是它们是分开的程序,所以不是错误。
|
|
|
|
|
|
当传输完成时,从站中的SSPSTAT.BF==1变为1,并且从站必须读取缓冲区以使SSPSTAT.BF=0,并且当新字节来自主站时避免溢出。
|
|
|
|
|
|
再看一遍,“返回SSPBUF”确实读取了SSPBUF寄存器。
|
|
|
|
|
|
再看一遍,“return SSPBUF”确实读取了SSPBUF寄存器。从代码中的.(SSPSTAT.BF==1)在那个位置是错误的。
|
|
|
|
|
|
不是。我想你对SPI工作原理的理解是错误的。每个传输都是同时发送和接收的。在传输发生之前,从机必须写信给SSPBUF。传输由主机控制。
|
|
|
|
|
|
我知道。但是,当从设备在其自己的SSPBUF中写入一个字节时,它不等于1,当主设备字节存储在从设备SSPBUF中时,它等于1,因此您应该用while替换ur(SSPSTAT.BF==0)
|
|
|
|
|
|
我同意。对不起,我刚刚从您的原始代码中获取了错误的测试。它位于正确的位置,但是测试了错误的极性。正如您所说,您必须等到它从0变为1。
|
|
|
|
|
|
所有图片一般,或特别是?除非你什么都不做,否则你需要中断。并且选择引脚也是最好的一个中断。
|
|
|
|
|
|
好,再说我不应该等待SS,硬件会等待它,因为mehard不会接收到spi上发送的任何东西,没有ss是低的。同意uso的观点,我应该检查SSPSTAT。BF是0还是1,一旦是1,就意味着spi的硬件从桅杆接收到一个有效字节。无SS SPEST.BF=1为0?
|
|
|
|
|
|
是的,顺便说一下,请避免在专业论坛上“SMS谈话”。这只会让你的文章更难阅读。你"拼写"y","o","u"。我不确定我理解你的问题。SS信号高不会迫使BF的其余部分,但是如果SS高时有时钟信号,BF不会变高,只有当SS低时SCK切换8次后,BF才会变高。
|
|
|
|
|
|
在SS上的所有SS信号都从MSSP断开PIN。它不影响硬件状态机。这个CAM意味着MSSP处于未知的、无效的或错误的状态。对于代码也是一样的。
|
|
|
|
|
|
不同意。从数据表中可以看出:图17-4确认了SS过高后传输重新启动。它不清楚SS过高是否会清除BF。状态图中没有显示BF。但是当SS变高时,它们确实显示出SSPIF没有被清除。
|
|
|
|
|
|
然后是不同的工作,即PIC16F1947。它的用途仍然有限。你不能分辨一个消息是开始还是结束。我发现,将SS连接到外部INT引脚(一个早期顾问留给我的设计)可以告诉您comm广告何时开始,以及何时结束。这有助于软件接收,并允许软件更好地检测到主机已经传输了。我的情况下禁用MSSP的上升沿中断,并使其在下降沿。我确信这不是唯一的方法,但它确实很有效。我不坐在一个while循环等待一个字节进来。
|
|
|
|
|
|
OP看起来只想传输一个字节。如果没有他们关于他们试图做什么的明确描述,我们只能猜测。因此,我之前关于只呈现一些被严重注释的代码,而不描述所希望的功能,是浪费每个人的时间……
|
|
|
|
|
|
那么你就是。
|
|
|
|
|
只有小组成员才能发言,加入小组>>
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
454 浏览 0 评论
5793 浏览 9 评论
2334 浏览 8 评论
2224 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3529 浏览 3 评论
1121浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
1095浏览 1评论
我是Microchip 的代理商,有PIC16F1829T-I/SS 技术问题可以咨询我,微信:A-chip-Ti
872浏览 1评论
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
466浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 17:53 , Processed in 1.042417 second(s), Total 108, Slave 91 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1503