6 学益得智能硬件

尚未进行身份认证

我要认证

关注我,98%的人爱上了写代码!

等级
TA的排名 11w+

同样是点亮LED,选择单片机还是Linux?

经常有小伙伴问我,做某某某项目到底选择51单片机,还是上Linux操作系统。这个问题对于初学者很难抉择,需要综合考虑项目的性能、功耗、稳定性等等。选择单片机,开发简单,但是性能一般;选择Linux,开发更复杂,但是性能跟的上。下面通过三个点灯案例,跟大家分享一下单片机和Linux的区别。单片机点亮LED硬件平台: 51单片机开发板软件平台: keil、STC烧录工具技术要求: 能看懂简单的电路图;掌握C语言基本语法。难度系数: 极低单片机点灯是所有初学者都会做的一件事情,步骤极其简单:看.

2020-08-26 11:23:32

史上最简单的图像识别-百度AI开放平台

提到图像识别,一般都会想到人工智能。虽然现在人工智能还在发展阶段,但是有些技术已经成熟,比如图像识别、语音识别。百度早在2015年之前就已经推出了AI开放平台,涵盖了语音识别、图像处理、视频技术等等。借助第三方平台,AI也可以变的很简单。一、注册百度账号百度搜索「百度AI」,第一个就是。点击右上角「控制台」。用任意一个百度账号都可以登陆。使用百度AI开放平台,需要先创建应用。选择「图像识别」,创建一个新的应用。应用名车和应用描述随便填写。完成后会得到一个API KEY和SECRET KEY,这.

2020-08-14 21:56:52

mini2440+阿里云+Qt/android 打造智能音箱

华为在2018年10月26日发布了一款音箱,AI智能音箱,载了来自猎户星空的语音合成技术。用户通过语音或者华为智能家居App,可轻松控制音箱的播放、暂停等等操作。以华为AI智能音箱为背景,我们自己动手制作一个智能音箱,实现功能如下:音箱本身可以播放音乐,通过按键切换歌曲、暂停继续、调节音量; PC上通过Qt程序可以远程控制音箱的播放,实现和按键相同的功能; 手机端开发Android APP,功能和Qt一样; Qt和Android增加语音识别模块,能识别基本的播放指令。硬件平台m..

2020-08-07 12:16:19

【mjpg-streamer】编写客户端程序,实现视频数据采集

mjpg-streamermjpg-streamer是一个开源的视频服务器,通过摄像头采集数据,放到内存中,再通过socket把视频数据发送出去,最终在web端显示视频数据。mjpg-streamer把采集数据、socket发送数据封装成了两个动态库,一个称作输入插件,一个称作输出插件。使用mjpg-streamer的优势如果我们想做一些跟视频传输相关的项目,完全可以利用mjpg-streamer作为视频数据来源,而不用再关心底层驱动如何实现,驱动视频数据如何读取。mjpg-streamer自带压缩算

2020-08-05 15:07:49

【嵌入式修炼之路】-Linux基础之常用工具

学益得线上课堂从基础学习嵌入式玩转智能硬件、斩获高薪offer在正式开始嵌入式学习之前,我们有必要搞懂几个工具,比如编辑器vim、编译器gcc、调试器gdb、工程管理器Makefile,今天就来给大家介绍下vim和gcc,这两个搞不懂,代码都写不了。vim以前的版本叫做vi,两者在配置上略微有区别,操作系统默认都会安装vi,不一定安装vim,所有如果环境里面没有的可以现安装一下。一...

2020-03-30 12:08:11

【嵌入式修炼之路】-Linux基础之常用命令

学习Linux操作系统,第一步当然是学习命令。就好比我们拿到一台Windows电脑一样,先得学会使用鼠标,离开了鼠标,啥也干不成。Linux命令有很多,而且可以说是无穷多个,因为工具实在太多了,每天都会有新的工具出现。就像Windows一样,我们安装一个软件,都会产生一个桌面图标,双击卓妙图标就可以使用。但是Linux里面一般不会提供这种桌面快捷方式,因为很多Linux都没有桌面的,所以我们就得...

2020-03-27 14:52:49

【嵌入式修炼之路】-Linux基础之目录结构

学益得线上课堂从基础学习嵌入式玩转智能硬件、斩获高薪offerLinux和Windows一样,都有分区这个说法,只不过在Windows下面,我们能明确的看到不同的盘符,Linux里面虽然存在,但是看不到。根目录目录是一种很形象的树形结构,每个目录下面都有很多文件、文件夹,可以理解为树枝。如果沿着树枝一直往下寻找的话,最终会找到树根。目录也是一样,如果不停的往上翻(退出目录),最终会退...

2020-03-25 12:22:53

【嵌入式修炼之路】-剖析嵌入式学习路线

学益得线上课堂从基础学习嵌入式开发玩转智能硬件、斩获高薪offerLinux基础作为学习嵌入式的第一步,主要就是搭建嵌入式开发环境。安装虚拟机或者购买云服务器都可以。有了Linux操作系统,下面就是要学会使用Linux,其实就是学习一些常用命令以及如何在Linux下面写代码。推荐书籍C语言C语言是嵌入式开发必备语言,不管是Linux,还是单片机、STM32,都对C语言有极高的要...

2020-03-25 10:35:45

嵌入式的下一个发展方向,边缘计算

什么是【边缘计算】,这个概念还得从【云计算】说起。云计算云计算 (cloud computing)指的是通过网络“云”将巨大的数据计算处理程序分解成无数个小程序,然后,通过多部服务器组成的系统进行处理和分析这些小程序得到结果并返回给用户。通过这项技术,可以在很短的时间内(几秒钟)完成对数以万计的数据的处理,从而达到强大的网络服务。通俗点讲,好比一个项目,以前都是一个人在做。但是随着项目越来...

