自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(123)
  • 资源 (3)
  • 收藏
  • 关注

原创 VTK知识学习(5)-使用相机

观众的眼睛好比三维渲染场景中的相机,在VTK中用vtkCamera类来表示。vtkCamera负责把三维场景投影到二维平面,如屏幕。相机投影示意图如图所示。

2024-11-11 18:45:00 199

原创 VTK知识学习(4)-使用灯光

剧场里有各式各样的灯光,三维渲染场景中也一样,可以有多个灯光存在。灯光和相机是三维渲染场景必备的要素,如果没有指定,vkRenderer 会自动创建默认的灯光和相机。VTK 里用类 vkLight 来表示渲染场景中的灯光。与现实中的灯光类似,VTK中的vtkLight 实例也可以打开、关闭,设置灯光的颜色,照射位置(焦点),灯光所在的位置、强度等。

2024-11-09 16:21:46 552

原创 VTK知识学习(3)-显示圆柱

vtkPolyDataMapper 渲染多边形几何数据(vtkPolyData),派生自 vtkMapper,将输入的数据转换为几何图元(点、线、多边形)进行渲染。工作的基本流程是“数据源Souce”--“过滤器Filter”-- “制图器Mapper”-- “角色Actor”--“渲染器Renderer”。vtkActor 派生自 vtkProp3D类,渲染场景中数据的可视化表达 负责确定渲染场景中对象的位置、大小和方向等信息。vtkRenderer 负责管理场景的渲染过程。

2024-11-08 18:45:00 600

原创 Android Studio使用c++编写

当然还一些情况是需要增加模块依赖的,这个需要好好研究了。完成后,这里就根据实现设计进行c++的功能函数开发了。找到MainActivity文件,添加类型的调用声明。当然,这个只是调用的入口,在这里编写调用你实能的功能。如添加一个c++类的引导窗口中填写类名称即可。利用智能补正工具,在c++写函数定义体。在cmake文件中,添加你的文件名称。这里根据实际需要添加相应的文件。在c++文件中,编写相关调用。

2024-11-08 17:45:00 465

原创 VTK知识学习(2)-环境搭建

在配置完 VTK 后生成的工程中会有一个INSTALL项目,编译该项目后即会在CMAKEINSTALL_PREFIX所指定的路径中生成 VTK 相应的头文件、lib 文件和动态链接库 dll 文件。需要在项目中引用如图所示的两个DLL,然后生成的目录下需要将相关DLL复制到,当然你可以配置环境变量来试试,因为操作系统默认会去环境变量里面找一下看看能不能找到。总结,后面主要是在C#上编写,当然c++的API更加丰富,毕竟这个C#是在其基础之上进行封装的,如果考虑性能方面肯定有差异的。

2024-11-07 16:22:56 879

原创 VTK知识学习(1)-概述

图像显示是一个重要的知识,其中VTK就是一个医学上常用的图像显示开发包。

2024-11-06 17:34:38 522

原创 树莓派开发相关知识十一 -QT编写客户端控制小车

在QT中使用#include 中的QTcpSocket来实现客户端逻辑。其实就是根据约定发送字母,分别控制前进、后退、加速、减速、左转、右转、停止。当然也可以使用字母按键响应,需要关联事件。

2024-11-05 19:00:00 547

原创 树莓派开发相关知识十 -小车服务器

实际测试,请根据接线情况调整对应控制引脚。#4个电机驱动输出通道#生成小车对象#4个红外输入通道#初始化为输入#自动运行标志,用来停止自动模式exitFlag=1stopmu=1#3个超声波测距#超声波是否启用标志carstate=1#舵机角度设定angle=90#数码管dio=17clk=27#初始化数码管#蜂鸣器引脚#灯LED=[22,5]#初始化蜂鸣器和灯#超声波锁。

2024-11-05 16:15:00 411

原创 树莓派开发相关知识十 -小试服务器

需要在树莓派上运行一个服务端程序来响应外部命令,实现远程摇控功能。BS框架以及相关知识请参考:Linux编程4.4 网络编程-通信架构-CSDN博客。

2024-11-04 17:45:00 1147

原创 树莓派开发相关知识七 -串口数码管C语言版本

【代码】树莓派开发相关知识七 -串口数码管C语言版本。

2024-11-04 11:43:51 450

原创 树莓派开发相关知识九-舵机加测距

