完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
你好,我有2个pic微芯片,在一张图片中我使用了3个变量:“variable1”,“variable2”和“variable3”。我想把它们通过i2c总线传输到我的另一张图片上。有谁能告诉我/给我一些关于这个工作的有用信息,我可以稍微研究一下。
|
|
相关推荐
6个回答
|
|
哪种变量,char,int?你正在使用哪些图片?编译程序?MCC?提供更多信息以获得相关帮助。
|
|
|
|
您还应该详细研究I2C总线规范:https://www.nxp.com/docs/en/user-./UM10204.pdfA关键概念是I2C(以及类似的SMBus)规范告诉您如何将字节或字节从一个设备移动到另一个设备。这些规范对这些字节的格式、内容或含义没有任何说明。做出这些决定取决于你作为系统工程师。
|
|
|
|
您可以尝试以下文章中提到的教程:https://www..hip.com/for./m609013.aspx此外,关于如何在Micro..com网站上实现I2C,有一些应用程序说明。例如:www1.micro..com/downloads/en/AppNotes/00000734C.pdf,尽管这个应用程序说明是为PIC1编写的。6,对于PIC18设备,步骤将是相同的。
|
|
|
|
这取决于你。你必须为两端编写代码。让你的从设备像其他做同样事情的I2C设备一样工作很常见。微芯片网站上有实现I2C从设备的应用说明。
|
|
|
|
看一下SMBus规范,特别是READ BYTE、READ WORD和READ BLOCK等协议。您需要做的是为从设备读取的每个变量开发“命令代码”或“变量名”。假设您想从从属设备读取16位值。事务进行如下:Master:START ConditionMaster:7位从属地址加上R/W#bit=0以启动写操作。ndtionMaster:7位从地址加上R/W#位设置为1,以开始读取操作。Slave:ACKSlave:发送一个具有请求的16位值Master:ACKSlave的下8位的字节;从属读操作结束)Master:STOPCondition您将定义自己的“命令代码”或“变量名”参数。您必须为主代码(发送正确的命令代码/变量名称和缓冲返回的数据)和从属文件(解释命令代码/变量名来确定主要什么,然后将该数据逐字节地移动到I2C发送缓冲器)。您还必须编写处理错误的代码(例如,主发送无效的命令代码/变量名或主机,而非意外地将数据字节NACK)。
|
|
|
|
嗨,在EmbeddedCodeSource中有用于PIC12、PIC16设备的示例代码:http://www.embeddedcodesource.com/codesnippet/pic12-i2c-master-slave-pwm-demo MSSP外设在PIC16F1xxxxxx和PIC18设备中非常相似,并且可以移植代码。迈西尔
|
|
|
|
只有小组成员才能发言,加入小组>>
5142 浏览 9 评论
1990 浏览 8 评论
1918 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3159 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2215 浏览 5 评论
711浏览 1评论
599浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
482浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
611浏览 0评论
509浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-10 18:05 , Processed in 1.282559 second(s), Total 87, Slave 72 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号