心心念念的鸿蒙系统手机版本终于有了确切消息,华为定于12月16日发布鸿蒙系统,这比之前预知的发布日期要提前两天。还有令人激动的是Mate40系列优先升级,真的羡慕提前抢到手的用户,这会不会让Mate40更加抢手还是个未知数。鸿蒙系统作为一个颠覆性的系统,对我们大家来说是新鲜的,是陌生的,除了我们先前知道的有限信息外,还有这三大看点值得我们关注,相信在发布会上,华为会为我们一一解答。鸿蒙系统到底有多流畅在鸿蒙系...
2020-11-25 16:13:56 1.3w浏览 0点赞 0回复 0收藏
•关于Arduino开发板Arduino是一款开源电子原型平台,硬件部分是可以用来做电路连接的Arduino电路板。可以通过编写程序,最后烧写入开发板,配合上一些传感器,以及富有创造力的设计可以创造出很多神奇的东西。在大三的时候,对物联网的感兴趣,让我直接省吃俭用在网络买了个Arduino开发板(Arduino入门套装160),然后个人在寝室瞎折腾就像大多数人说的那样,物联网会在将来掀起大浪潮,本人也是这么认为,开始在寝室折腾...
2020-11-05 18:18:58 1.5w浏览 0点赞 0回复 0收藏
由于工作需要,需要画一块配套ArduinoUNO板子的扩展板,源于自己对于美的追求(其实是强迫症)想把扩展板做的跟原板外形一摸一样,网上大多数朋友都在求Arduino的PCB板型图,所以自己在这里想给大家一点帮助。  Arduino官网提供了ArduinoUNO板子的尺寸图,但是是.dxf格式的文件,下面我将介绍怎么导入到AD中。下载.dxf文件  大家可以去Arduino官网官网下载.dxf文件,在网站中部,选择“DOCUMENTATION”,然...
2020-11-05 18:17:16 1.1w浏览 0点赞 0回复 0收藏
经过前几篇的测试大家应该对小车有一定的认识了,在实际的操作过程中经常会由于操作不当各种碰壁吧?那这次我们将给小车装上一只“眼睛”,让小车看到障碍,躲避障碍。准备材料超声波模块HCSR04在这里简单说下超声波测距的原理,相信大家也都知道。超声波发射装置发出超声波,它的根据是接收器接到超声波时的时间差,与雷达测距原理相似。超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途...
2020-11-05 17:29:28 1.5w浏览 0点赞 0回复 0收藏
在这一篇我们将对小车的行进速度进行调整,将驱动模块的作用发挥出来。首先大家要了解PWM这个概念。PWM  脉宽调制(PWM)基本原理:控制方式就是对逆变电路开关器件的通断进行控制,使输出端得到一系列幅值相等的脉冲,用这些脉冲来代替正弦波或所需要的波形。也就是在输出波形的半个周期中产生多个脉冲,使各脉冲的等值电压为正弦波形,所获得的输出平滑且低次谐波少。按一定的规则对各脉冲的宽度进行调制,即可改变逆...
2020-11-05 17:12:11 1.7w浏览 0点赞 0回复 1收藏
  上一章讲解了智能小车的拼装,但是还没有让小车动起来,这章我们将继续拼装,使得小车可以动起来。驱动模块安装    可能有些朋友会问到,驱动是干嘛的,为什么要驱动,小时候玩四驱车的时候直接装上电池小车就跑了,干嘛还要驱动模块。答案很简单,四驱车他只能朝着一个方向运动,而且永远都是以最大速度运行,我们所做的智能小车通常要控制小车电机的转速和运行方向,因此驱动是必不可少的模...