正常这个使用时,需要测试不同方向的距离。这里就是模拟转运一个角度,测量一个距离,它有点类似车辆转弯时,需要先观察左右两边是可以案例通过。当然这里,你发现一个问题,又用python来编写超声波测距,前面提到过由于控制粒度问题,C编写的是非常好的,实际使用时,可以将其用C编写成模块来调用。

2024-11-03 16:15:00 152

原创 树莓派开发相关知识四 传感器-测距C语言版本

然后用python进行编译。

2024-11-03 14:00:00 237

原创 树莓派开发相关知识八-其他传感器

这里是一个信号,模块中一共有四个信号,使用时是使用黑色胶带做引导线,结合这四个信号判断小车的移动方向,左转、右转等情况。这里就是模拟输出高低电平来间隔控制实现鸣叫,根据实际需要调整间隔时间,到达不同效果。

2024-11-02 18:30:00 211

原创 树莓派开发相关知识七 -串口数码管

一个普通的数码管实际上为7+1个LED灯。上图可知,A-G加上DP点8个LED,通过不同的亮暗来显示出所需的数字。如果同时要控制多个数码管,则需要的GPIO未免太多。我们选择控制4个数码管,通过串行转并行的方式实现控制。所谓串行转并行,即与串口类似,在一根线上加上时间的维度,通过时序来转换为不同的并行输出。即,我们可以通过两根线控制4个数码管32个灯。这种串行转并行,总线协议的前兆,这里的实现方式与I2C总线非常类似。一般串行总线的实现,是协议+地址+寄存器+数据+……这种形式。

2024-11-02 14:15:00 867

原创 树莓派开发相关知识六 -串口通讯

其协议如上图,由起始位+有效数据位+奇偶校验位(*可选),停止位(*宽度可调),空闲位组成,即根据uart协议,当我们需要发送如01010101这8位有 效数据时,我们应该让txd引脚成010101010(LSB低位在前) (0/1根据奇校验,偶校验还是无奇偶校验定) 1(1/1.5/2 脉冲宽度可以是1,1.5,2),后续如果不发数据了,则停留在空闲位。按照串口协议,此程序中波特率选择115200,其他没有设置,即默认无奇偶校验,停止位宽度为1,8位有效数据。

2024-11-01 19:00:00 481

原创 树莓派开发相关知识五 -wiringPi模块导入Python

将C语言中使用了wiringPi模块的代码转换为python的模块,以dht11为demo。

2024-11-01 12:00:00 256

原创 树莓派开发相关知识五 -wiringPi模块

如果要在C语言中操作树莓派,则需要这个wiringPi模块来进行调用。WiringPi 是一个用于树莓派(Raspberry Pi)等设备的 GPIO(通用输入输出)接口编程库,它能够让开发者方便地控制树莓派上的各种硬件接口,实现与外部设备的交互。简单易用:提供了简洁直观的函数接口,使得即使是初学者也能相对轻松地开始进行树莓派的 GPIO 编程。例如,通过简单的函数调用就可以设置 GPIO 引脚的输入输出模式、读取引脚状态或向引脚输出高低电平。与硬件紧密结合。

2024-10-31 16:15:00 659

原创 树莓派开发相关知识四 传感器-温湿度传感器

使用DHT11温湿度传感器,传感周期为1s。DHT11模块一般由3/4个引脚组成,每一次收集数据为40bit。分别为:高位在前、8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据+8bit校验和我们需要解决的问题,如何使用1个引脚一次获取40位的数据,必须增加另外的维度、即“时间”。数据按照某种协议发送,一组低电平+高电平组成一次的位数据,通过高电平保持时间的不同,来确定这一位是0还是1。时序图:黑色为触发信号,即设备端触发DHT11模块。

2024-10-31 07:30:00 406

原创 Ubuntu中c语言编写扩展给Python调用

在两者所有的文件目录中,执行以下命令来生成扩展模块。1、编写C语言文件如下。名字为demo2.c。

2024-10-30 17:15:00 193

原创 树莓派开发相关知识四 传感器-测距

内部信号:当超声波传感器感知10us以上的高电平,下降沿触发后,内部循环发出8个40khz的脉冲,并开始工作,即发射超声波。回响信号:超声波传感器在发射超声波信号的同时,将echo引脚置高电平,等待接收,接收到超声波后将echo引脚置低电平。触发信号:trig引脚给出至少10us以上的高电平便触发超声波传感器。超声波发生器发射超声波,等待反弹并接受,反馈给用户此超声波发射到接收的时间。超声波测距离是一种常见的非接触式测距方法,集成超声波发射器与接收器。用户根据echo引脚高电平保持的时间,来计算出距离。

