资源简介
IIC 通讯代码,通过结构传递端口信息,一个函数体,多组IO口

代码片段和文件信息
#include “bsp_iic.h“
// 在F4 168MHz 168*__nop()==1us
void I2C_Delay()
{
__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();
__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();
__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();
__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();
__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();
__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();
__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();
__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();
__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();
__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop();__nop(); __nop();__nop();__nop();__nop();__nop();__nop();__nop();
}
I2C *I2C_1 *I2C_2 *I2C_3;
void I2C_GPIO_Config() //端口初始化
{
I2C_1 = (I2C *)malloc(sizeof(I2C)); //MPU6050 HMC5883l
I2C_1->SCL_GPIOx = GPIOB;
I2C_1->SDA_GPIOx = GPIOB;
I2C_1->SCL_Pin = GPIO_Pin_8;
I2C_1->SDA_Pin = GPIO_Pin_9;
I2C_2 = (I2C *)malloc(sizeof(I2C)); //EEROM 气压计
I2C_2->SCL_GPIOx = GPIOB;
I2C_2->SDA_GPIOx = GPIOB;
I2C_2->SCL_Pin = GPIO_Pin_10;
I2C_2->SDA_Pin = GPIO_Pin_11;
I2C_3 = (I2C *)malloc(sizeof(I2C));
I2C_3->SCL_GPIOx = GPIOA;
I2C_3->SDA_GPIOx = GPIOC;
I2C_3->SCL_Pin = GPIO_Pin_8;
I2C_3->SDA_Pin = GPIO_Pin_9;
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOBENABLE);
GPIO_InitTypeDef GPIO_InitStruct;
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10|GPIO_Pin_11;
GPIO_InitStruct.GPIO_OType = GPIO_OType_OD;
GPIO_InitStruct.GPIO_Mode = GPIO_Mode_OUT;
GPIO_InitStruct.GPIO_PuPd = GPIO_PuPd_UP;
GPIO_InitStruct.GPIO_Speed = GPIO_High_Speed;
GPIO_Init(GPIOB&GPIO_InitStruct);
I2C_Stop(I2C_1);
I2C_Stop(I2C_2);
I2C_Stop(I2C_3);
}
bool I2C_Start(I2C * i2c) //启动时序程序
{
SDA_H;
SCL_H; //SCL 保持不变
I2C_Delay();
SDA_L; //SDA 被拉低
I2C_Delay();
SCL_L; //SCL 被拉低 钳住I2C总线,准备开始通讯
return true;
}
bool I2C_Stop(I2C * i2c)//停止时序
{
SCL_L;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 6724 2018-11-05 15:00 IIC多端口\bsp_iic.c
文件 1446 2018-11-05 14:56 IIC多端口\bsp_iic.h
目录 0 2018-11-05 18:25 IIC多端口
----------- --------- ---------- ----- ----
8170 3
- 上一篇:程序员必学的1500个单词
- 下一篇:csdn积分获取
相关资源
- AXURE移动端素材元件库68580
- Rational Rose Common破解文件
- umeshmotion网格推移
- Visio图标-最新最全的网络通信图标库
- 联想H61主板BIOS升级F9KT58AUS支持22NM.i
-
Actionsc
ript 1.0实现能跟随鼠标运动的 - The direction of synaptic plasticity mediated
- Reparatory Effects of Nicotine on NMDA Recepto
- Apolipoprotein E4 Impairs in vivo Hippocampal
- Histamine excites rat lateral vestibular nucle
- Lenovo Z460 SLIC2.1 LENOVO-29CN38WW(V2.15)
- 联想G400G500G490BIOS
- Fabrication and all-optical poling characteris
- ASUS BIOS 加NVME协议文件: Nvme.ffs NV
- VisualStudioUninstaller vs卸载工具
- adams vibration 练习原文件
- STM32基于rt_thread操作系统的SDHC卡文件
- Phoenix BIOS Editor.rar
- 卡西欧工程计算器模拟器Casio FX
- 用DIO 做的I2C程式
- DAS1302蜂鸣 独立按键 闹钟设定 IIC存储
- HP笔记本BIOS丢失解决方法,DMI TOOLK
- 关联分析Apriori算法实现
- Y450 BIOS白名单
- wifi局域网内双向语音实时通话
- IOCP 类 简单的IOCP(IO完成端口)服务
- SIM908 SDIO FSMC STM32 FIFO
- 画图程序MFC/VC/VC CRectTracker 串行化
- Tone-Reservation
- BIOS修改工具DMI236
评论
共有 条评论