This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好、能否提供代码片段来说明28035器件中的 i2c 从器件运行?
SAI、
我们没有 F28035器件的 I2C 从器件示例。 但是、我们在 F2838x 器件中有一个从器件示例(使用 driverlib)。 您可以应用逻辑并在位字段中对其进行编码。 这一答复原 载于原文,但仍然适用。
[引述]
我们当前唯一的从站示例是针对 F2838x ( C2000Ware 2.00.00.02中的 i2c_ex3_external_loopback)、但它是使用 driverlib API 编写的、因此将其转换回 F28035使用的位字段结构头文件可能有点困难。 可能有助于查看它。
您还可以尝试搜索论坛以查看其他人是否共享了一些从属代码。
惠特尼
[/报价]
此致、
曼诺伊
示例代码使用驱动程序库、并为2838x 系列编写。 您能否为28035发布一个非常简单的从器件代码示例、该示例解释了所需的 I2C 中断、从器件模式- TX 或 Rx、并检测最后一个字节是地址还是数据。
我没有可供分享的自述代码。 我知道我指向您的示例属于2838x 系列。 但是、F2838x 和 F2803x 中提供的 I2C 模块几乎相同。 因此、寄存器配置几乎相同。 因此、您应该能够将 driverlib 代码调整为 headerfile 方法。
此致、
曼诺伊
void init_i2c_slave (void) { I2cRegs.I2COAR = 0x50; I2cRegs.I2CIER.bit.XRDY = 1; I2cRegs.I2CIER.bit.RRDY = 1; I2cRegs.I2CIER.bit.AAS = 1; I2CEST.MT.MDR.BIT.0 I2Regs.I2CMDR.bit.IRS = 1; } _interrupt void ISR_i2c (void) { uint32 in_code = 0; int_code = I2circ.bit.INT2c; if (int_code = 0b100)// receive ready 中断 {i2circ.e+ }i2cirt+i2c2rc.bit.inc;if (int_code.i2cirt+i2r=0c2r_rtc2r_transmit = i2r.i2r.i2r.i2r.i2r+ )= i2r2r_irt+i2r.i2rc.e+= i2r2r_irt+i2r.i2r_irt+i2r_irt+i2r2r.i2r.i2r.i2r.i2rc.e+= 0c;i2r.i2 I2C_TX_INDEX = 0; } //复位中断标志 PieCtrlRegs.PIEACX.ALL = PIEACK_group8; }