2024-10-30 14:30:00 269

原创 树莓派开发相关知识三PWM控制控制G90舵机舵

当正脉冲为0.5ms(占空比2.5%),则为极限左转(0°),正脉冲为2.5ms(占空比12.5%),极限右转(180°)要求周期信号为20ms,即50hz频率。极限角度为0°~180°。3、控制舵机来回转运。

2024-10-29 17:30:00 137

原创 树莓派开发相关知识三PWM控制转速

基于树莓派PWM控制 控制L298N马达驱动转速 马达驱动转速。

2024-10-29 12:00:00 719

原创 树莓派开发相关知识三PWM

宽度调制:一个周期内高电平占整个周期的多少,100%即一直高电平,50%即一半高电平,一半低电平,此称为占空比。PWM (pulse width modulation) 脉冲宽度调制。常用的方法: 注意!设置PWM前先设置为输出。脉冲:按照一个周期上下震荡的时序电路。4、LED灯亮暗切换。

2024-10-28 17:15:00 282

原创 树莓派开发相关知识二之Demo

以上定义的引脚号,这个编写时可以根据实际接入的引脚号进行调整,接入那个编号的引脚就设置为对应的引脚号,切莫不知其然。

2024-10-28 15:00:00 131

原创 树莓派开发相关知识二

无论是哪种模式,明明按了1次,却输出很多次,这是为什么呢?实际上,按键按下的一瞬间,会有多个脉冲,故会判定多次按下,需要通过代码进行防抖。由程控自由使用,PIN脚依现实考量可作为通用输入(GPI)或通用输出(GPO)或通用输入与输出(GPIO)。树莓派装载的芯片:BCM2835是一个MCU微处理器,它可以理解为CPU+其它模块的组合。编程使用时,需要导入RPI包中的GPIO模块, as 将此导入的结果用GPIO表示。GPIO输入:就是输入一个电压信号,可以理解为开关打开后电流可以注入的端口。

2024-08-14 20:15:00 618

原创 树莓派开发相关知识

打开ubuntu-mate-16.04.2-desktop-armhf-raspberry-pi.iso镜像文件,选择写入。下载ubuntu-mate镜像文件ubuntu-mate-16.04.2-desktop-armhf-raspberry-pi。准备工作:usb键盘以及usb鼠标,高清接口,连接显示器,如果显示器不支持高清接口则准备vga转高清接口。分别配置语言(中文),wifi连接,地区(上海),键盘及用户名后,耐心等待系统安装完毕。将sd卡插入树莓派底部卡槽中,连接键盘鼠标显示器后,启动树莓派。

2024-08-14 15:36:51 711

原创 C#使用LiveCharts绘制图表

搜索LiveCharts.Wpf。在XAML中添加命名空间 xmlns:lvc="clr-namespace:LiveCharts.Wpf;assembly=LiveCharts.Wpf"WinForm中有自己的图表控件,在WPF中好像没有了,不过引用这个第三方库,就可以轻松的绘制出漂亮的图表控件了。

2024-08-10 16:30:00 531

原创 加密技术与认证技术

由单向散列函数加密成固定长度的散列值。常见的摘要算法:MD5(128位)、SHA(160位),由于SHA通常采用的密钥长度较长,因此安全性高于MD5.签名的作用:①接收者可验证消息来源的真实性;②发送者无法否认发送过该消息;③接收者无法伪造或篡改消息。签名的过程:①信息发送者使用一个单向散列函数(Hash函数)对信息生成信息摘要。②信息发送者使用自己的私钥签名信息摘要。③信息发送者把信息本身和已签名的信息摘要一起发送出去。

2024-08-10 10:30:00 964

原创 WPF动画的使用

前言弹幕是什么?这里是使用动画将控件弹起来,通过C#提供的多样化动画类型,我们可以制做出丰富的界面效果。主要有基于时间的动画和基于属性的动画。

2024-08-09 17:30:00 790

原创 WPF中的图形对象

在WPF中可以根据需要在前台绘制自己所需要的几何开状,可设置性很丰富,而且在xaml中很好的实时性,如果是设计时还可以考虑使用Blend for Visual Studio来添加元素,它的设计交互性更高。

2024-08-09 16:00:00 1835

