头像-247262

宫梓萱

  • 17
  • 单片机、嵌入式、DSP、FPGA/CPLD、模拟技术
  • 消费电子、工控电子、设计

个人成就

获得 41 次赞

帮助过112人

Linux内核中对 设备 的描述

鉴于本人目前技术水平,只能把我的认知给你参考。应该是这样的:系统开机后,uboot把kernel加载进内存后,也会把dtb的地址传递给内核。内核会把dtb文件进行解析,生成许多的struct device结构体,然后又将一些符合条件的surcut device生成struct device_node结构体。当你加载内核驱动的时候,你的ko模块里的device结构体里的.compatible属性的字符串和strcut device_node里的compatible属性的字符串进行匹配。匹配成功就执行probe函数。

电子工程师应不应该掌握数据结构

可以多学习学习各种算法知识。最简单的滤波算法,然后单向链表,双向链表。二叉树,。目前用不上,后期总会用上的。到时候学还费劲

51单片机向上位机发送数据,上位机收到的最后一个字节与实际数据不符

从你发的信息来看,我认为可以排除发送寄存器状态问题,如果你觉得还是有可能是寄存器状态问题,那么你可以在每次发送前延时下100ms。我看,可能跟你的串口程序写的有关,不妨把串口程序部分都贴出来看看

MIPI和LVDS二者的优劣

手机行业用的比较多的是MIPI接口的,像工业的方面的那种大屏用的LVDS比较多。一般像手机的SOC做工业屏的话一般都需要一个MIPI转LVDS芯片进行转换。

单片机开发板A2的矩阵键盘和蜂鸣器是共用了P1.5,有什么方法能同时使用他们吗?

我觉得这个应该不会产生冲突对吧,理由如下:你的矩阵键盘是周期扫描的吧,本质也是读取电平值。那就可以化简成一个key按键和一个buzzer都连接到P1.5引脚,且同时使用这两个功能。那么这个时候我们就要分时复用这个引脚了。那么现在我们举一个最严重的例子:某个t时刻,buzzer一直要鸣响且不会停止,过t1时刻后需要进行按键扫描。那么很显然我们该怎么做了,我们会先停止P1.5的电平输出,将P1.5的引脚修改为输入模式,再来读取按键电平值。最后在将P1.5引脚修改为输出模式,进而让buzzer继续鸣响。这个扫描引脚电平的函数执行的速度是很快的,所以对蜂鸣器的影响几乎微乎其微。这个按键和buzzer的冲突事件,我们可以抽象出一个模型,叫做“竞争现象”。这种现象在软件开发中经常存在。解决的思想就是互斥。说白了就是我用的时候,你就不能用,你用的时候我就不能用。必须要遵循这种状态,不然大家都各搞各的就混乱了。所以如果对你有启发的话,请点赞和设置最佳答案。

STM32中啥时候用到临界区

临界区就是不能被打断的运行段,就跟原子一样,是一个整体的不能再分了,程序执行在临界区时会屏蔽掉任何中断,

sprintf函数输出小数点问题

把你的sprintf贴出来,我们看看。你这样说我们没有概念。给你参考:float a=1.0;char str[10]={0};sprintf(str"%f"a);能解决你的问题的话可以给个好评

原子的wifi图传是用的什么方案

他的这个wifi具体型号我手里没有,图传wifi模块一般都是sdio接口的,数据传输速度要快些。这个东西既然卖的贵,肯定有他自己独特的算法技术在里面。应该不会开源的。