2020-03-22 19:22:16

【排序】--C语言实现快速排序

快速排序首先简单描述一下快速排序的过程。比如有一组数据:第一步以6为基数,我们要筛选出,比6大的数字,放在6的后面,比6小的数字,放在6的前面。所以需要两个指针(下标)。从y开始,由于【2 < 6】,所以需要用2来覆盖6(不用担心6被覆盖,6已经被记下来了)。同时x++。接下来从x开始。由于【4 < 6】,就应该放在左边,所以不要移动元素4。继续x++。由于【7 &gt...

2020-03-19 15:30:45

【Linux实用工具分享】-- crontab

分享一道网易的笔试题linux系统中有如下cron任务:20,40 */3 * * 1 sh test.sh下面描述正确的是:A 每周一每3小时,20分,40分,运行test.shB 每月1号每3小时,20分,40分,运行test.shC 每周一每3小时,每20分钟运行test.shD 每月1号每3小时,每20分钟运行test.shcron是什么有的时候我们可能需要在Linux里...

2020-03-18 11:01:52

【排序】--C语言实现简单插入排序

简单插入排序先把第一个元素当做一个数组,因为如果数组只有一个元素的话,那么它肯定是个有序的序列。然后把第二个元素插入到前面有序的序列中,以此类推。把元素插入有序的序列,先从有序序列的最后一个元素开始比较,如果条件成立(大于或者小于),则元素向后移动。代码#include <stdio.h>#include <stdlib.h>#include <time.h...

2020-03-16 23:00:03

【二叉树】--C语言实现创建二叉搜索树

二叉搜索树创建二叉搜索树的过程很简单,第一个数字作为根,第二个数字,如果比根大,则作为根的右子树,如果比根小,则作为根的左子树。一次类推。对一棵二叉搜索树进行中序遍历,可以的到一个有序的序列。代码#include <stdio.h>#include <stdlib.h>struct Node{ int data; struct Node *le...

2020-03-16 15:26:56

如何在Linux下检测程序是否存在内存泄漏?

C语言是嵌入式开发中永远回避不了的语言,不管是操作系统还是裸机开发,无处不体现着C语言的高效。 C语言可以直接操作内存,有着完善的内存管理机制,用好了可以削铁如泥,用不好自断一臂!不管是C还是C++,很多同学都不可避免犯内存泄漏的错误。因为我们平时写的都是些小程序,就算申请的内存没有释放,也不会影响程序结果,所以很少会关注内存泄漏的问题。但是如果把这个问题放在商用的项目中,就会是一个不小的隐患。...

2020-03-09 18:38:41

【排序】--C语言实现基数排序

基数排序基数排序适合整理较大的数据。先根据个位数排序,再根据十位数排序,以此类推,最终得到一组有序的数据。代码复杂的地方是如果收集数据。先定义十个“桶”,将个位按照具体的数字放在对应的“桶”内。收集的过程需要重新申请一块空间,从原始序列的最后一个数字开始,找出它在新序列中的位置,循环完成收集。代码#include <stdio.h>#include <stdlib.h&g...

2020-03-07 21:47:54

【排序】--C语言实现归并排序

归并排序归并排序将两个有序的序列合并成一个有序的序列。如何得到两个有序的序列,把数据不停的拆分,拆到每个序列只有一个数据。所以归并排序用到了递归思想。代码#include <stdio.h>#include <stdlib.h>//两个有序的序列合并成一个有序的序列void Merge(int *a, int start, int mid, int end)...

2020-03-07 13:24:11

【排序】--C语言实现堆排序

堆排序堆排序使用【大顶堆】或者【小顶堆】实现。分为两步:构建堆和调整堆,主要时间都花在了构建堆上。堆排序效率比较高,适用于数据量比较大的场景。代码#include <stdio.h>/*函数描述:构建大顶堆函数参数:数组 根节点的下标 最后一个结点的下标*/void AdjustMaxHeap(int *a, int root, int last){ int ...

2020-03-07 13:14:54

【排序】--C语言实现希尔排序

希尔排序希尔排序属于一种插入排序,如果搞懂了直接插入排序,你会发现希尔排序就是多了一层循环。希尔排序比直接插入排序效率高的多,直接插入排序一次只能移动一个位置,但是希尔排序因为多了【增量】的概念,一次可以移动多个位置。把一组无序的数据变得基本有序后最后再使用直接插入排序。代码#include <stdio.h>void InsertSort(int *a, int lengt...

2020-03-07 13:04:26

【小米笔试题】密码破译-C语言实现

题目我们来做一个简单的密码破译游戏。破译的规则很简单,将数字转换为字母,1转化为a,2转化为b,依此类推,26转化为z。现在输入的密码是一串数字,输出的破译结果是该数字串通过转换规则所能产生的所有字符串。输入:多行数据,每行为一个数字串。输出:多行数据,没行对应输出通过数字串破译得到的所有字符串,并按照字符串顺序排列,字符串之间用单个空格分隔,每行开头和结尾不允许有多余的空格。样例输...

2020-03-07 11:40:19

C++ Stack实现四则运算

calculator.cpp#include <iostream>#include <stack>using namespace std;int Priority(char ch){ switch(ch) { case '(': return 3; case '*': case '/': return 2; case '+':...

2020-03-07 11:04:01

查看更多

勋章 我的勋章
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 阅读者勋章Lv2
    阅读者勋章Lv2
    授予在CSDN APP累计阅读博文达到7天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 分享小兵
    分享小兵
    成功上传3个资源即可获取