E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
IIC驱动开发
HI3559A DMEB试玩
HI3559ADMEB试玩1、不支持himm命令2、默认ip设置3、设置登录密码4、不支持telnet登录5、不支持ftp7、命令行的现实格式修改9、
IIC
例程不通10、HI3559a从emmc启动,文件系统变为只读
雨之小
·
2023-09-10 08:27
linux
HI3559A
DMEB
STM32单片机初学4-
IIC
通信(软件模拟)
IIC
(Inter-IntegratedCircuit)又称I2C(习惯读“I方C”),是IICBus简称,中文名为集成电路总线,它是一种串行通信总线,使用多主从架构,由飞利浦公司在1980年代为了让主板
Vector_potential
·
2023-09-10 06:14
单片机
控制器
stm32
嵌入式硬件
stm32之31.
iic
iic
双线制。
C语言小试牛刀
·
2023-09-09 23:05
stm32
嵌入式硬件
单片机
FPGA实现
IIC
驱动环境光、距离传感器
AP3216C是一款环境光、距离传感器芯片,其接口为
IIC
接口,FPGA通过
IIC
接口可以配置工作模式、读取环境光、距离数据。
学习就van事了
·
2023-09-09 16:11
FPGA
fpga开发
第20章 原子操作实验(iTOP-RK3568开发板
驱动开发
指南 )
在上一章节的实验中,对并发与竞争进行了实验,两个app应用程序之间对共享资源的竞争访问引起了数据传输错误,而在Linux内核中,提供了四种处理并发与竞争的常见方法,分别是原子操作、自旋锁、信号量、互斥体,在之后的几个章节中会依次对上述四种方法进行讲解。本章首先对四种常见方法中的原子操作进行讲解。20.1原子操作“原子”是化学世界中不可再分的最小微粒,一切物质都由原子组成。在Linux内核中的原子操
北京迅为
·
2023-09-09 15:02
驱动开发
追究模拟
IIC
不需要切换SDA方向的原因
以前就有这样的疑问,用IO模拟
IIC
,主从通信的时候,主机发送时候需要驱动SDA线,必然要打开IO输出,但是从机发送主机接收时,理应【关闭输出打开输入】才对,实际上,这个打开输入代码可有可无!
最好的自己in
·
2023-09-09 15:19
单片机
stm32
嵌入式硬件
第22章 自旋锁死锁实验(iTOP-RK3568开发板
驱动开发
指南 )
在上一小节中,学习了内核中自旋锁的使用,而自旋锁若是使用不当就会产生死锁,在本章将会对自旋锁的特殊情况-死锁进行讲解。22.1自旋锁死锁死锁是指两个或多个事物在同一资源上相互占用,并请求锁定对方的资源,从而导致恶性循环的现象。当多个进程因竞争资源而造成的一种僵局(互相等待),若无外力作用,这些进程都将无法向前推进,这种情况就是死锁。自旋锁死锁发生存在两种情况:(1)第一种情况是拥有自旋锁的进程A在
北京迅为
·
2023-09-09 14:02
驱动开发
第24章 互斥锁实验(iTOP-RK3568开发板
驱动开发
指南 )
在上一章节中对信号量进行了学习,而本章节要学习的互斥锁可以说是“量值”为1的信号量,最终实现的效果相同,既然有了信号量,那为什么还要有互斥锁呢,带着疑问,让我们来进行本章节的学习吧!24.1互斥锁在上一章节中,将信号量量值设置为1,最终实现的就是互斥效果,与本章节要学习的互斥锁功能相同,虽然两者功能相同但是具体的实现方式是不同的,但是使用互斥锁效率更高、更简洁,所以如果使用到的信号量“量值”为1,
北京迅为
·
2023-09-09 14:02
驱动开发
第21章 自旋锁实验(iTOP-RK3568开发板
驱动开发
指南 )
在上一节中对原子操作进行了讲解,并使用原子整形操作对并发与竞争实验进行了改进,但是原子操作只能对整形变量或者位进行保护,而对于结构体或者其他类型的共享资源,原子操作就力不从心了,这时候就轮到自旋锁的出场了,下面就让我们一起来进行自旋锁的学习吧。21.1自旋锁自旋锁是为了保护共享资源提出的一种锁机制。自旋锁(spinlock)是一种非阻塞锁,也就是说,如果某线程需要获取锁,但该锁已经被其他线程占用时
北京迅为
·
2023-09-09 14:32
驱动开发
第23章 信号量实验(iTOP-RK3568开发板
驱动开发
指南 )
在上面两个章节对自旋锁和自旋锁死锁进行了学习,自旋锁会让请求的任务原地“自旋”,在等待的过程中会循环检测自旋锁的状态,进而占用系统资源,而本章节要讲解的信号量也是解决竞争的一种常用方法,与自旋锁不同的是,信号量会使等待的线程进入休眠状态,适用于那些占用资源比较久的场合。下面对信号量相关知识的进行讲解。23.1信号量信号量是操作系统中最典型的用于同步和互斥的手段,本质上是一个全局变量,信号量的值表示
北京迅为
·
2023-09-09 14:31
驱动开发
ADS1115 模拟
IIC
ADS1115是16位ADC,基准源内部可选,PGA可提供从±256mV到±6.144V的输入范围。地址可由ADDR引脚决定,一般接地,地址为0x90写寄存器地址为0x90,读寄存器地址为0x91ADS1115有4个控制寄存器,0x00,0x01,0x020x000x01:配置通道、增益、基准源等0x02读数据流程:(1)发送地址0x90(2)发送0x01寄存器地址(配置通道等)(3)发送0x01
@一二三四五
·
2023-09-09 13:15
单片机
嵌入式硬件
Linux I2C设备驱动基本规范
不同于单片机
驱动开发
,即使是简单的I2C设备驱动程序,如果要在Linux上实现同种功能的驱动程序,事情也会变的复杂起来。
奔跑的码仔
·
2023-09-09 09:37
ARM-linux
Linux
kernel
设备树编程实践
linux
I2C
设备驱动
【深入理解Linux内核锁】七、互斥体
我的圈子:高级工程师聚集地我是董哥,高级嵌入式软件开发工程师,从事嵌入式Linux
驱动开发
和系统开发,曾就职于世界500强企业!创作理念:专注分享高质量嵌入式文章,让大家读有所得!
卍一十二画卍
·
2023-09-08 16:19
深入理解Linux驱动程序开发
#
Linux内核锁
linux
Linux驱动开发
Linux内核锁
嵌入式硬件
ubuntu
linux设备
驱动开发
学习--内存和IO访问
一I/O端口1.读写字节端口(8位宽)unsignedinb(unsignedport);voidoutb(unsignedcharbyte,unsignedport);2.读写字端口(16位宽)unsignedinw(unsignedport);voidoutw(unsignedshortword,unsignedport);3.读写长字端口(32位宽)unsignedinl(unsignedp
Rocky_zhm
·
2023-09-08 14:15
驱动开发
驱动开发
嵌入式Linux
驱动开发
(LCD屏幕专题)(三)
1.硬件相关的操作LCD驱动程序的核心就是:分配fb_info设置fb_info注册fb_info硬件相关的设置硬件相关的设置又可以分为3部分:引脚设置时钟设置LCD控制器设置2.在设备树里指定LCD参数framebuffer-mylcd{compatible="100ask,lcd_drv";pinctrl-names="default";pinctrl-0=;backlight-gpios=;
嵌入式学习者。
·
2023-09-08 10:20
Linux
驱动以及裸机
linux
驱动开发
运维
嵌入式Linux
驱动开发
(LCD屏幕专题)(四)
单Buffer的缺点与改进方法1.单Buffer的缺点如果APP速度很慢,可以看到它在LCD上缓慢绘制图案即使APP速度很高,LCD控制器不断从Framebuffer中读取数据来显示,而APP不断把数据写入Framebuffer假设APP想把LCD显示为整屏幕的蓝色、红色很大几率出现这种情况:LCD控制器读取Framebuffer数据,读到一半时,在LCD上显示了半屏幕的蓝色这是APP非常高效地把
嵌入式学习者。
·
2023-09-08 10:20
Linux
驱动以及裸机
linux
驱动开发
运维
第3章 helloworld 驱动实验(iTOP-RK3568开发板
驱动开发
指南 )
在学习C语言或者其他语言的时候,我们通常是打印一句“helloworld”来开启编程世界的大门。学习驱动程序编程亦可以如此,使用helloworld作为我们的第一个驱动程序。接下来开始编写第一个驱动程序—helloworld。3.1驱动编写本小节来编写一个最简单的驱动——helloworld驱动。helloworld.c如下(图3-1)所示代码:#include#includestaticint_
北京迅为
·
2023-09-08 10:20
驱动开发
【IMX6ULL
驱动开发
学习】24.关于mmap为什么能直接操作LCD显示
记录今天面试中遇到的一个提问,当时没有答上来感谢面试官(弓总)的提问,让我认识到了目前的不足,下午又深入的学习了一下,在这里做一下补充mmap为什么能直接操作LCD显示首先在内核空间申请一段或多段内存作为显存,即Framebuffer然后使用mmap把这段内存的物理地址映射到应用程序的地址空间相当于应用中也有一块内存,这两块内存的虚拟地址不一样(一个虚拟地址是内核空间的,一个是用户空间的),但是对
晨少爱学习
·
2023-09-08 10:20
IMX6ULL
驱动开发
mmap
Linux
驱动开发
主设备号和次设备号主设备号区分不同种类的设备次设备号区分同一类型不同的设备Linux的驱动链表会管理这些设备驱动1.添加(编写完驱动程序加载到内核)2.查找(调用驱动程序,用户层去调用open)驱动插入链表的顺序由设备号检索2.
驱动开发
驱动的开发就是添加驱动和调用驱动添加驱动
C有点难。
·
2023-09-08 07:15
Linux
驱动开发
linux
根据逻辑分析仪实际波形,解析
IIC
通信及可能出现的问题(从机控制时钟SCL)
2、
IIC
通信2.1、通信角色(主机、从机)
IIC
的全称是InterIC,意为IC器件之间的通信协议,占主导地位、负责控制何时开始/结束通信、通信什么特定内容的器
PWRJOY
·
2023-09-08 06:26
通信协议
IIC总线
通信协议
驱动开发
--day2
实现三盏灯的控制,编写应用程序测试head.h#ifndef__HEAD_H__#define__HEAD_H__#defineLED1_MODER0X50006000#defineLED1_ODR0X50006014#defineLED1_RCC0X50000A28#defineLED2_MODER0X50007000#defineLED2_ODR0X50007014#endifmychrdev
林黛玉倒拔垂杨柳~
·
2023-09-08 01:02
驱动开发
c语言
stm32
全志A133成长录
文章目录前言前言1.本专栏主要是记录使用全志A133开发过程的经验和bug2.主要是针对
驱动开发
,不定期更新3.后期会把目录更新到本文中。
不知道起个啥名“”
·
2023-09-08 00:28
A133
A133
驱动开发
linux
驱动开发
--day1(驱动、内核模块及相关命令、内核模块传参)
#include#includeinta=10;module_param(a,int,0664);MODULE_PARM_DESC(a,"thisisavalue");charb=97;module_param(b,byte,0664);MODULE_PARM_DESC(b,"thisisachar");char*c="hi";module_param(c,charp,0664);MODULE_P
林黛玉倒拔垂杨柳~
·
2023-09-07 11:56
linux
驱动开发
c语言
嵌入式Linux
驱动开发
(LCD屏幕专题)(二)
一、结合APP分析LCD驱动程序1、openapp:open("/dev/fb0",...)主设备号:29,次设备号:0--------------------------------------------------------------kernel:fb_open//fbmem.cstructfb_info*info;info=get_fb_info(fbidx);if(info->fbo
嵌入式学习者。
·
2023-09-07 11:23
Linux
驱动以及裸机
linux
驱动开发
运维
第4章 内核模块实验(iTOP-RK3568开发板
驱动开发
指南 )
在上一章节我们编写了最简单的helloworld驱动程序。有了驱动程序以后,要如何编译并使用驱动呢。编译驱动有俩种方法,分别是将驱动编译成内核和将驱动编译成内核模块。我们先来学习如何将驱动编译成内核模块、4.1设置交叉编译器1下载网盘资料下的交叉编译器,网盘路径为:“XXX”,将下载的交叉编译器拷贝到Ubuntu的/usr/local目录下,如下图(图4-1)所示:图4-12输入以下命令,解压交叉
北京迅为
·
2023-09-07 11:50
驱动开发
第5章 驱动模块传参实验(iTOP-RK3568开发板
驱动开发
指南 )
经过前两章实验的实战操作,我们已经完成最简单的helloworld驱动实验和模块驱动实验,加载模块可以使用“insmod”函数,使用“insmod”函数进行模块加载时也能进行参数的传递。运用得当可以极大提升内核测试速度。本节就来学习一下如何进行驱动模块的传参。5.1驱动模块传参简介驱动模块传参是一种可以随时向内核模块传递、修改参数的方法。例如可以传递串口驱动的波特率、数据位数、校验位、停止位等参数
北京迅为
·
2023-09-07 11:50
驱动开发
第6章 内核模块符号导出实验(iTOP-RK3568开发板
驱动开发
指南 )
在上一小节中,给大家讲解了驱动模块传参实验,使用insmod命令加载驱动时可以进行参数的传递,但是每一个内核模块之间是相互独立的,那模块间的符号传递要怎样进行呢,让我们带着疑问来进行本章节的学习吧!6.1内核模块符号导出简介驱动程序编译生成的ko文件是相互独立的,即模块之间变量或者函数在正常情况下无法进行互相访问。而一些复杂的驱动模块需要分层进行设计,这时候就需要用到内核模块符号导出。内核符号导出
北京迅为
·
2023-09-07 11:50
驱动开发
嵌入式Linux
驱动开发
(LCD屏幕专题)(一)
一、LCD简介总的分辨率是yres*xres。1.1、像素颜色的表示以下三种方式表示颜色1.2、如何将颜色数据发送给屏幕每个屏幕都有一个内存(framebuffer)如下图,内存中每块数据对用屏幕上的一个像素点,设置好LCD后,只需把颜色数据写入framebuffer即可。二、Framebuffer驱动框架Framebuffer驱动属于字符设备驱动,我们先说字符设备驱动框架如下图:驱动主设备号构造
嵌入式学习者。
·
2023-09-07 11:47
Linux
驱动以及裸机
linux
驱动开发
第1章 前言(iTOP-RK3568开发板
驱动开发
指南 )
磨刀不误砍柴工!在学习驱动之前先和同学们交流下学习方法和学习态度。1.1学习方法在学习驱动的过程中,同学们难免会遇到很多问题,例如编译环境的问题造成内核编译不通过、交叉编译器或者架构类型没有设置导致驱动编译失败、内核版本和驱动版本不统一造成驱动加载不成功等多种问题。在遇到问题的时候,同学们一定不要灰心,要敢于去尝试用自己的思路去解决问题。机遇与挑战往往是并存的。当同学们解决一个问题以后,自然就会前
北京迅为
·
2023-09-07 10:47
驱动开发
STM32 软件
IIC
控制OLED 显示屏
1.硬件
IIC
实在是太难用了,各种卡死,各种发不出来数据,没那么多时间折腾了,还是用软件
IIC
先吧,初始化voidOLED_Software_
IIC
_Init(void){GPIO_InitTypeDefGPIO_InitStruct
张小兔爱钱钱
·
2023-09-07 10:09
stm32
单片机
嵌入式硬件
OLED
STM32和OLED的贪吃蛇游戏设计
屏幕调通,这此顺便就发挥一下,OLED屏幕驱动看这https://blog.csdn.net/qq_36461474/article/details/112591234硬件用了一块F103C8T6的小板子,
IIC
一片MOS管
·
2023-09-07 09:04
单片机开发
stm32
IMAU鸿蒙北向开发-2023年9月4日学习日志
南向:指的软硬件结合的嵌入式开发,一般用c、c++进行开发,注重硬件操作、
驱动开发
、操作系统裁剪定制等。1.2HarmonyOS介绍HarmonyOS是一款面向
okfang616
·
2023-09-07 09:25
harmonyos
学习
华为
Arduino 超声波避障循迹小车,四轮智能小车
如何生成可参考右边的帮助文档Arduino超声波避障循迹小车,智能小车文章目录前言一、仿真原理图二、使用步骤1.引入库2.程序总结前言所用到的元器件有:arduinouno1块,L298直流电机驱动板2块,lcd1602带
iic
1
代坐电子工作室
·
2023-09-07 05:20
循迹小车
避障小车
四轮智能小车
单片机
DIY CY7C68013A模块为逻辑分析仪
FileViewPro:用于查看和编辑.
iic
文件。CyConsole:用于烧写EEPROM,安装CySuiteUSB_3_4_7_B2
iqiaoqiao
·
2023-09-07 01:33
EZ-USB
单片机
“深入理解SpringMVC的注解
驱动开发
“
本文将深入探讨SpringMVC的注解
驱动开发
,重点关注常用注解、参数传递、返回值和页面跳转等方面。1.Sprin
叶秋∵
·
2023-09-07 00:27
mybatis
spring
tomcat
java
maven
idea
log4j
已启用spectre缓存,但找不到spectre缓解库
出现这个错误提示是因为VisualStudio安装了
驱动开发
环境就会自动开启这个选项,如图:把这个选项关了就行,但这样就需要每个项目都改一改这个比较麻烦,也可以补全缺失的库,打开VisualStudio
l198738655
·
2023-09-07 00:23
C/C++
c++
SPI协议
文章目录前言一、简介1、通信模式2、总线定义3、SPI通信结构4、SPI通讯时序5、SPI数据交互过程二、多从机模式1、多NSS2、菊花链3、SPI通信优缺点4、UART、
IIC
、SPI区别三、总结四、
混子王江江
·
2023-09-06 20:52
FPGA
fpga开发
STM32 硬件
IIC
控制OLED I2C卡死问题
#更新通知:2023-09-06STM32L151固件库使用I2C太难了,又宕机了,建议不要在固件库版本上尝试硬件
IIC
了,一般人真用不了,直接使用软件模拟的,或者不要使用固件库了,用HAL库吧,据说HAL
张小兔爱钱钱
·
2023-09-06 19:32
stm32
单片机
嵌入式硬件
OLED
SPI通信协议详解
想了解I2C通信的可以看我之前写的这篇帖子:
IIC
(I2C)通信协议详解1电气连接SPI通信的接线比I2C稍微复杂些,所以很需要一张图来说明
头发够用的程序员
·
2023-09-06 17:19
单片机
嵌入式硬件
Pixhawk原生固件PX4之MPU6000驱动分析
涉及到一些关于Linux设备
驱动开发
的知识。在继续往下读之前有必要先感受一下PX4中驱动的注册过程,以及关键的设备驱动ID分配。字符型设备在NuttX操作系统中,M
FantasyJXF
·
2023-09-06 09:23
Pix学习笔记
Pixhawk
PX4
MPU6000
传感器
驱动
stm32
,UART,SPI,
IIC
的详解对比项UARTSPIIIC信号线数目UART一般由TXD、RXD、GND三根线组成,是一种异步传输协议SPI是四根线,分别是CS(片选)、MOSI(主发从收)、MISO(
WHAT IF I SAID
·
2023-09-06 09:52
stm32
单片机
嵌入式硬件
IIC
简单介绍
IIC
介绍:
IIC
历史:
IIC
(Inter-IntegratedCircuit),是一种同步、多主、多从、分组交换、单端、串行计算机总线,由飞利浦半导体(现在的NXP半导体)在1982年发明。
Argon_Ghost
·
2023-09-06 09:21
嵌入式
C语言
单片机
嵌入式硬件
面经——嵌入式常见面试题总结100题(下)
52,试总结单片机底层开发与LINUX
驱动开发
有哪些异同?53.请从网卡、USBHOST、LCD驱动器、NANDFLASH、WIFI
行稳方能走远
·
2023-09-06 03:49
嵌入式知识
linux
嵌入式
面试
iBizSys Cloud MDD的探索和实践
前言模型
驱动开发
ModelDrivenDevelopment(MDD)是一种以模型作为主要内容的高级别抽象的开发方法,模型在工具的支持下,被作为核心资产被转换成代码、文档或者可运行配置。
MoneyQ
·
2023-09-05 16:39
【FPGA】ILA抓取inout类型失败问题
本来
IIC
读写模块以及通过编译。但是在测试的时候,要写代码。碰到了问题,想在top.v里面用下面的ILA来抓取i2c_sdat的信号。
菜虚鲲001
·
2023-09-05 15:59
fpga开发
基于QEMU的IMX6ULL虚拟开发环境搭建
姓名:顿皓学号:19020100178学院:丁香2号书院转自:https://blog.csdn.net/ReCclay/article/details/104971182【嵌牛导读】Linux下的
驱动开发
是一个合格的全栈工程师必备技能
lemonlem
·
2023-09-05 12:03
第七章:敏捷开发工具方法-part1-敏捷开发基础
角色与职责2.1ScrumTeam2.2角色职责总结2.3、研发阶段概览1、Sprint计划会议2、产品实施阶段3、Sprint评审会议4、Sprint回顾会议三、敏捷开发实践3.1、增量迭代3.2、测试
驱动开发
Sophie_U
·
2023-09-05 10:44
敏捷开发
scrum
Linux学习笔记(更新中~)
Linux1Introduce适用人群:运维工程师(系统运维、应用运维、DBA)开发工程师(内核/
驱动开发
、软件开发、嵌入式开发)架构师(进阶,性能调优、故障处理、…)应用场景:Web应用数据库大数据云计算物联网图标
CodeWithMe
·
2023-09-04 21:48
linux
linux
学习
笔记
Linux设备树简介
一、起源减少垃圾代码减轻
驱动开发
工作量驱动代码和设备信息分离参考OpenFireware设计用来记录硬件平台中各种硬件设备的属性信息二、基本组成两种源文件:xxxxx.dtsdts是devicetreesource
西班牙大马猴
·
2023-09-04 16:49
linux
Linux驱动——input子系统
等等)的
驱动开发
统一输入类外设产生的数据格式(structinput_event),更加方便应用层编程设计了输入子系统事件处理层:接收来自核心层上报的事件,并选择对应的handler(事件处理器structinput_handler
西班牙大马猴
·
2023-09-04 16:19
linux
运维
上一页
28
29
30
31
32
33
34
35
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他