![](https://img-blog.csdnimg.cn/20190927151117521.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
笔记
收集各种问题的解决办法。
chvngzhvng
ee还是cs?这是个问题。
展开
-
【LVGL】不同类型输入设备驱动接口的实现
文件,用以实现触摸屏、鼠标、键盘、编码器、按钮五种输入设备的接口程序。使用相应的设备,就需要去掉接口部分的注释,填充相应的初始化函数和读取函数。需要注意的是,键盘和编码器需要绑定到对应的group,才能对group里的控件进行响应。编码器由于既有旋钮又有按钮,故相比键盘输入设备多了。,只要能得到不同的键值就行。键盘输入设备的初始化。函数中通过iic完成对触摸芯片的初始化,在。比如,这里注册了三个输入设备,分别对应。函数中注册多个输入设备结构体即可。LVGL支持多设备输入,只需要在。对于触摸屏来说,需要在。原创 2024-01-07 22:50:30 · 921 阅读 · 3 评论 -
【PCB设计】嘉立创EDA器件3D模型导入AD的方法
3D Model Type属性栏中,在Generic - Embed Model处为3D体设置嵌入模型,点击Choose选择模型路径。在嘉立创EDA中找到对应的元器件,并生成PCB,选择导出3D文件。进入AD的PCB library界面,放置3D元件体。3d体会出现在较远的地方,把它拖动到元件处即可。选中模型PCBmodel,导出为step文件。3D元件体区域的大小会在加载模型后自适应。AP214标准的step格式。删除Board,只留下元件。用FreeCAD打开模型。导出元件step模型。原创 2023-12-07 19:22:55 · 5616 阅读 · 0 评论 -
【嵌入式linux】spi驱动加载后probe函数未执行的问题
进入linux源码根目录,通过make menuconfig配置内核源码,果不其然,在Device drivers->SPI support下找到了未被剔除的RC522 Module Driver support选项。为了快速上手嵌入式linux平台spi接口,我打算先编写一个简单的spi driver直接与官方提供的设备树中的rc522属性相匹配。然后用脚本./create.sh编译内核以及设备树,通过tftp启动更新后的linux内核,insmod装载spi驱动。做一些初步的spi读写操作。原创 2023-06-15 22:27:06 · 1088 阅读 · 0 评论 -
【STM32】stm32f030软件触发多通道ADC扫描采样
测试过程中发现采集到的数据总是不正确,于是将ADC的Discontinuous Conversion Mode选项配置为Enabled,问题解决。原创 2023-05-26 15:58:33 · 1409 阅读 · 0 评论 -
【STM32】STM32G431 BOOT0与I2C引脚冲突的解决办法
由于STM32G431的PB8既是BOOT0引脚又是I2C的SCL引脚,要使STM32从内部flash启动,则BOOT0需要下拉至地,但I2C设备又存在上拉电阻,二者冲突。设置成功后,通过debug窗口查看FLASH->OPTR寄存器,可以看到设置成功,之后STM32启动则会不会通过BOOT0引脚电平来决定启动方式,避免了与i2c接口冲突。我们可以通过官方软件STM32 ST-LINK Utility来擦除nSWBOOT0位,连接上目标板,然后设置Option Byte,如下图所示。原创 2023-03-23 19:56:04 · 2457 阅读 · 2 评论 -
【STM32】ADC+DMA方式采样调试笔记
STM32 ADC+DMA方式采样调试笔记原创 2023-03-17 11:41:50 · 907 阅读 · 0 评论 -
【嵌入式linux】imx6ul中断学习笔记
对于开发者来说,实现中断需要知道所用外设对应的中断号,编写自己的中断执行函数,然后根据中断号将执行函数注册到数组中。当中断发生后能够根据中断号去调用数组中相应的执行函数。原创 2022-11-23 11:09:54 · 447 阅读 · 1 评论 -
卡尔曼滤波学习笔记
这样我们就得到了卡尔曼滤波的迭代表达式(1)(3)(4),在初始化时,给定初值x(0)和D(0),通过传感器不断采集数据z(n),按最小方差进行估计,便可使得数据值向逐渐向真实值靠拢。假设已有估计值x(n-1),其对真实值的方差为D(n-1),此时传感器实测数据值为z(n),对真实值方差为R,且估计值和实测值都不够准确。这里K取什么值才能使x(n)对真实值的方差D(n)最小呢?由于x(n-1)与z(n)相互独立,可以计算方差。不难看出这是个关于K的一元二次的函数,故当。时,估计值x(n)有最小方差,为。原创 2022-09-14 11:10:23 · 177 阅读 · 0 评论 -
QT设计UI时,把label嵌入左上方边框横线的方法
先调出一个label控件,拉伸到合适大小,设置QFrame中的frameShape格式为Box,设置frameShadow为Sunken,然后删除label文字,这样就得到了一个空方框。然后,再调出另一个label控件,勾选其autoFillBackground选项,并将此标签拖动到前一控件的左上角,即完成嵌入的效果。原创 2022-09-08 14:32:52 · 1725 阅读 · 0 评论 -
【SimpleFOC】例程find_sensor_offset_and_direction阅读笔记
SimpleFOC的find_sensor_offset_and_direction例程,包含了电机初始化时角度的校准操作原创 2022-06-12 01:11:09 · 1068 阅读 · 0 评论 -
对PWM、SPWM和SVPWM的理解
PWM:脉冲宽度调制,若x是变量值,则PWM[x]是当前的脉冲宽度。如:x=3对应PWM[x]=30%;x=5对应脉宽值PWM[x]=50%。SPWM:正弦脉冲宽度调制,脉冲宽度PWM[n]对应正弦曲线上的周期性采样值Xn。如:Xi(i=0~n)是正弦曲线随时间的离散采样点,则X0对应脉宽值PWM[0],X1对应脉宽值PWM[1]……SVPWM:空间矢量脉冲宽度调制N个矢量(x1、x2、……、xn)叠加形成一个合矢量来对系统施加影响,在一个周期T内,每个矢量的有效作用时间分别为t1、t2、……、t原创 2021-12-30 19:05:33 · 2103 阅读 · 0 评论 -
ADS2020 Crack使用教程
解压后,Crack文件夹下有如下内容,Readme中有具体使用步骤。安装好ADS2020后,将Crack文件夹下的ADS2020和EEsof_License_Tools中的内容复制添加到对应的ADS2020安装目录下,将license.lic也复制过去。在我的电脑-属性-高级设置-环境变量中添加新的环境变量ADS_LICENSE_FILE,值为刚才的license.lic的路径。最后运行netapi32,然后重启电脑即可。...原创 2021-11-17 14:03:29 · 4393 阅读 · 0 评论 -
Virtuoso版图工具栏上没有PDK按钮,Calibre验证DRC时没有Customization选项
解决办法:在home目录的.cdsinit文件中加载工艺库中的.cdsinit文件路径,比如我这里添加了GF工艺库中的.cdsinit文件load(strcat(getShellEnvVar("GF_PDK_HOME") "/DesignEnv/VirtuosoOA/setup/.cdsinit"))注意:GF库这样操作之后会导致virtuoso版图中的一些快捷键发生变化,可以注释掉GF库中的.cdsinit文件中的第496行来解决这个问题。...原创 2021-11-16 15:21:47 · 2666 阅读 · 2 评论 -
射频工程师
慧智微S参数意义,阻抗匹配,smith圆图,LC网络,Q值,匹配设计,噪声系数,级联系统噪声,噪声源分析,调制方式,通信系统PA性能,LNA作用、典型输入匹配,电感模型分析、感值Q值变化情况,介绍无源器件。...原创 2021-10-07 21:36:56 · 476 阅读 · 2 评论 -
模拟ic
思瑞浦电流镜版图布局,电流镜失配分析,米勒电容,等效输入电容,电阻热噪声,等效热噪声,计算输入电阻,电流镜绘图原创 2021-09-27 22:27:23 · 451 阅读 · 0 评论 -
AE
意瑞数字逻辑,JK触发器,计数器,状态转移,波形,系统函数,深度负反馈,三极管,小信号分析,输入输入输出阻抗原创 2021-09-27 11:08:58 · 97 阅读 · 0 评论 -
FAE
MPS系统函数,截止频率,品质因数,运放、比较器,反馈,RC电路响应,桥式整流,功率计算,三相电机控制原创 2021-09-27 11:04:34 · 132 阅读 · 0 评论 -
射频ic
艾为电子噪声系数定义 计算,A B AB类功放区别,功率计算,入射功率,一些基本概念,锁相环系统函数。原创 2021-09-27 10:38:24 · 350 阅读 · 0 评论 -
嵌入式常用的通信外设接口I2C、SPI、UART
I2C半双工通信时钟线SCL,数据线SDA起始位:SCL为高,SDA下降沿停止位:SCL为高,SDA上升沿数据传输:SCL为高,传输SDA数据,SCL为低时,可以改变SDA数据应答信号:主机发送完8位数据后,下一个时钟从机发送应答信号I2C写时序:(高位MSB先发送)1.开始信号2.主机发送7位从设备地址3.主机发送读写标志,1读,0写4.从机应答5.主机发送数据6.从机应答7.停止信号I2C读时序:1.开始信号2.主机发送7位从设备地址3.主机发送读写标志,1读,0原创 2021-05-15 11:09:38 · 1201 阅读 · 0 评论 -
向linux编译好的内核模块传递参数
在得到. ko内核模块后,用insmod向linux系统插入内核模块的时候,向该内核模块动态传递参数,需要事先在驱动程序中加入module_param(name,type,perm)函数以确定一个待输入的参数。然后可以使用insmod xxx. ko 变量名=取值的形式来向内核模块传参同样,传递数组需要用module_param_array(…)函数。...原创 2021-05-13 21:45:32 · 272 阅读 · 0 评论 -
对嵌入式linux驱动开发的理解
做嵌入式linux驱动开发,首先要搞明白大致框架。linux的驱动通常分为字符设备驱动、块设备驱动和网络设备驱动三大块。字符设备是最普遍的应用,用于简单控制、读写、传输数据等等,块设备主要与硬盘、EMMC等存储设备有关,网络设备驱动则是与以太网、wifi相关的驱动。块设备驱动和网络设备驱动一般由原厂提供,可以直接使用,我们开发人员只需要根据具体应用需求编写相应的字符设备驱动即可。linux一切皆文件,我们开发字符设备驱动就是要实现对该设备的read write open release等函数。一般以设备原创 2021-05-13 19:06:37 · 403 阅读 · 0 评论 -
matlab简单GUI程序设计
在matlab主界面命令行输入guide,新建一个GUI程序将相应的控件拖到设计界面。文本框和编辑框f_str = get(handles.edit1, 'String');%获取编辑框字符串w = str2num(f_str)*2*pi*f_m;%字符串转数字set(handles.edit2, 'String', L_str);%编辑框显示弹出式菜单menu1_val = get(handles.popupmenu1, 'value');%根据选取内容返回值1~nswit原创 2021-04-19 10:19:55 · 460 阅读 · 0 评论 -
虚拟机未能挂起的解决办法
编辑文件sudo vim /etc/selinux/config将enforce改为permissive原创 2021-03-29 23:07:02 · 1065 阅读 · 2 评论 -
ic618和calibre2019安装过程中遇到的一些问题
安装过程参考自eetop论坛:http://bbs.eetop.cn/thread-868803-1-1.html1.执行virtuoso命令出现command not found解决办法:安装ksh,如redhat7.6的软件包中的ksh-20120801-139.el7.x86_642.calibre跑DRC时出现layout export failed or was cancelled解决办法:安装libXp,如redhat7.6的软件包中的libXp-1.0.2-2.1.el7.x86_64原创 2021-03-26 13:58:15 · 6748 阅读 · 2 评论 -
在cadence中安装GF45RFSOI库
目前GF的45nm库GF45RFSOI更新到了0.6的版本,在0.0~0.6中我们只需安装基础库0.0和扩展库0.6就行了。首先,把0.0~0.6的所有文件和压缩包都移动到同一个文件夹下(包括install文件和PDK压缩包),不用解压。在linux中执行基础库0.0的install安装程序,注意结尾要加一个config命令./install_xxx_0.0 config第一个问题,直接回车,表示没有配置文件,重新安装第二个问题,指定你的安装路径,回车第三个,默认安装目录,不用更改,直接回车(原创 2021-03-25 17:45:58 · 1458 阅读 · 7 评论 -
湖北科目三驾考经验总结
湖北科目三驾考经验总结一、身份验证二、开始考试三、灯光考试四、起步五、停车六、刹车七、路考项目1、变道2、 超车3、 直线行驶4、 会车5、靠边停车6、掉头7、加减档一、身份验证当安全员把车开到考试地点后,考生进入驾驶位,关好车门,安全员坐副驾驶,此时先不要系安全带,把身份证交给安全员验证,并刷指纹,拍照验证,可以在验证身份的同时调整座椅前后和倾斜度,尝试用左脚踩一踩离合,保证自己处于一个舒服的驾驶环境。考生身份确认无误后,安全员点击考试仪,等待考试软件加载完毕,然后车内语音提示“请开始考试”。二、开原创 2021-02-07 23:58:38 · 719 阅读 · 0 评论 -
Ubuntu16.04安装Calibre2015后layout版图设计界面没有calibre控件
再Ubuntu16.04下Calibre2015安装之后,补丁打了,license也添加了,shemetic原理图界面有calibre控件显示,但是layout版图界面没有calibre控件。解决办法:https://blog.csdn.net/Vae2019/article/details/109236634原创 2021-01-12 21:53:22 · 1723 阅读 · 0 评论 -
ubuntu16.04安装Calibre2015时失败
ubuntu16.04安装Calibre出现如下错误:Invoking Mentor Graphics Install to install bundle sh: 1: /opt/mentor/Calibre2015/install.ixl/mgc_install: not found应该不是环境问题,把安装命令sudo ./aoi_cal_2015.2_36.27_mib.exe多执行几次,我试了好多次终于装上了。...原创 2021-01-12 20:19:42 · 1370 阅读 · 4 评论 -
Ubuntu16.04安装IC617,使用virtuoso &命令时出现错误HOST <eda> DOES NOT APPEAR TO BE A CADENCE SUPPORTED LINUX
在Ubuntu16.04.3下用安装工具InstallScape装好IC617和MMSIM151后,在home目录启动virtuosovirtuoso &出现如下错误:WARNING: HOST <eda> DOES NOT APPEAR TO BE A CADENCE SUPPORTED LINUX CONFIGURATION. For More Info, Please Run '<cdsroot>/tools.lnx86/bin/checkS原创 2021-01-12 15:11:41 · 5724 阅读 · 4 评论 -
Z参数的物理意义
Z11:端口2开路时,端口1的输入阻抗Z12:端口1开路时,反向转移阻抗Z21:端口2开路时,正向转移阻抗Z22:端口1开路时,端口2的输出阻抗原创 2020-10-14 16:09:39 · 5509 阅读 · 0 评论 -
spectreRF仿真中pss和qpss的区别
pss仿真周期性信号qpss仿真非周期性信号原创 2020-10-06 14:06:10 · 2389 阅读 · 0 评论 -
ubuntu安装VMware-tools时,虚拟机中的选项是灰色的,点击不了
“重新安装VMware Tools”点击不了,如下图所示:出现这个问题,我们可以选择手动安装VMware-tools。首先,我们进入设置,配置CD/DVD(SATA)然后,指定iso镜像文件,在你的VMware Workstation安装目录下找到linux.iso文件,并选中它。点击确定后退出设置,在Ubuntu下多了个镜像文件夹VMware Tools把压缩包拷贝到本地目录下,比如我放在了Downloads文件夹下,解压缩,然后进入解压后的目录,打开终端执行sudo ./vmware原创 2020-09-15 17:02:39 · 11484 阅读 · 0 评论 -
linux下的C语言编码风格
一、缩进语句行首最好是8个字符的缩进switch (suffix) {case 'G':case 'g': mem <<= 30; break;case 'M':case 'm': mem <<= 20; break;case 'K':case 'k': mem <<= 10; fallthrough;default: break;}二、换行一行只有一条语句,错误示范如下:if (condition) do_原创 2020-09-03 14:16:29 · 216 阅读 · 0 评论 -
嵌入式linux开发insmod时发现.ko模块与内核版本不一致
可以尝试在linux内核源码目录下查找vermagic.h这个文件,编辑修改这个宏定义根据自己的实际情况修改上述版本信息,然后用修改后的linux源码再次编译生成内核模块.ko文件,使用modinfo xxx.ko来查看版本信息是否符合需要:...原创 2020-08-21 21:50:27 · 1668 阅读 · 0 评论 -
荔枝派使用官方的镜像启动后使用ls命令没有反应
请先使用cd /切换到根目录,再使用ls查看即可。原创 2020-08-20 21:49:43 · 178 阅读 · 0 评论 -
linux字符设备驱动入门,使用open函数打开字符设备时总是执行失败
linux字符设备驱动入门,使用open函数打开字符设备时总是执行失败出现这个问题,多半是初始化函数xxx_init没有写完成,导致字符设备初始化并不彻底,从而使open函数执行失败。原创 2020-08-20 11:22:29 · 1430 阅读 · 0 评论 -
荔枝派使用uboot启动linux内核后,卡在某处进入不了命令行
荔枝派使用uboot启动linux内核后,卡在某处进入不了命令行如果是根文件系统加载不了,那多半是你的根文件系统没有做好。也不要盲目相信官方提供的镜像文件,自己动手做一个,buildroot太复杂就先用busybox搞一个简单的来试试,看看能否跑通。...原创 2020-08-20 11:15:59 · 479 阅读 · 0 评论 -
制作荔枝派sd镜像
uboot制作参考:链接步骤如下:查询sd卡设备:fdisk -l,记下设备名,比如sdb分区:fdisk /dev/sdb输入n,回车,跟随提示设置第一分区起始扇区和结束扇区重复此操作建立第二分区输入p,回车,查看当前分区信息输入w,回车,保存并退出输入fdisk -l查看是否分区成功格式化第一分区:mkfs.vfat /dev/sdb1格式化第二分区:mkfs.ext4 /dev/sdb2等待格式化完毕将uboot写入sd卡8k偏移处:sudo dd if=u-boot-sunx原创 2020-08-16 23:05:40 · 506 阅读 · 0 评论 -
linux内核模块,驱动开发框架
linux内核模块linux内核模块为可装载模块,独立于内核本身,对内核功能进行扩展,单独封装在一个镜像文件中,在运行时工作于内核空间。通常需要包含三个头文件:#include <linux/module.h>//内核模块头文件#include <linux/init.h>//初始化、退出头文件#include <linux/kernel.h>//内核头文件...原创 2020-08-15 20:34:18 · 179 阅读 · 0 评论 -
荔枝派通过usb烧录时出现ERROR: Allwinner USB FEL device not found!
荔枝派通过usb烧录时出现ERROR: Allwinner USB FEL device not found!准备一个usb转ttl串口模块,和一根usb线,分别连接好荔枝派的usb和串口。先将串口模块插入电脑,在电脑上打开串口调试助手,并启动COM端口,波特率115200,然后再将usb线插入电脑。此时,可以看到串口调试助手中有信息显示,uboot开始启动。在uboot结束2s倒计时之前,通过串口调试助手向荔枝派发送任意按键值(注意要发送新行),中止自动启动,进入uboot命令行模式。依次用串口原创 2020-08-15 12:48:00 · 3790 阅读 · 1 评论