- 博客(36)
- 收藏
- 关注
原创 【elfboard linux开发板】11. 版本管理和修改设备树流程(点亮LED)
IOMUX是指IO引脚功能多路复用;其对应的引脚功能可以看05-硬件资料\05-4 管脚分配表\ELF 1引脚复用对照表-20230921.xlsx,在表中Alt0为默认功能,后面的Alt[数字]列为可以复用功能,复用为GPIO需要配置为Alt5,相关的寄存器配置可以查看chapter 32.6 中关于SW_MUX_CTL寄存器描述a. 常用的寄存器类型电气属性寄存器:IOMUXC_SW_PAD_CTL_PAD_* 20E_0204-20E_048F。
2024-01-09 15:49:18 1303
原创 【elfboard linux 开发板】10. 设备树与烧录
设备树由一系列被命名的node和property组成由dts文件以文本方式对系统设备树进行描述,经过dtc编译器将dts文件转化为二进制文件dtb。dtb文件可以由Linux内核解析,有了设备树就可以在不改动Linux内核的情况下,对不同的平台实现无差别的支持;硬件有变动时,不需要重新编译内核或驱动程序,只需要更换相应的dts文件即可。dtsi相当于C语言中include的h文件。
2024-01-07 16:35:56 634
原创 【elfboard linux 开发板】9. 虚拟机扩容和内核编译
原因:在scripts/dtc/dtc-lexer.lex.c_shipped和scripts/dtc/dtc-lexer.l中都有声明解决方法:在scripts/dtc/dtc-lexer.lex.c_shipped文件的第640行YYLTYPE yylloc前加extern声明为外部变量。
2024-01-05 23:53:47 1048
原创 【elfboard linux开发板】8. watchdog 和 mpu
a. ioctl 命令说明需要的头文件格式:int ioctl(int fd, unsigned long request, …)fd 必须被打开第二个参数是一个依赖设备的请求代码第三个参数是一个无类型的内存指针返回值:成功为0,失败返回-1,并且设置errnob. 如果要看头文件中的<linux/watchdog.h>,可以到linux板上也可以发送到虚拟机上看c. 相关的宏和函数d. 需要输入的传参watchdog文件位置,动作,时间。
2024-01-04 23:26:19 472
原创 【elfboard linux开发板】7.i2C工具应用与aht20温湿度寄存器读取
传感器通过IIC方式进行通信,连接的为IIC1总线,且设备地址为0x38,实际上通过后续iic工具查询,这个设备是挂载在iic-0上。
2024-01-02 18:18:50 1415
原创 【elfboard linux开发板】6. uart 实现串口收发功能
准备一个usb转ttl的模块, 对应的引脚的连接分为:VCC - 3V3;GND - GND;RXD - TXD2;TXD - RXD2;
2023-12-29 23:49:15 490
原创 【elfboard linux开发板】5.vmware tools安装及uart属性的获取和设置
系统:ubuntu22.04虚拟机版本:VMware workstation 16 pro(16.1.2)VMware tools文件(iso)一般在虚拟机目录下,如果没有,这是,找到对应的虚拟机版本下载解压缩并挂载即可;通过如下步骤,挂载VMware tools虚拟机设置CD/DVD使用ISO映像文件-选择VMware Workstation\linux.iso-点击确定右击图标,选择连接reboot重启一下。
2023-12-28 22:00:41 927
原创 【elfboard linux开发板】4. 文件点灯与创建多进程
ps:提升效率的小tips:灵活运用vim操作命令,gg快速跳转到文件开头,G跳转到结尾多行操作ctrl + Vshift + i插入修改内容esc退出编辑。
2023-12-27 12:00:50 1079
原创 【elfboard linux开发板】3.linux 交叉编译工具使用
首先,通过NAT模式连接外网,下载安装ssh安装 ssh查看ssh启动ssh其次,关掉电脑和ubuntu的防火墙进入安全中心,关闭windows防火墙在ubuntu中输入下列命令,关闭ubuntu防火墙然后,虚拟机网络适配器选择桥接模式,并且在‘编辑’->‘虚拟网络编辑器’中将已桥接至选择我们连接网线的接口,并且在网络和internet/高级网络设置/查看其他属性中,手动分配ipv4地址为和嵌入式ip同一网段最后,通过下列命令可以ssh操作嵌入式linux系统。
2023-12-26 19:56:58 469
原创 【elfboard linux开发板】2. 复习linux相关操作命令
前提:安装好VMWare虚拟机和在虚拟机上安装好ubuntu系统ps: 如何生成可执行文件到嵌入式Linux中?ps: 因为linux的ssh,需要能够ping通网络;笔记本没有以太网接口,可以买个RJ45网线接口,在等待过程中,先来熟悉下我们的Linux相关知识。
2023-12-25 16:23:56 963
原创 【elfboard linux开发板】1. 开箱与点灯仪式
非常荣幸参与到的自创一派活动中来,本次使用的Linux板为飞凌的ELF1主控板,其主控为:FETMX6ULL-S,搭载的资源有: wifi/蓝牙模块,温湿度传感器模块,六轴加速度计模块、蜂鸣器等;并且提供usb口、typeC调试口、pin针、以太网口、LCD端口、相机座等外设接口赠送的配件typeC数据线2根,可以用来连接OTG和debug口以太网线(连接ETH 0)杜邦线(连接PIN脚)尼龙柱(做支撑防止短路)纽扣电池(给RTC供电)螺丝刀(调节变阻器)
2023-12-24 13:49:52 468
原创 【GD32F4xx源码】3. GPIO按键输入
在main函数循环体中,判断GPIOA0的输入状态,并反转LED1的输出电平。4. 配置端口输入状态寄存器比较高低电平判断输入是高电平还是低电平。按键按下:PA0捕获为1,松开捕获为0,配置为下拉电阻。时钟开启放置在rcu_config.c文件,如同前文。新增文件key.c 和key.h。2. 配置控制寄存器为输入模式。3. 端口上拉/下拉寄存器。PA0:输入GPIO口。1. 使能AHB1时钟。
2023-12-10 15:12:18 208
原创 【GD32F4xx源码】2. GPIO寄存器与库函数(输出模式:点亮LED灯)待修改
e. PMOS 和NMOS,电子开关,上管导通接到VDD,输出高电压,下管导通接到Vss,输出低电压,开漏输出下,PMos无效,只有低电平和高阻两种状态,开漏模式可以作为通信协议的驱动方式;c. 右侧的开关电路,则是上拉与下拉电阻(在引脚内部),只在输入时有用,上拉连通到Vdd,下拉连通到Vss,给输入提供一个默认的输入电平,当没有输入时,确定是高电平还是低电平。d. 施密特触发器特点:当输入高于上阈值,会瞬间变为高电平,当输入低于下阈值,会瞬间变为低电平;3. 项目及程序源码。
2023-12-05 21:12:42 473
原创 【GD32F4xx源码】1. systick及volatile(C语言)
SysTick_CTRL_CLKSOURCE_Msk | SysTick_CTRL_TICKINT_Msk | SysTick_CTRL_ENABLE_Msk即将CTRL寄存器的0,1,2位置1;因为SysTick定时器向下计数器是24位,所以传入变量大于0xFFFFFF时返回1,标识不是正常返回;register 局部变量,寄存器或内存,只能是整形,不能取地址操作。作用:告诉编译器每次都要去内存存取,不是直接使用寄存器中的备份。特征修饰: 决定变量的特征属性 const,voatile。
2023-12-05 14:09:10 113
原创 【stm32】SPI通信
主机另外引出多条SS控制线,分别接到各从机的ss引脚,置SS的电平为低电平与其通信;输出引脚为推挽输出(高低电平均有很强的驱动能力),输入引脚配置为浮空或上拉输入。CPHA=0:SCK第一个边沿移入数据,第二个边沿移出数据(应用多);当SS未被选中时(为高电平),MISO引脚必须切换为高阻态。CPHA=1:SCK第一个边沿移出数据,第二个边沿采样;四根通信线:SCK,MOSI,MISO, SS。CPOL= 1: 空闲状态时,SCK为高电平;CPOL=0: 空闲状态时,SCK为低电平;
2023-10-23 20:45:16 62
原创 【stm32】IIC通信
SCL低电平期间,从机将数据位依次放到SDA线上(高位先行), 然后释放SCL, 主机将在SCL高电平期间读取数据位,所以SCL高电平期间SDA不允许有数据变化,依次循环上述过程8次,即可接收一个字节(主机在接收之前,需要释放SDA,输入模式)S+从机地址(7bits)+R(1)+AC(0)+Sr(Start repeat)+从机地址(7bits)+R/W(1/0)+AC(应答)+寄存器地址(8bits)+AC+Data+SA+P。SCL保持高电平,SDA从高电平到低电平(下降沿);
2023-10-23 17:50:35 92
原创 【传感器上手Arduino】2. RGB三色传感器
硬件:共阴极,RGB配置为输出模式,输入0-255的值,组合成不同效果。效果:可以查找对应的RGB值嵌入在代码中,显示各种颜色。
2023-08-01 16:51:09 227 1
原创 【QT训练营】00.QT下载与介绍
帮助文档在Qt\Qt5.9.9\5.9.9\msvc2017_64\bin\assistant.exe,也可以在下列位置直接搜索相关内容。base class 选择QWidget,如果需要UI则勾上Generate form,其他默认。也可以在pro文件中 加入gui,头文件和源文件加入对应的文件名。选择qt widgets application。
2023-06-28 11:13:31 131 1
原创 【RT_thread英飞凌开发板】2.uart通信
uart5在硬件中选择uart5,保存退出修改uart_config.h3.相关接口rt_device_read() 读取数据rt_device_write() 写入数据rt_device_control() 控制设备rt_device_set_rx_indicate() 设置接收回调函数rt_device_set_tx_indicate() 设置发送完回调函数rt_device_close()
2023-06-27 19:55:41 157
原创 【RT_thread英飞凌开发板】1.pwm驱动轮胎转动
使用到的rt_thread函数介绍:应用程序通过该接口查找到设备,然后使用I/O设备管理接口来访问硬件设置PWM周期和脉冲宽度使能PWM设备。
2023-06-27 11:37:48 109
原创 【openMMLab实战营】mmagic
mmagic: 涉及的技术有生成模型,底层视觉,AIGC多模态算法库等。AIGC:AI generated content AI生成内容。在大模型的基础上,借助几张图片,即可以生成自己的模型;可以实现根据文字描述生成图像,或者图生图。只需要输入3~5张图像和物体的类别名。得到独特的辨别器和个人化的模型。2.训练dreambooth。Dreambooth网络。文字到图像的预训练模型。
2023-06-16 17:08:03 174
原创 【openMMLab实战营】底层视觉与MMEditing
移除batch normalization,引入衰减因子;用RaGAN替换GAN;准备数据(高分图像和低分图像),需要学习的参数(三个卷积的权重和偏差),损失函数,通过标准的SGD训练模型。次像素卷积:得到r的平方通道的特征图,再排列成rxr面积的图像。说明:三层卷积的作用为:特征提取,非线性映射,图像重构。感知损失:鼓励恢复图像的高层特征与高分图像相近。均方误差:鼓励恢复图像的像素值与高分图像相近。对抗损失:鼓励恢复图像更真实、细节更丰富。利用差分技术,提高图像的分辨率。转置卷积:缺点会造成棋盘缺陷。
2023-06-15 20:42:59 127
原创 【openMMLab实战营】9.openmmsegmentation代码课
需要pytorch,torchvision,openmim,mmcv,mmeigen。一帧一帧的(含有语义分割结果图像)存放在临时文件夹,然后串成视频。5.其他具体操作方法看tutorial。网络模型在config文件夹下。1.同济子豪兄的教程下载地址。ps: 视频处理方式。
2023-06-14 13:51:55 81
原创 【openMMLab实战营】8.mmsegmentation理论
但是滑窗之间有重叠,浪费计算资源,同时输入的图片大小要求要一致,引入卷积层。为了恢复网络中的降采样(还原图片),需要对卷积结果升采样,通常采用下面两种方法。PSPNet(2016):对特征图进行不同尺度的池化,得到不同尺度的上下文信息。a. 语义分割:只考虑像素的类别,不分割同一类的不同实体。1. 对语义分割的理解:对图像中的每个像素进行分类。语义分割的训练是通过逐像素计算交叉熵损失进行的;b. 实例分割:分割不同的实体,仅考虑前景物体。4.语义分割 实例分割 全景分割的区别。2. 语义分割的基本思路。
2023-06-13 16:33:20 79 1
原创 【openMMLab实战营】7.目标检测与MMDetection
识别分类出物体,定位物体位置画出框;学习获得一个框的起点(x,y)和宽高(h,w),并基本范式:sliding widow:遍历图像所有位置卷积实现密集预测anchor:设置不同大小和长宽的框多尺度检测与FPN(特征金字塔)单阶段和无锚框检测器RPNYolo、SSDFocal Loss与RetinaNetFCOS发展过程评价标准推理精度推理速度模型体积启发式算法特征值裁剪特征图感受野:神经网络中,一个神经元能看到的原图的区域感受野的中心:特征图的中心点乘以步长。
2023-06-09 09:42:53 127
原创 【openMMLab实战营】5.MMPreTrain
全新升级的预训练开源算法框架MMClassification和 MMselfSup两个算法库合并而成;
2023-06-05 21:36:42 275 1
原创 【openMMLab实战营】4.免费的算力跑mmpose模型和git push相关问题总结
自身笔记本不带显卡,本来用colab环境跑起来了,但colab给我训练到不到15个epoch就没算力,而且搭建mmcv环境都要半个小时,有点小坑。这个平台让我完成了任务,这个GPU可以用算力豆免费用,每天签到都送40豆,V100GPU(0.5/6min), 可以用8个小时了;更何况注册还送500豆。a.上传数据集b. 新建实例时导入自己的数据集,数据集在/root/data下环境的安装记得在终端运行,可以永久保存,在jupyter中可能要重装环境;
2023-06-05 12:48:09 222 1
原创 【openMMLab实战营】3.安装MMPOSE和MMDetection
python的os.chdir():选择路径文件夹。os.mkdir():生成文件夹。MMDetection安装。
2023-06-03 17:37:46 239
原创 【openMMLab实战营】2.openMMLab环境配置和MMPose学习
从给定的图像中识别人脸、手部、身体等关键点人体68关键点手势21关键点人体18关键点PoseC3D:基于人体姿态识别行为动作CG 动画人机交互动物行为分析。
2023-06-02 18:35:38 484
原创 【OpenMMLab实战营】1.OpenMMLab相关介绍
MMOCR:OCR的意思是Optical Character Recognition(光学字符识别),用于文本内容识别等;应用:支票文字识别等;俗话说的好:凡欲善其事,必先利其器;mmtracking:视觉感知和追踪算法库,应用:人流量计算,物体运动轨迹等;openMMLab官方网站:https://openmmlab.com。MMagic:可用于给照片加上各种风格,产生各种艺术效果;mmrotate:旋转目标检测,应用:环形道路车辆检测;mmdetection:物体检测;
2023-06-01 10:43:28 385 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人