- 博客(166)
- 资源 (14)
- 收藏
- 关注

原创 Google Earth Pro 模拟飞行 分享
资源下载链接:https://download.youkuaiyun.com/download/qq_28938511/12284734
2020-03-31 14:32:27
1304
原创 什么是邻道泄露抑制比(ACLR)
另外一个原因是由于ACLR的指标太严格,如果设备是没有DPD或是纯模拟的,那么实现这个指标完全靠末级的功放了,要满足这么好的ACLR,一般得使用大功率功放,这样整机的功耗和散热又受影响了。ACLR值越低,表示相临信道的功率的干扰越小,说明系统的性能越好。4、DPD性能:除了小信号时功放的性能需要保证10dB以上的预留外,DPD算法的性能也需要保证,这都需要使用不同的制式信号去调测的。1、末级功放的线性:主要是末级和推动级的功放的性能不好,特别是级联后的线性,需要在设计前测试、仿真和计算。
2024-11-14 13:49:57
528
原创 VPN(虚拟专网)介绍
在没有VPN之前,企业的总部和分部之间的互通都是采用运营商的internet进行通信,那么Internet中往往是不安全的,通信的内容可能被窃取、修改等,从而造成安全事件。VPN技术的基本原理其实就是用的隧道技术,就类似于火车的轨道、地铁的轨道一样,从A站点到B站点都是直通的,不会堵车。VPN虚拟网络是专门给VPN用户使用的网络,对于用户而言,使用VPN和Internet,用户是不感知的,是由VPN虚拟网络提供安全保证。相对于公有网络而言,VPN网络是虚拟的,是逻辑意义上的一个专网。
2024-07-13 14:43:06
1101
原创 vs code 中使用SSH 连接远程的Ubuntu系统
打开配置如下,记住,那个root为你的用户名,这个用户名,具体根据你的用户名来设置,对应的密码就是你登录Ubuntu时的密码。如下图,找到对应的位置。在电脑上找到以下位置。
2024-05-28 09:34:11
353
原创 APM32F035有感矢量控制方案
先来一张电路板照片(还是挺好看的,黑色的电路板感觉颜值比较高)硬件框图气参数:12~72VDC 宽电压输入,最大功率 100W支持电机类型:BLDC,PMSM支持编码器类型:霍尔,光电,磁编码器通讯接口:SCI,SPI,I2C,CAN电流采样方式:单 / 双电阻采样,三相反电动势采样硬件整体来说中规中矩,使用Gate driver + MOSFET来驱动电机。配合一些霍尔传感器检测电路和相电流检测,基本上就是一个电机控制的最基本部分。
2024-01-08 14:09:18
1345
原创 七、触摸按键控制LED灯实验
下的信号,一旦检测到按键按下, 输出一个时钟周期的脉冲touch_en。每当检测到touch_en。,通过检测touch_key的上升沿来捕获按键按。第21行至31代码为一个经典的。为高电平, led取反一次。
2023-01-29 14:10:25
716
1
原创 六、按键消抖和蜂鸣器
需要说明的是,由于蜂鸣器需要的驱动电流较大,使用默认8mA的驱动电流有可能出现蜂鸣器发声较小的情况,解决方法是将蜂鸣器输出的驱动电流修改成12mA或者是16mA,如下图所。
2023-01-03 13:56:27
324
原创 五、按键和LED控制实验
我们程序设计最终实现的效果为: 无按键按下时, LED灯全灭;按键1按下时, LED灯显示。LED在流水效果和闪烁效果在时间间隔均为0.2秒, 因此需要在程序中定义一个0.2s的计数。自右向左的流水效果;按键2按下时, LED灯显示自左向右的流水效果;按键3按下时,四个LED。器, 即每隔0.2s,状态计数器加一。根据当前按键的状态选择不同的显示模式,不同的显示模。式下四个led灯的亮灭随状态计数器的值改变,从而呈现出不同的显示效果。按键4按下时, LED灯全亮。
2023-01-03 10:19:30
1237
原创 TCP/IP包长度是怎么确定的
Maximum Transmission Unit(最大可传输单元) 的缩写,它的单位是字节。在 *数据链路层* 定义在应用程序中我们用到的 Data 的长度最大是多少,直接取决于底层的限制,即:MTU1>、最大值:对于 IP 数据包来讲,在 IP 包头中,以 两个字节(16 位)来描述 IP 包的长度,也就是说,一个 IP 包,最长可能是 65535字节(64K)。那么加上以太网帧头和尾,一个以太网帧的大小就是:,看起来似乎很完美,发送方也不需要拆包,接收方也不需要重组但,使用最大值真的可以吗?我们往下
2022-11-11 10:11:31
885
原创 非常经典的电压掉电监测电路,你学废了吗?
放电回路①:当VCC降低到9.85V时,电容C1的电压为充满电时的10.55V,比Q1的b极(9.85V)高0.7V,C1通过Q1的eb极、电阻R3,分别放电到VCC,以及经电阻R1、R2到地。如增大C1、R3和R4的值,可以延长C1放电的时间,也就延长了Q2持续拉低的时间,最终延长了电路输出掉电信号的持续时间。为解决浮空的问题,应该对地接一个电阻,比如100K欧姆的,以固定Q2的b极电平,防止Q2受到干扰而错误导通。3、当VCC掉电时,需要掉到一定的阀值,Q2才会导通,并对外输出VCC掉电的信号。
2022-11-02 08:26:49
3353
4
原创 一、Quartus II软件的使用
使用流程图总结图:一、打开软件二、新建工程1、创建目录2、创建工程选择【 File】→【 New Project Wizard…】来新建一个工程。
2022-09-30 14:39:20
7630
原创 BLDC 四大方案
的优点是对性能比较高的应用,常常用于塑封电机的设计;也可以描述成 MCU+IPM,开发功率组件的国际厂商多半都有 IPM 的产品,让客户能简化电路板设计的复杂度,提升稳定性,也是早期特别成熟的驱动方式。,BLDC 电机控制的发展经历了从小规模模拟、数字电路于分离器件的控制器,发展到专用集成控制电路的控制器,再到 MCU,DSP 等解决方案的过程。,受控制理论和控制器件的限制,BLDC 电机一直采用经典 PID 控制,该控制方法可以使系统性能满足各种静、动态指标要求,但系统的鲁棒性不尽人意。
2022-09-06 09:41:59
3226
原创 二、Verilog基础语法学习
我们先看下逻辑电路中有四种值,即四种状态: 标识符(identifier)用于定义模块名、端口名和信号名等。 Verilog的标识符可以是任意一组字母、数字、 $和_(下划线)符号的组合,但标识符的第一个字符必须是字母或者下划线。另外,标识符是区分大小写的。不建议大小写混合使用,普通内部信号建议全部小写, 参数定义建议大写。 二进制表示如下: 4’b0101表示4位二进制数字0101;十进制表示如下: 4’d2表示4位十进制数字2(二进制0010) ;十六进制表示如下: 4’ha表示4
2022-08-19 09:51:08
2646
1
原创 射频电路的工作原理
为了更好地掌握智能手机射频电路的工作原理,在本文中,我们根据手机的电路结构对射频接收电路、射频发射电路、频率合成器电路进行分析,对于我们学习2G、3G、4G、5G手机的射频电路有非常重要的指导意义。射频接收电路手机射频接收电路主要完成对接收的射频信号进行滤波、混频解调、解码等处理,最终还原出声音信号。1.射频接收信号流程天线接收到无线信号,经过天线匹配电路和接收滤波电路滤波后再经低噪声放大器(LNA)放大,放大后的信号经过接收滤波后被送到混频器(MIX),与来自本机振荡电路的压控振荡信号..
2022-04-28 08:57:16
5455
原创 SPL简介
SPL(Secondary programloader)是uboot第一阶段执行的代码。主要负责搬移uboot第二阶段的代码到系统内存(System Ram,也叫片外内存)中运行。SPL是由固化在芯片内部的ROM引导的。我们知道很多芯片厂商固化的ROM支持从nandflash、SDCARD等外部介质启动。所谓启动,就是从这些外部介质中搬移一段固定大小(4K/8K/16K等)的代码到内部RAM中运行。这里搬移的就是SPL。在最新版本的uboot中,可以看到SPL也支持nandflash,SDC...
2022-04-20 14:39:53
2136
原创 一、ESP32环境搭建(基于vscode插件platformIO)
一、准备材料:1、安装好vscode2、esp-idfhttps://github.com/espressif/esp-idfhttps://github.com/espressif/esp-idf二、搭建环境1、安装platformIO插件,过程有点久,多等等:安装完如下:2、创建工程最后点击最下面(下拉)的finish。然后等待工程创建完,初次操作时间会比较久。稍微等一下。完成后如下:三、简单例程测试下图就是我们写了一个简单IO控制的例程,...
2022-01-27 11:44:54
1788
4
原创 嵌入式Linux学习问题解决记录
问题:make menuconfig提示'make menuconfig' requires the ncurses libraries解决方法解决:Google了一下,原来只需要安装libncurses5-dev就可以了,执行如下命令:sudo apt-get install libncurses5-dev
2021-12-10 20:54:06
737
原创 二十二、linux定时器
一、Linux 定时器介绍在 Linux 内核中, 定时器叫做内核定时器, 内核定时器用于控制某个函数, 也就是定时器将要处理的函数在未来的某个特定的时间内执行。 内核定时器注册的处理函数只执行一次, 即不是循环执行的。 定时器的使用范围(延后执行某个操作, 定时查询某个状态; 前提是对时间要求不高的地方) 。Hz: 系统时钟通过 CONFIG_HZ 来设置, 范围是 100-1000; HZ 决定使用中断发生的频率。 如果就没有定义的话, 默认是 100, 例: ...
2021-12-08 16:28:19
1412
原创 二十、SPI设备驱动及应用(一)
先给出Linux SPI子系统的体系结构图: SPI子系统体系结构下面开始分析SPI子系统。Linux中SPI子系统的初始化是从drivers/spi/spi.c文件中的spi_init函数开始的,看看它的定义:00001025 static int __init spi_init(void)00001026 {00001027 int status;00001028 00001029 buf ...
2021-12-07 08:51:22
3002
原创 十九、I2C驱动及应用
一、概述1、Linux主机驱动和外设驱动分离思想外设驱动→API→主机驱动→板级逻辑--具体的i2c设备(camera,ts,eeprom等等)主机驱动:根据控制器硬件手册,操作具体的寄存器,产生波形。(单片机工程师肯定有强烈的冲动去配置i2c寄存器,产生波形!)。linux应用工程师:屏蔽了驱动和硬件。 linux驱动工程师:屏蔽硬件!提供标准的主机驱动,驱动工程师需要完成“外设驱动” 内核函数接口:(API)。主机...
2021-12-02 21:04:13
3744
原创 十八、中断之独立按键
一、简介中断:是指 CPU 在执行程序的过程中, 出现突发事件去处理, CPU 需要停止当前程序的执行, 转去处理突发 事件, 处理完成之后再返回原程序部分。中断源:是指引发中断的原因。硬件中断:一般指外设发出的中断请求以及内部硬件产生的中断(计算溢出, 除数为 0, 掉电等)软件中断:典型的是中断处理程序的下半部操作.硬件中断的分类内部中断: 内部硬件产生的中断(例如: 除数为 0)外部中断: 外设产生的中断(重点)外部中断的触发方式上升沿触发和下降沿触发电平触...
2021-11-25 21:30:24
1560
原创 十七、字符类 GPIOS
一、驱动代码(char_driver_leds.c)/*包含初始化宏定义的头文件,代码中的module_init和module_exit在此文件中*/#include <linux/init.h>/*包含初始化加载模块的头文件,代码中的MODULE_LICENSE在此头文件中*/#include <linux/module.h>/*定义module_param module_param_array的头文件*/#include <linux/moduleparam
2021-11-25 21:00:16
226
原创 十六、字符驱动及应用
一、 驱动代码(char_driver.c)/*包含初始化宏定义的头文件,代码中的module_init和module_exit在此文件中*/#include <linux/init.h>/*包含初始化加载模块的头文件,代码中的MODULE_LICENSE在此头文件中*/#include <linux/module.h>/*定义module_param module_param_array的头文件*/#include <linux/moduleparam.h&g
2021-11-24 15:21:07
130
转载 各版本arm-gcc区别与安装
原文地址:https://www.jianshu.com/p/fd0103d59d8e一、arm-linux-gcc、arm-none-eabi-gcc、arm-eabi-gcc、arm-none-linux-gnueabi-gcc区别1、arm-none-eabi-gcc==(ARM architecture,no vendor,not target an operating system,complies with the ARM EABI)==Arm官方用于编译 ARM 架构的裸机系统
2021-09-01 11:30:47
8539
转载 交叉编译器 arm-linux-gnueabi 和 arm-linux-gnueabihf 的区别
原文地址 :https://zhidao.baidu.com/question/1691117630864232868.html自己之前一直没搞清楚这两个交叉编译器到底有什么问题,特意google一番,总结如下,希望能帮到道上和我有同样困惑的兄弟…..一. 什么是ABI和EABI1) ABI: 二进制应用程序接口(Application Binary Interface (ABI) for the ARM Architecture)在计算机中,应用二进制接口描述了应用程序(或者其他...
2021-09-01 11:20:55
431
原创 十五、linux 注册字符类设备和生成节点
一、注册字符类设备1、概述• 分配内存空间函数kmalloc– 分配连续的虚拟地址,用于小内存分配。在include/linux/slab.h文件中。– 参数1:申请的内存大小(最大128K),– 参数2:GFP_KERNEL,代表优先权,内存不够可以延迟分配• 清空内存空间的数据函数memset– 可以清空内存空间,也就是全部写为0– 参数1:内存地址– 参数2:0– ...
2021-07-19 17:09:53
445
1
原创 十四、linux 静态/动态申请字符设备号
一、静态申请字符类设备号• 字符设备函数在文件“include/linux/fs.h”中• 内核提供了函数来注册一组字符设备编号– register_chrdev_region()• register_chrdev_region()是提前知道设备的主次设备号,再去申请设备号,属于静态申请。二、动态申请字符类设备号• 字符设备函数在文件“include/linux/fs.h”中...
2021-07-16 16:07:37
729
原创 十三、linux 内核驱动模块传参数
在加载模块的时候,可以向它传参数。单个参数:内核模块可以通过module_param来传单个参数– module_param(name,type,perm)– name:模块参数的名称– type: 模块参数的数据类型(支持int long short uint ulong ushort类型)– perm: 模块参数的访问权限(S_...
2021-07-16 14:36:38
467
原创 十二、linux LED初始化
一、硬件原理图 我们今天的目标是将itop4412开发板上的两个led灯控制起来。先看一下原理图:二、GPIO需要的接口和定义1、Linux中申请GPIO的头文件– include/linux/gpio.h主要提供一些GPIO操作函数:2、三星平台的GPIO配置函数头文件– arch/arm/plat-samsung/include/plat/gpio-cfg.h – 包括三星所有处理...
2021-07-15 16:53:45
899
4
原创 九、linux设备节点注册
临时占位,还没弄好,后期再修改一、杂项设备 杂项设备可以说是对一部分字符设备的封装,还有一部分不好归类驱动也归到杂项设备。为什么会引入杂项设备?• 第一、节省主设备号– 如果所有的驱动都是用字符设备,那么所有的设备号很快就用完了,总共就255个主设备号。• 第二、驱动写起来相对简单– 如果直接使用封装好的杂项设备,那么就可以减少一步注册主设备号的过程。杂项设备初始化部分源文件“driver...
2021-07-09 15:47:10
882
原创 八、linux以模块方式注册设备
我们刚刚在《六、linux虚拟平台设备注册》中,介绍了如何注册一个设备,但是呢,那种方式适合在程序定型之后那样做。当我们前期调试时,如果每一次都要编译内核,那很浪费时间,所以,今天我们来讲以模块方式注册设备。 我们先回顾一下刚刚注册设备时使用的结构体(vim include/linux/platform_device.h):那么我们首先要创建一个platform_device类型的结构体变量,并把这个变量通过platform_device_regis...
2021-07-09 10:25:59
459
keil常用脚本.zip
2021-03-31
uartapp.zip
2020-10-30
Linux字符设备操作.zip
2020-10-24
XunLeiSetup11.0.2.52xl(抢先体验版).exe
2020-09-14
pure-css3-lighter.zip
2020-04-11
keil5自定义配色方案.zip
2020-04-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人