- 博客(22)
- 收藏
- 关注
原创 mcu开发中关于数据一致性的问题
一句简单的赋值语句,涉及全局数据的操作,有2个执指令:一个是存执半字 16bit数据一个是存储8bit,目标变量共使用了20bit,所以这里一个半字+字节操作需要2个操作才能完成。可以得出的结论是,对VehCommData.BAT_HIGH_VOLTAGE_1.signal.LBMS_LinkVltg_V的赋值不是原子的,需要2条指令才能完成。
2024-09-12 18:05:27 1094
转载 dtc 编译命令
设备树编译设备树的编译器是dtc,源代码目录kernel\scripts\dtc,只要编译过内核,就会生成dtc,dtc编译器可以把dts文件编译成为dtb,也可把dtb编译成为dts文件,编译命令格式如下:dtc [-I input-format] [-O output-format][-o output-filename] [-V output_version] input_filen...
2019-06-08 17:47:44 8576
转载 ubuntu 16.04 + linux 5.0
完整的记录了qemu搭建arm开发环境的过程:以下内容转载:作者:海枫来源:CSDN原文:https://blog.csdn.net/linyt/article/details/42504975本文记录用ubuntu16.04搭建qemu的过程:参考出处:https://blog.csdn.net/linyt/article/details/42504975...
2019-06-04 22:47:53 604
转载 linux内核主线了解dts
http://events.linuxfoundation.org/sites/events/files/slides/petazzoni-device-tree-dummies.pdf=============================================原版在上面的地址上,这个是转载别人翻译好的,dts的用法说的很详细,还有2个疑问第一,bootloader 在R2...
2019-06-04 18:28:32 842
转载 (最新内核3.4)Linux 设备树加载I2C client adapter 的流程(内核3.4 高通)
原文地址:https://blog.csdn.net/lsn946803746/article/details/52515225BLSP(BAM Low-Speed Peripheral) , 每一个BLSP含有两个QUP, 每一个QUP可以被配置为I2C, SPI, UART, UIM接口, BLSP是高通对于低速接口的一种管理方式。 i2c@f9923000 { /* BLSP-...
2019-06-03 18:57:34 826
原创 i2c client的adapter如何生成
先来看下i2c transfer函数,如下:ret = i2c_transfer(client->adapter, &msg, 1);其中重要的参数是client->adapter,今天想了解下这个adapter是在哪里生成的。上个文章说的是设备驱动的注册过程,今天来看看i2c控制器驱动的注册过程。首先在dts里配置 i2c0: i2c@11007000...
2019-06-03 18:44:41 1135
原创 linux设备树DTS到是是啥玩意
一直想搞明白,自从linux开始使用设备树后,从哪里开始加载和bootloadt kenel之间怎么关联,然后总线驱动如何将这些设备挂上去的。下周开始总结。先转载一些基本概念:简介dts硬件的相应信息都会写在.dts为后缀的文件中,每一款硬件可以单独写一份xxxx.dts,一般在Linux源码中存在大量的dts文件,对于arm架构可以在arch/arm/boot/dts找到相...
2019-05-30 15:23:05 2873
原创 i2c 设备注册过程
设备模型由总线(bus_type)+设备(device)+驱动(device_driver)组成,在该模型下,所有的设备通过总线连接起来,即使有些设备没有连接到一根物理总线上,linux为其设置了一个内部的、虚拟的platform总线,用以维持总线、驱动、设备的关系。因此,对于实现一个linux下的设备驱动,可以划分为两大步:1、设备注册;2、驱动注册。下面是i2c...
2019-05-29 18:28:06 892
转载 转:C语言指针数组和数组指针
转自网址http://c.biancheng.net/cpp/html/476.html一、指针数组和数组指针的内存布局初学者总是分不出指针数组与数组指针的区别。其实很好理解:指针数组:首先它是一个数组,数组的元素都是指针,数组占多少个字节由数组本身决定。它是“储存指针的数组”的简称。数组指针:首先它是一个指针,它指向一个数组。在32 位系统下永远是占4 个字节,至于它指向的数组...
2019-05-28 15:43:07 1333
原创 c语言关键知识点总结
第一部分操作符sizeof有个概念要说下,指针不同于普通变量,指针存的是地址,而地址的范围只和机器字以及系统有关在32位系统中,所有指针都是4B在64位系统中,所有指针都是8B,普通变量仍然为4字节下面的程序运行在64bit系统中结果: 1 #include<stdio.h> 2 3 void main(void) 4 { 5 in...
2019-05-28 14:45:03 747
原创 size nm 命令解析a.out
//main.cppint a = 0; // 全局初始化区 char *p1; //全局未初始化区 main() { int b; //栈 char s[] = "abc"; //栈 //abc是在栈里面,而下面123456/0却在在常量区内,要注意这两种情况的区别 char *p2; // 栈 char *p3 = "123456"; //123456/0在常量区,p3
2019-05-27 15:36:14 584
原创 input 设备数据流学习记录
划了流程图,但是不知道怎么一次传上来,所以就一段一段截图:在这里重新认识了次设备号的使用,关于次设备号主要在evdev.c里,针对每个input设备,在register 有会生成对应的eventX节点,这些节点分别有对应的handler以及自己的数据结构,当设备上报数据时,会通过之前注册的handler(evdev_handler),处理数据,然后通过poll read等函数实现上报到...
2019-05-24 11:58:16 180
原创 信号量semaphore的相关函数
申请信号量的函数有1.void down(struct semaphore *sem)2.int down_interruptible(struct semaphore *sem)3.int down_killable(struct semaphore *sem)4.int down_trylock(struct semaphore *sem)5.int down_timeou...
2019-04-25 12:10:08 930
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人