随笔分类 - linux / Linux i2c
摘要:在《龙芯2k0300 - 走马观碑组第21届智能汽车竞赛软硬件设计》中我们介绍到我们的开发板使用了MPU6050 陀螺仪,MPU6050是一个六轴姿态传感器,内部集成了三轴加速度计和三轴陀螺仪: 加速度计:检测X、Y、Z三个轴上的加速度(比如前进、后退、倾斜); 陀螺仪:检测绕X、Y、Z轴的旋转速度
阅读全文
摘要:在《龙芯2k0300 - 久久派开发环境搭建及内核升级(上)》我们对久久派开发板以及uboot、内核、文件系统的编译进行了介绍,本节主要介绍固件的升级,以及驱动移植。 一、更新固件 久久派开发板默认配套的是PMON固件以及linux 4.19的内核,这里我们打算将其替换换为uboot以及linux
阅读全文
摘要:有关I2C通信协议我们在《通信协议-I2C》已经进行了详细的介绍,因此这一节不再重复介绍。 一、软件/硬件I2C 想要控制STM32产生I2C方式的通讯,可以采用软件模拟或硬件I2C这两种方式。 1.1 软件模拟 所谓软件模拟,即直接使用CPU内核按照I2C协议的要求控制GPIO输出高低电平。 如控
阅读全文
摘要:在之前Mini2440裸机开发之SPI(OLED SSD1306)中我们介绍了关于OLED SSD1306相关的知识,这里我们将会学习以内核驱动的方式去控制OLED。 无论是AT24C08设备驱动还是这一节将要学习的OLED驱动,整体框架大体都是一样的。 一、OLED128x64(SSD1306)
阅读全文
摘要:一、AT24C08设备驱动 在上一节我们已经编写I2C适配器驱动,已经可以控制S3C2440 I2C控制器进行数据传输了,那么接下来我们开始编写I2C设备驱动,I2C设备驱动就是让内核知道什么时候发数据和发什么数据。 一般SOC的I2C适配器驱动都是由半导体厂商编写的,设备驱动开发者只要专注于 I2
阅读全文
摘要:在Mini2440裸机开发之I2C(AT24C08)我们介绍了S3C2440这款SOC的I2C结构,其内部只有一个I2C控制器,其中SCL连接GPE14引脚,SDA连接GPE15引脚。 这一节我们将研究S3C2440的I2C适配器驱动,或者说 I2C 总线驱动、I2C 控制器驱动。 I2C适配器驱动
阅读全文
摘要:内核版本:linux 5.2.8根文件系统:busybox 1.25.0u-boot:2016.05 在通信协议-I2C小节,我们已经对I2C协议进行了详细的介绍,并在Mini2440裸机开发之I2C(AT24C08)小节中介绍了通过I2C协议去读写AT24C08 EEPROM。在这一节将会学习I2
阅读全文
摘要:一、I2C概述 I2C(Intel Interface Circuit,简称IIC、I2C),是应用广泛的芯片间串行扩展总线。由飞利浦公司开发用于微控制器(MCU)和外围设备(从设备)进行通信的一种总线,属于一主多从(一个主设备(Master),多个从设备(Slave))的总线结构,总线上的每个设备
阅读全文
摘要:在通信协议-I2C小节,我们已经对I2C协议以及AT24C08芯片进行了详细的介绍,这里就不在重复赘述。 一、S3C2440上的I2C 1.1 I2C概述 I2C的使用位于S3C2440芯片手册的第20章。S3C2440可以支持一个多主控I2C总线串行接口。一条专用串行数据线(SDA)和一条专用串行
阅读全文

浙公网安备 33010602011771号