完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
先上代码
#include #include #include "inc/hw_memmap.h" #include "inc/hw_types.h" #include "inc/hw_gpio.h" #include "inc/hw_sysctl.h" #include "driverLib/gpio.h" #include "driverLib/sysctl.h" #include "driverLib/I2C.h" #include "inc/hw_I2C.h" #include "math.h" #include "driverLib/pin_map.h" //#define float tempture=0.; float altiture=0.; void wenhai0(void); int main(void) [ SysCtlClockSet( SYSCTL_SYSDIV_20 | SYSCTL_USE_PLL |SYSCTL_OSC_MAIN |SYSCTL_XTAL_16MHZ ); SysCtlDelay(1500); SysCtlPeripheralEnable(SYSCTL_PERIPH_I2C0); SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB); GPIOPinConfigure(GPIO_PB2_I2C0SCL); GPIOPinConfigure(GPIO_PB3_I2C0SDA); GPIOPinTypeI2C(GPIO_PORTB_BASE,GPIO_PIN_3); GPIOPinTypeI2CSCL(GPIO_PORTB_BASE, GPIO_PIN_2); I2CMasterInitExpClk(I2C0_BASE, SysCtlClockGet(), false); I2CMasterEnable(I2C0_BASE); I2CSlaveIntClear(I2C0_BASE); while(1) [ wenhai0(); ] ] void wenhai0(void) [ unsigned char tematt[4]=[0x00,0x00,0x00,0x00]; int32_t temp; int32_t press; I2CMasterSlaveAddrSet(I2C0_BASE, 0x78, true); I2CMasterControl(I2C0_BASE,I2C_MASTER_CMD_BURST_RECEIVE_START);//主机突发接收起始 while(I2CMasterBusy(I2C0_BASE)); // 等待主机传输 tematt[0]=I2CMasterDataGet(I2C0_BASE); I2CMasterControl(I2C0_BASE,I2C_MASTER_CMD_BURST_RECEIVE_CONT);//主机突发接收继续 while(I2CMasterBusy(I2C0_BASE)); tematt[1]=I2CMasterDataGet(I2C0_BASE); I2CMasterControl(I2C0_BASE,I2C_MASTER_CMD_BURST_RECEIVE_CONT);//主机突发接收继续 while(I2CMasterBusy(I2C0_BASE)); tematt[2]=I2CMasterDataGet(I2C0_BASE); I2CMasterControl(I2C0_BASE,I2C_MASTER_CMD_BURST_RECEIVE_FINISH); while(I2CMasterBusy(I2C0_BASE)); tematt[3]=I2CMasterDataGet(I2C0_BASE); press=(tematt[0]<<8)+tematt[1]; temp=(tematt[2]<<8)+tematt[3]; //tempture=(temp-11370)*0.00238; //altiture=(101300-press*5)*0.0787; ] 在重装了一次keil之后,不知道是哪里设置的问题,已进入i2c通讯的子程序就跳到FaultISR中,后来发现屏蔽子函数中最后面的两句就可以了,这是什么原因呢? 之前运行的没什么问题,最近电脑出了点小毛病重装了,keil也重装了,就出现这个问题,是设置的问题吗? |
|
相关推荐
4 个讨论
|
|
只有小组成员才能发言,加入小组>>
598 浏览 0 评论
1651 浏览 0 评论
2090 浏览 0 评论
为啥BQ7693003DBTR芯片在和BQ769X0盒子通讯时收不到信号?
1541 浏览 0 评论
DSP 28027F 开发板 XDS100v2调试探针诊断日志显示了 Error -150 (SC_ERR_FTDI_FAIL)如何解决
1383 浏览 0 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
1793浏览 29评论
2820浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
1748浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
1666浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
1680浏览 13评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-13 17:59 , Processed in 0.594459 second(s), Total 43, Slave 36 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1865