原创 WPF中的几种绑定情况

在WPF中,前台控件应该很好的与数据进行绑定关联,不在像WinForm那样在后台拿着控件去操作,基于数据驱动的原则,写好绑定可以方便后台代码逻辑,并且代码看着更加简结。

2024-08-08 16:45:00 454

原创 并行与串对比

【代码】并行与串对比。

2024-08-08 11:30:00 190

原创 C#三种并行执行方案对比

有时候我们需要多个任务同时执行,有的人喜欢用线程Thread,有的人喜欢使用Task,还有的人喜欢用ThreadPool,这里就测试下他们三都同时运行同样逻辑的性能表现。任务数量1000,任务内容为读取1张图像并处理,有100m延时逻辑,记录了启动时间、工作时间、总计用时等信息。

2024-08-07 18:00:00 306

原创 利用Ping监控某个IP状态

在上位机的开发过程中,有时需要增加一些心跳或者网络监控方式,利用Ping可以确定远程计算机是不可访问网络,日志记录异常情况,当然也可以扩展,比如:再把错误信息上报等。

2024-08-07 12:00:00 263

原创 在WPF在做一个图像列表

有一些场景,需要展示一组图像,可能还需要加一些标识信息,然后对控件大小也要控制,这时就需要我们动手改造原生控件,这里我是结合布局虚拟化逻辑再加上控件模板的改造来实现。

2024-08-06 17:45:00 525

原创 利用OpenCvSharp进行图像相关操作

程序设计过程,有时也需要对图像进行一些简单操作,C#没有现成的图像处理库,但有人对OpenCV进行了包装,我们可以很方便的使用OpenCvSharp对图像进行操作。当然了,这也需要使用的人员进行一些研究,但相对于C++版本,它已经非常友好了。

2024-08-06 11:30:00 1065

原创 C#针对kernel32.dll的一些常规使用

Window是一个复杂的系统,kernel32是一个操作系统的核心动态链接库文件。它提供了大量的API函数,提供了操作系统的基本功能。

2024-08-05 18:00:00 568

原创 C#通过7Z解压和压缩文件

在网络情况不够良好或者网速受限情况下,传输文件时,一般考虑使用压缩算法对文件进行压缩。7z压缩是一个压缩率比较高的软件,我们可以通过他来处理我们的文件。主要有两种方式进行压缩:方式1,直接通过调用库方式,可以在网上找到他的库算法;方式2,通过CMD命令行模式调用。

2024-08-05 15:17:04 908

原创 C#根据反射操作对象

反射使用,让我们的程序可以动态增加一些功能,让原本固化的步骤逻辑变得动态,这是它的优点。当然使用反射首次加载会有性能损耗以及使用复杂;但是现在大家都在讲动态,使用好它应该是一个重要的编程理念提升。MVC、ORM、IOC、AOPA都有使用这个东西了。如果要考虑性能,可以考虑缓存程序集,我们保证程序只加载一次就好。

2024-08-04 12:00:00 222

原创 C#对Sqllite操作

数据库的操作也是程序设计中的家常便饭了,关系型数据库中Sqlite3是非常轻量级别的,所以这个数据在小型应用程序的设计中占用很高的比重。当然我这里描述的是1.0版本,也是最原始的方案,大型应用开发中一般选择EF进行桥接,当然我认为其低层逻辑是一致,只是由它帮忙写好了调用的逻辑。

2024-08-03 15:15:00 1004

树霉派相关学习简单介绍和一些入门案例

树霉派相关学习简单介绍和一些入门案例

2024-10-28

基于C#实现软件发布公告 Demo-BS

实现软件发布公告,同理可以用多种公告发布的场景。用户可以使用客户端上传日志,服务器负责响应查看和存储公告的功能。

2024-07-29

2024年上半年软件设计师知识点总结

2024年上半年软件设计师知识点总结

2024-06-25

设计模式学习知识点总结

设计模式学习知识点总结

2024-06-25

设计模式图解,UML类图图示

设计模式图解,UML类图图示

2024-06-25

Qt图形框架视图结构梳理图

Qt图形框架视图结构梳理图

2024-02-26

Python 电机驱动器TM1637

电机驱动器TM1637

2021-09-05

Ubuntu中c语言转Python.7z

Ubuntu中c语言转Python.7z

2021-09-05

Pthon+Qt 智能小车

Pthon+Qt 智能小车

2021-09-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除