2020-11-05 17:11:49 1.3w浏览 0点赞 0回复 0收藏
简介Arduino是一款便捷灵活、方便上手的开源电子原型平台,比较适合刚接触硬件的入门级开发者学习。在我身边有很多初学者都陷入了这么一种困境,已经将Arduino官网的教程全部跑完,然而还是没有太大的成就感,看到网上大神们基于Arduino各种各样的开发很羡慕,想动手做小项目又不知从何下手。由于网上较少看到完整项目开发流程,作为一个有较多嵌入式开发经验的“老江湖”,在此想自己综合自己的多年的开发经验,为以后的新人铺...
2020-11-05 17:11:28 1.3w浏览 0点赞 0回复 0收藏
ArduinoArduino是一款比较流行的开源硬件,相对于传统的硬件平台,Arduino所具有的优势就是采用CreativeCommons许可。CreativeCommons(CC)是为保护开放版权行为而出现的类似GPL的一种许可(license)。在CreativeCommons许可下,任何人都被允许生产电路板的复制品,还能重新设计,甚至销售原设计的复制品。Arduino其实是包含硬件部分(各种型号的Arduino板)和软件部分(ArduinoIDE)。Arduino板Arduino开发板众多,仅主板就有...
2020-11-05 09:58:20 1.9w浏览 0点赞 0回复 0收藏
使用过官网arduinoIDE开发程序的朋友应该都知道arduinoIDE界面简洁,功能比较单一,并不像其他IDE那样提供代码补全和跨文件跳转到定义变量函数的功能。现在可以使用VScode来开发arduino程序,支持Tab键代码补全,也支持Ctrl+鼠标左键跳转到变量函数的定义,这样就可以轻松看到调用的库函数是怎么实现的,对于初学者或者自学者都是一个不错的学习机会。一、下载VScodeVScode官方下载地址:https:code.visualstudio.comDownload安...
2020-11-04 18:27:20 2.6w浏览 0点赞 0回复 0收藏
上文链接:https:harmonyos.51cto.composts1575六、MicroArduinoMicro是一个基于ATmega32U4,与Adafruit共同开发的开发板。它有20个数字输入输出引脚(其中7个可用作PWM输出,12个作为模拟输入),16MHz晶体振荡器,微型USB连接,ICSP头和复位按钮。只需使用microUSB线将其连接到计算机即可开始使用。尺寸正好符合面包板。Micro板类似于ArduinoLeonardo,ATmega32U4具有内置USB通信,无需使用辅助处理器。这使得除了模拟(CDC)...
2020-11-04 18:21:41 1.5w浏览 0点赞 0回复 0收藏
一、UNOUNOr3ArduinoGenuinoUno是基于ATmega328P的单片机开发板。它有14个数字输入输出引脚(其中6个可用作PWM输出),6个模拟输入脚,16MHz晶振,USB连接,电源插孔,ICSP接头和复位按钮。只需使用USB线将其连接到计算机,或者使用ACtoDC适配器或电池为其供电即可开始使用。您可以修改您的UNO而不用担心做错任何事情,最糟糕的情况也只是您更换几元的芯片,重新开始。“Uno”是意大利语“一”的意思,并被选为Arduino软件(IDE...
2020-11-04 18:21:13 3.0w浏览 0点赞 0回复 0收藏
系统:win1064bitsArduinoIDE:1.8.5Arduino开发板:UNOArduino可以方便地操作传感器获得传感器数据,获取数据之后我们比较关心的是数据可视化Arduino自带有串口监视器和串口绘图器,我还找到了其他3种适合于arduino串口数据绘图的工具,这篇博客也当做个记录,分别介绍这4种绘图方法,传感器数据是上一篇博客介绍的K型热电偶采集的温度。(1)IDE自带的串口绘图器程序1include<MAX6675Thermocouple.h>defineSCKPIN3模块上的SCK...
2020-11-04 18:20:51 1.8w浏览 0点赞 0回复 0收藏
许多人谈论C++,说这特别困难。这可能部分是由于C++的内存管理。与具有动态管理内存的虚拟机的Java不同,Java在程序操作期间可能会发生内存泄漏。但是,这个问题实际上可以通过C++11引入的智能指针来解决。相反,我仍然认为这种内存管理仍然是C++语言的优势,因为它已被完全掌握。sharedptrsharedptr使用了引用计数,每一个sharedptr的拷贝都指向相同的内存,每次拷贝都会触发引用计数+1,每次生命周期结束析构的时候引用计数1...
2020-09-03 18:09:08 1.4w浏览 0点赞 0回复 0收藏
常量在程序运行之前就存在,并在程序运行时加载到常量区域中。如果定义并分配了常数a,则使用指针p修改a的值。此时,即使对a进行任何计算,a的值仍是未修改的值,但是p的值将是修改后的值。看这段代码,首先定义一个常量a等于5。再使用p指针指向a,并修改值。那么最后输出a结果如何呢?intmain(){constinta5;定义常量a5intp(int)&a;指针指向a,并将其修改为100p100;cout<<a<<endl;会输出5还是100?return0;}输出5答案还是5。这...
2020-09-03 18:09:02 1.1w浏览 0点赞 0回复 0收藏
内存对齐是什么?从理论上讲,计算机可以从任何位置访问任何变量,但是实际上,系统对这些变量的存储地址有限制。通常,将变量的第一个地址设置为特定数字N的倍数,即内存对齐。为什么要内存对齐?理论上计算机对于任何变量的访问都可以从任意位置开始,然而实际上系统会对这些变量的存放地址有限制,通常将变量首地址设为某个数N的倍数,这就是内存对齐。硬件平台限制,内存以字节为单位,不同硬件平台不一定支持任何内存地址...
2020-09-03 18:08:56 1.7w浏览 0点赞 0回复 0收藏
C++11对模板进行了一些详细的改进:右尖括号模板别名函数模板的默认模板参数模板的右尖括号C++11之前是不允许两个右尖括号出现的,会被认为是右移操作符,所以需要中间加个空格进行分割,避免发生编译错误。intmain(){std::vector<std::vector<int>>a;errorstd::vector<std::vector<int>>b;ok}这个我之前都不知道,我开始学编程的时候就已经是C++11的时代啦。模板的别名C++11引入了using,可以轻松的定义别名,而不是使用繁琐的...
2020-09-03 18:08:50 1.2w浏览 0点赞 0回复 0收藏
如果您阅读了我的上一篇文章,您将知道程序构建可能需要经历四个过程:预处理,编译,汇编和链接。这里我们主要介绍链接的过程。链接链的是什么?链接链的就是目标文件,什么是目标文件?目标文件就是源代码编译后但未进行链接的那些中间文件,如Linux下的.o,它和可执行文件的内容和结构很相似,格式几乎是一样的,可以看成是同一种类型的文件,Linux下统称为ELF文件,这里介绍下ELF文件标准:可重定位文件:Linux中的.o,这类...
2020-09-03 18:08:43 1.1w浏览 1点赞 0回复 1收藏
在开发过程中,我经常遇到使用线程池的需求,但是我发现C++中线程池的第三方库相对较少,因此我计划自己构建一个。链接地址文章附在最后。目前仅是第一个版本,可能存在很多问题,希望您能纠正我的问题。线程池都需要什么功能个人认为线程池需要支持以下几个基本功能核心线程数(corethreads):线程池中拥有的最少线程个数,初始化时就会创建好的线程,常驻于线程池。最大线程个数(maxthreads):线程池中拥有的最大线程个数,max...
2020-09-03 18:08:35 1.5w浏览 0点赞 0回复 0收藏
开发客户端时,我需要使用数据库,因此我选择了一个轻量级的sqlite数据库进行研究,今天,我将与您分享我总结的SQLite使用文档。源码下载wgethttp:www.sqlite.org2017sqliteautoconf3160200.tar.gztarxvzfsqliteautoconf3160200.tar.gz交叉编译.configurehostarmhimix200linuxprefixhomezjucadwangzhiqiangtoolDirsqliteautoconf3160200libsmakemakeinstall按顺序执行上述命令后sqlite的链接库和头文件等就会出现在prefix目录下...
2020-09-03 18:08:28 1.4w浏览 0点赞 0回复 0收藏
Rust的第一个稳定版本于2015年发布。与1980年代左右诞生的CC++相比,它是后起之秀。作为系统级编程语言,Rust的设计标准是安全性,速度和并发性。当然,CC++可能对此并不赞同!那么当Rust遇上CC++会在哪些方面进行讨论呢?我们先从数组操作谈起。环境:CentOS8(Kernel4.18.0),gcc8.3.1,g++8.3.1,rustc1.43.1。cinclude<stdio.h>intmain(){inta[]{1,2,3,4,5};intindex10;intelementa[index];printf("Thevalueofelementis:%d...
2020-09-03 18:08:22 1.4w浏览 1点赞 0回复 0收藏