单片机TM4C123学习(七):I2C模块(温度传感器)

本文详细介绍了I2C总线的基本概念、初始化过程和使用方法,包括头文件、变量定义、初始化函数、使用示例及功率电阻控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

I2C(Inter Intergrated Circuit)总线是Philips公司推出的一种用于IC器件之间连接的二线制串行扩展总线,它通过两根信号线(SDA-串行数据线;SCL-串行时钟线)在连接到总线上的器件之间传送数据,并根据地址来识别每个器件。

1.头文件和变量定义

 

#include "TMP75.h"

volatile bool g_bTMP75Done;

 

2.初始化

TMP75Init();

//函数具体内容

void TMP75Init(void)
{
       
        SysCtlPeripheralEnable(SYSCTL_PERIPH_I2C1);
            //
            // 引脚时钟使能
            //
            SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA);

            //
            // I2C 引脚设置
            //
            GPIOPinTypeI2CSCL(GPIO_PORTA_BASE, GPIO_PIN_6);    
            GPIOPinTypeI2C(GPIO_PORTA_BASE, GPIO_PIN_7);

            GPIOPinConfigure(GPIO_PA6_I2C1SCL);
            GPIOPinConfigure(GPIO_PA7_I2C1SDA);

              //
              // I2C1 外设使能
              //
              SysCtlPeripheralEnable(SYSCTL_PERIPH_I2C1);

              //
              // 配置 I2C1 
              //
              I2CMasterInitExpClk(I2C1_BASE, SysCtlClockGet(), true);
    
        TMP75ResolutionSet();
}

3.使用示例(main)

Temp=temp_read();
Tempvalue=(int)Temp;

4.功率电阻(PF2)

发热

 GPIOPinTypeGPIOOutput(GPIOF,Pin2);
 GPIOPinWrite(GPIO_PORTF_BASE,GPIO_PIN_2,0<<2);

不发热

GPIOPinTypeGPIOInput(GPIOF,Pin2);

 

转载于:https://www.cnblogs.com/pursuit1996/p/5070309.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值