完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
大家好!我想尝试一下LM4F232和MSP430g2553之间的I2C通信。M4不断发送数据给430,以下是我的代码:
(1)M4 做主机(代码是修改ivaWareexamplesperipheralsi2c的) #define SLAVE_ADDRESS 0x48 int main(void) [ SysCtlClockSet(SYSCTL_SYSDIV_1 | SYSCTL_USE_OSC | SYSCTL_OSC_MAIN | SYSCTL_XTAL_16MHZ); SysCtlPeripheralEnable(SYSCTL_PERIPH_I2C0); //I2C0 enablePB[3:2] SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB); GPIOPinConfigure(GPIO_PB2_I2C0SCL); GPIOPinConfigure(GPIO_PB3_I2C0SDA); GPIOPinTypeI2C(GPIO_PORTB_BASE, GPIO_PIN_2 | GPIO_PIN_3); HWREG(I2C0_MASTER_BASE + I2C_O_MCR) |= 0x01; I2CMasterInitExpClk(I2C0_MASTER_BASE, SysCtlClockGet(), false); // Initialize the I2C0 master module. I2C data transfer rate. I2CSlaveEnable(I2C0_SLAVE_BASE); // Set the slave address to SLAVE_ADDRESS. I2CSlaveInit(I2C0_SLAVE_BASE, SLAVE_ADDRESS); I2CMasterSlaveAddrSet(I2C0_MASTER_BASE, SLAVE_ADDRESS, false); while(1) [ I2CMasterDataPut(I2C0_MASTER_BASE, 0x55); I2CMasterControl(I2C0_MASTER_BASE, I2C_MASTER_CMD_SINGLE_SEND); while(!(I2CSlaveStatus(I2C0_SLAVE_BASE) & I2C_SCSR_RREQ)) [ ] (2)MSP430的代码 #include"msp430g2553.h" unsignedcharRXData; voidmain(void) [ WDTCTL = WDTPW + WDTHOLD; // Stop WDT P1DIR |= BIT0; // P1.0 output P1SEL |= BIT6 + BIT7; // Assign I2C pins to USCI_B0 P1SEL2|= BIT6 + BIT7; // Assign I2C pins to USCI_B0 UCB0CTL1 |= UCSWRST; // Enable SW reset UCB0CTL0 = UCMODE_3 + UCSYNC; // I2C Slave, synchronous mode UCB0I2COA = 0x48; // Own Address is 048h UCB0CTL1 &= ~UCSWRST; // Clear SW reset, resume operation UCB0I2CIE |= UCSTTIE; // Enable STT interrupt IE2 |= UCB0TXIE; // Enable TX interrupt // TXData = 0xff; // Used to hold TX data while (1) [ __bis_SR_register(CPUOFF + GIE); // Enter LPM0 w/ interrupts // USCI_B0 State ISR #pragma vector = USCIAB0TX_VECTOR __interruptvoidUSCIAB0RX_ISR(void) [ RXData = UCB0RXBUF; // Get RX data __bic_SR_register_on_exit(CPUOFF); // Exit LPM0 ] 现在我的情况是SCL和SDA没有波形,全部为低电平(我已将上拉电阻焊上了),我不知道哪里的问题,通信没有成功。请大家帮忙看看! |
|
相关推荐
1 个讨论
|
|
只有小组成员才能发言,加入小组>>
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
493 浏览 1 评论
513 浏览 0 评论
普中科技F28335开发板每次上电复位后数码管都会显示,如何熄灭它?
388 浏览 1 评论
944 浏览 0 评论
TMS320F28377D:新做了以377d为芯片的板子,上电后芯片复位引脚出现方波请问如何解决?
2115 浏览 0 评论
32浏览 3评论
CC3100BOOST使用CC3200lunchXL进行烧录
895浏览 2评论
138浏览 2评论
176浏览 2评论
152浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-22 07:02 , Processed in 0.667334 second(s), Total 42, Slave 36 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号