自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 收藏
  • 关注

原创 Linux 终端(TTY)

TTY 是 Teletype 或 Teletypewriter 的缩写,原来是指电传打字机,后来这种设备逐渐键盘和显示器取代。不管是电传打字机还是键盘显示器,都是作为计算机的终端设备存在的,所以 TTY 也泛指计算机的终端(terminal)设备。为了支持这些 TTY 设备,Linux 实现了一个叫做 TTY 的子系统。所以 TTY 既指终端,也指 Linux 的 TTY 子系统,当然 TTY 还有更丰富(混乱)的含义,本文试图把它们解释清楚。本文中演示部分使用的环境为 ubuntu 18.04。硬件终端

2020-12-16 16:53:03 397

原创 Python单元测试unittest

Python中有一个自带的单元测试框架是unittest模块,用它来做单元测试,它里面封装好了一些校验返回的结果方法和一些用例执行前的初始化操作。在说unittest之前,先说几个概念:TestCase 也就是测试用例TestSuite 多个测试用例集合在一起,就是TestSuiteTestLoader是用来加载TestCase到TestSuite中的TestRunner是来执行测试用例的,测试的结果会保存到TestResult实例中,包括运行了多少测试用例,成功了多少,失败了多少等信息下面写一

2020-12-14 16:59:00 241

原创 20个常用Linux命令

今天总结几个非常常用的Linux命令,其中有几个在面试中很可能问相关命令的原理,比如后台运行命令。希望对大家有所帮助,最好自己去尝试在Linux操作系统中实践一下。1 查看目录以及权限在windows中,使用dir查看当前目录中文件。在Linux中使用ls(list)查看当前目录文件。windows中的dir,如下图所示在Linux中,通常使用ls -l列出,其中可以查看文件属性,所属用户组等较为详细的信息。下面详细解释从左到右每一列是什么意思ls -l第一列第一个字段:文件类型,后面9个字符是

2020-11-23 13:47:58 236

原创 使用timeit测试Python函数的性能

timeit是Python标准库内置的小工具,可以快速测试小段代码的性能。认识timeittimeit 函数:timeit.timeit(stmt, setup,timer, number)参数说明:stmt: statement的缩写,你要测试的代码或者语句,纯文本,默认值是 “pass”setup: 在运行stmt前的配置语句,纯文本,默认值也是 “pass”timer: 计时器,一般忽略这个参数number: stmt执行的次数,默认是1000000,一百万repeat 函数:t

2020-11-19 15:45:10 221

原创 python中count函数的用法

Python count()方法描述Python count() 方法用于统计字符串里某个字符出现的次数。可选参数为在字符串搜索的开始与结束位置。count()方法语法:str.count(sub, start=0,end=len(string))参数sub – 搜索的子字符串start – 字符串开始搜索的位置。默认为第一个字符,第一个字符索引值为0。end – 字符串中结束搜索的位置。字符中第一个字符的索引为 0。默认为字符串的最后一个位置。返回值该方法返回子字符串在字符串中出现

2020-11-06 16:49:29 18140

原创 python的五个特点

python是一种解释性、交互式、面向对象的跨平的语言。近年来,热持续上涨,人才需求量也祝年攀升,备受程序员的追捧。那么python语言的特点有哪些呢?(1)简单易学Python是一种代表简单主义思想的语言。阅读一个良好的 Python程序就感觉像是在读英语段落一样,尽管这个英语段落的语法要求非常严格。 Python最大的优点之一是具有伪代码的本质,它使我们在开发 Python程序时,专注的是解决问题,而不是搞明白语言本身。(2)面向对象Python既支持面向过程编程,也支持面向对象编程。在“面向

2020-11-03 16:54:35 7429

原创 python是面向对象还是面向过程的

Python虽然是解释型语言,但从设计之初就已经是一门面向对象的语言,对于Python来说一切皆为对象。正因为如此,在Python中创建一个类和对象是很容易的,当然如果习惯面向过程或者函数的写法也是可以的,Python并不做硬性的限制。Python的面向对象特征如下:封装面向对象程序设计中的术语对象(Object)基本上可以看做数据(特性)以及由一系列可以存取、操作这些数据的方法所组成的集合。传统意义上的“程序= 数据结构+算法”被封装”掩盖“并简化为“程序=对象+消息”。对象是类的实例,类的抽象则需

2020-09-30 14:24:50 1232

原创 c语言中逗号运算符和逗号表达式

C语言提供一种特殊的运算符——逗号运算符。用它将两个表达式连接起来。如:3+5,6+8称为逗号表达式,又称为“顺序求值运算符”。逗号表达式的一般形式为表达式1,表达式2逗号表达式的求解过程是:先求解表达式1,再求解表达式2。整个逗号表达式的值是表达式2的值。例如,上面的逗号表达式“3+5,6+8”的值为14。又如,逗号表达式  a=35,a4对此表达式的求解,读者可能会有两种不同的理解:一种认为“35,a4” 是一个逗号表达式,先求出此逗号表达式的值, 如果a的原值为3,则逗号表达式的值为12,

2020-09-18 17:10:37 468

原创 2020年适合学习的编程语言 如何系统学习python

首先告诉你的是,零基础学习开始系统学习Python肯定难,Python的专业程度本身就不简单,学习这事本来就是一件非常煎熬的事情,人都不愿意学习,可是没办法,为了生存掌握一个技能,你必须学,如果你认真的对待,你就找不到高薪水的工作,所以首先学习Python意志,坚持非常重要,很多人放弃的原因根本就是缺乏这些素质。零基础学习Python必须明确的几点:  1.明确你将来是做什么工作的,需要掌握哪些技能,很多人连这个就不知道就盲目的学,你首先清楚,现在公司需要什么人才,你应该奔着什么目标努力。Python的

2020-09-17 16:50:33 116

原创 c语言详解sizeof

一、sizeof的概念sizeof是C语言的一种单目操作符,如C语言的其他操作符++、–等。它并不是函数。sizeof操作符以字节形式给出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小由操作数的类型决定。二、sizeof的使用方法1、用于数据类型sizeof使用形式: sizeof(type)  数据类型必须用括号括住: sizeof(int)2、用于变量sizeof使用形式: sizeof(var_name) 或 sizeof var_name 

2020-09-11 13:52:59 1125

原创 函数指针和指针函数

一、函数指针函数指针是指向函数的指针变量。 因而“函数指针”本身首先应是指针变量,只不过该指针变量指向函数。这正如用指针变量可指向整型变量、字符型、数组一样,这里是指向函数。如前所述,C在编译时,每一个函数都有一个入口地址,该入口地址就是函数指针所指向的地址。有了指向函数的指针变量后,可用该指针变量调用函数,就如同用指针变量可引用其他类型变量一样,在这些概念上是一致的。函数指针有两个用途:调用函数和做函数的参数。函数指针的声明方法为:函数类型 (标志符 指针变量名) (形参列表);注1:“函数类型”

2020-09-03 11:43:21 255

原创 C语言中.h和.c文件解析(很精彩)

简单的说其实要理解C文件与头文件(即.h)有什么不同之处,首先需要弄明白编译器的工作过程,一般说来编译器会做以下几个过程:  1.预处理阶段  2.词法与语法分析阶段  3.编译阶段,首先编译成纯汇编语句,再将之汇编成跟CPU相关的二进制码,生成各个目标文件 (.obj文件)  4.连接阶段,将各个目标文件中的各段代码进行绝对地址定位,生成跟特定平台相关的可执行文件,当然,最后还可以用objcopy生成纯二进制码,也就是去掉了文件格式信息。(生成.exe文件)  编译器在编译时是以C文件为单位进行

2020-09-02 16:05:42 387

原创 优化嵌入式软件的7个技巧

优化嵌入式软件的特性包括系统时序,代码大小,RAM使用和能耗等。虽然优化每个特性通常都需要自己的方法和技术,但开发人员在优化嵌入式软件时可以遵循几个一般性提示。始终创建比较基线首先创建一个比较优化结果的基线是显而易见的,但是我们也能发现很多团队是匆忙地直接进入优化而没有任何基线。基线测量很重要,因为每个优化周期的回报都会减少。例如,优化能量的第一次通过可以导致20%的改善。第二10%,然后是5%,依此类推。开发人员需要能够看到这种趋势,并根据他们的时间输入量化他们在系统中看到的改进。设置优化目标每次

2020-08-28 13:47:57 602 1

原创 怎样写出高效的嵌入式C程序

编写高效简洁的C语言代码,是许多软件工程师追求的目标。本文就工作中的一些体会和经验做相关的阐述,不对的地方请各位指教。第 1 招:以空间换时间计算机程序中最大的矛盾是空间和时间的矛盾,那么从这个角度出发逆向思维来考虑程序的效率问题,我们就有了解决问题的第1招–以空间换时间。例如:字符串的赋值。从上面的例子可以看出,A和 B的效率是不能比的。在同样的存储空间下,B直接使用指针就可以操作了,而 A 需要调用两个字符函数才能完成。B的缺点在于灵活性没有 A好。在需要频繁更改一个字符串内容的时候,A 具有更

2020-08-26 14:38:10 316

原创 Python算法基础(二)

二、python中的常见算法冒泡排序效率:O(n2)原理:比较相邻的元素,如果第一个比第二个大,就交换他们两个;对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。做完以后,最后的元素会是最大的数,这里可以理解为走了一趟;针对所有的元素重复以上的步骤,除了最后一个;持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较,最后数列就是从大到小一次排列;  demo:```cppdef bubble_sort(data): """ 冒泡排序 :

2020-08-24 16:54:05 180

原创 Python算法基础

一、简介定义和特征定义:算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。一个算法应该具有以下五个重要的特征:有穷性:算法的有穷性是指算法必须能在执行有限个步骤之后终止;确切性:算

2020-08-24 16:34:22 208

原创 嵌入式工程师的发展路线

最近遇到很多处于迷茫中的新手,在纠结要不要去学嵌入式,主要问题在于嵌入式的门槛非常高,经验少、或者非电子专业投身嵌入式行业能否发展下去。现在嵌入式开发行业的确发展很好,大多数从业者都是科班出身,但我们也看到很多非科班的人分享了自己的从业过程,也许起初知识不如科班的多,但他们经过持续数年学习实践,也成为了行业中的大咖。其实学习技术更多的是一种执着与刻苦,非科班无非要下更多的功夫。嵌入式可以简单分为硬件与软件,然而其中的知识体系却是异常的庞大,这也是众多新手望而却步的一个原因,那究竟要如何才能成为一名嵌入式大

2020-08-20 14:38:02 729

原创 嵌入式学习方法 关于ARM+linux

由于很多人总问这个问题,所以这里做一个总结文档供大家参考。这里必须先说明,以下的步骤都是针对Linux系统的,并不面向WinCE。也许你会注意到,现在做嵌入式的人中,做linux研究的人远比做WinCE的人多,很多产家提供的资料也是以linux为主。我一直很难理解,其实WinCE的界面比linux的界面好看多了,使用起来也很方便,更为重要的是,WinCE的开发和Windows下的开发基本一样,学起来简单得多,但是学linux或者使用linux做嵌入式的人就是远比WinCE多。在和很多工作的人交流时我了解到,

2020-08-19 16:54:36 243

原创 单片机入门篇

1、学好电子技术基础知识,如电路基础、模拟电路、数字电路和微机原理。这几门课程都是弱电类专业的必修课程,学会这些后能保证你看懂单片机电路、知道电路的设计思路和工作原理;2、学习计算机硬件知识,如计算机的简单组成原理,要知道CPU、总线等的一些基本概念;3、学习C语言的编程知识,了解结构化语言的程序设计方法,懂一些常用的算法,比如冒泡排序、中值算法等;以上是基础,有了这些基础,学习单片机就只要花几周的时间就能上手。但学习单片机时,主要从单片机的寄存器开始,其中特殊功能寄存器是重点,学会之后,就可以学习单

2020-08-19 15:21:56 295

原创 STM32笔记记录

串口记录:STM32有好几个串口。比如说STM32F103ZET6有5个串口,串口1的引脚对应的IO为PA9,PA10.PA9,PA10默认功能是GPIO,所以当PA9,PA10引脚作为串口1的TX,RX引脚使用的时候,那就是端口复用。复用端口初始化有几个步骤:1) GPIO端口时钟使能。要使用到端口复用,当然要使能端口的时钟了。 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);2) 复用的外设时钟使能。比如你要将端口PA9,PA10复用为串

2020-08-17 14:55:05 298

原创 嵌入式中断服务函数的一些特点

中断是嵌入式系统中重要的组成部分,但是在标准C中不包含中断。许多编译开发商在标准C上增加了对中断的支持,提供新的关键字用于标示中断服务程序 (ISR),类似于__interrupt、#program interrupt等。当一个函数被定义为ISR的时候,编译器会自动为该函数增加中断服务程序所需要的中断现场入栈和出栈代码。  中断服务程序需要满足如下要求:  (1)不能返回值;  (2)不能向ISR传递参数;  (3) ISR应该尽可能的短小精悍;  (4) printf(char * lpForm

2020-08-13 11:11:07 263

原创 STM32 FSMC学习笔记

FSMC全称“静态存储器控制器”。使用FSMC控制器后,可以把FSMC提供的FSMC_A[25:0]作为地址线,而把FSMC提供的FSMC_D[15:0]作为数据总线。(1)当存储数据设为8位时,(FSMC_NANDInitStructure.FSMC_MemoryDataWidth = FSMC_MemoryDataWidth_8b)地址各位对应FSMC_A[25:0],数据位对应FSMC_D[7:0](2)当存储数据设为16位时,(FSMC_NANDInitStructure.FSMC_Mem

2020-08-12 10:54:36 234

原创 Python教程学习之字典知识概述

作为一门对新手友好、就业前景广阔的编程语言,Python一直深受人们青睐。想要学好Python需要从入门到进阶一点一点掌握,而繁杂的理论知识点让不少人伤脑筋。事实上,只要你理清知识关系,掌握其用法并尝试动手操作,就可以慢慢掌握。接下来小编就给大家分享字典的相关知识。目前,在Python中只内置了一种映射类型:字典。除去那些不能哈希的类型的值(例如列表,字典和其他通过值而不是id比较的可变类型的值),其它值几乎都可用作字典的键。用于键的数字类型遵循数字比较的一般规则:如果两个数字键比较相等(比如1和1.0)

2020-08-12 10:15:41 120

原创 嵌入式C语言阶段性总结

嵌入式C语言阶段性总结最近做完了聊天室的项目,C语言基础的学习阶段也算是告一段落了,但我对C语言还是只是一个入门,就像一个工具,我现在只是了解、会初步使用它了,但并没有达到如臂挥使的地步,今后还需要对C语言进行更深入的学习,今天我就讲一下我个人学到现在对C语言的认识,自己的理解,若有错误,还望指出,不甚感激。首先是C语言整体的脉络,C语言包括哪些东西?哪些部分重要,哪些部分需要着重理解?这是我经常问自己的两个问题。首先,C语言有哪些东西?C语言的东西其实并不是太多:1、最基本的一些数据类型及其所占的

2020-08-11 10:13:01 178

原创 【STM32】STM32 GPIO模式理解

stm32的GPIO的配置模式有好几种,包括:模拟输入;浮空输入;上拉输入;下拉输入;开漏输出;推挽输出;复用开漏输出;复用推挽输出如图是GPIO的结构原理图:1.模拟输入从上图我们可以看到,我觉得模拟输入最重要的一点就是,他不经过输入数据寄存器,所以我们无法通过读取输入数据寄存器来获取模拟输入的值,我觉得这一点也是很好理解的,因为输入数据寄存器中存放的不是0就是1,而模拟输入信号不符合这一要求,所以自然不能放进输入数据寄存器。该输入模式,使我们可

2020-08-06 11:14:55 467

原创 嵌入式开发需要学习哪些东西

刚刚读到这篇文章,对于刚入门嵌入式来说挺有用的,献给向我一样正在迷茫,苦于没有头绪,没人指引的学习朋友们。主要讨论下嵌入式技术学习方法,主要是针对嵌入式软件。嵌入式技术是一门边缘科学(又称交叉科学),涉及的内容非常广泛,前几年很多学校,包括一流的大学都在讨论要不要设置这个专业。不是说设置这个专业本身有什么问题,而是因为课程设置不容易安排,如果偏硬件的话那就成了电子工程一类的专业,如果偏软的话就成了计算机专业。正因为如此,很多人在学习嵌入式技术的时候,不知道从哪里方面入手,因为知识体系非常庞杂,如果没有

2020-08-04 15:50:50 2459

原创 嵌入式开发中常见3个的C语言技巧

今天我来说几个在嵌入式开发中常用的C语言技巧吧。也许你曾经用过,也许你只是见到过但是没有深入理解。那么今天好好补充下吧_1.指向函数的指针指针不光能指向变量、字符串、数组,还能够指向函数。在C语言中允许将函数的入口地址赋值给指针。这样就可以通过指针来访问函数。还可以把函数指针当成参数来传递。函数指针可以简化代码,减少修改代码时的工作量。通过接下来的讲解大家会体会到这一点的。/*函数指针简单讲解 *通过指向函数的指 *针调用比较两个数 *大小的程序 */#include <iostr

2020-08-04 14:12:17 203

原创 Python在公司需要运用到哪些?

随着人工智能的火热,Python语言从去年开始就借助人工智能的热度持续上升,目前已经居于第一的位置。在同类开发语言中拥有广大群体的要属这四门语言了:Python、C、Java和C++,而且他们的使用总量都是非常相近的。事实上,很多公司在招聘开发语言的时候C语言还是比Python靠前,但Python语言又是人工智能时代当下必不可少的语言。现在源妹就来理一理在日常生活中,Python在公司需要运用到哪些:1、验证算法:就是对公司一些常见计算法或者公式的验证,用代码方式把公式简化。2、开发快速:这个是很多程

2020-08-03 17:22:35 615

原创 “新基建”如火如荼,物联网链接万物

近年,物联网(Internet of Things , IoT )这个词被科技圈越来越多的人所提及。它不仅在改变我们的生活方式,而且也在改变我们的工作方式。 它的用途广泛,在各个行业都具有深远的影响。而其背后的万亿级市场,更是令无数人趋之若鹜、试图闯入的迦南之地。也正因为如此,物联网其被称为继计算机、互联网之后世界信息产业发展的第三次浪潮。据前瞻产业研究院发布《2019年物联网行业市场研究报告》,可以对物联网行业的发展环境、现状、产业链、前景及趋势窥见一斑。数据表明,2019-2022年,物联网行业复

2020-07-31 15:23:58 673 1

原创 20个常用Linux命令

今天总结几个非常常用的Linux命令,其中有几个在面试中很可能问相关命令的原理,比如后台运行命令。希望对大家有所帮助,最好自己去尝试在Linux操作系统中实践一下。1 查看目录以及权限在windows中,使用dir查看当前目录中文件。在Linux中使用ls(list)查看当前目录文件。windows中的dir,如下图所示在Linux中,通常使用ls -l列出,其中可以查看文件属性,所属用户组等较为详细的信息。下面详细解释从左到右每一列是什么意思ls -l第一列第一个字段:文件类型,后面9个字符是

2020-07-30 16:01:35 145

原创 STM32嵌入式入门必看之文章-介绍非常详细!(学习STM32)

为什么要写这篇文章呢?这是一篇关于嵌入式入门的文章,因为我在进入嵌入式这个领域之前,也是遇到过非常多非常多的困难,所以呢,希望写下这篇文章,让大家看看少走弯路。首先,我打算先列举一下大家问得最多的几个问题,然后我们一起由问题切入进行一些讨论。问题1:我是学单片机好还是直接学STM32好???问题2:STM32如何才能快速入门?问题3:为什么是STM32呢?为什么不是ARM9,ARM11呢?下面我将逐个答复首先问题1:我是单片机好还是直接学STM32好呢?答:首先我们谈下目的,你学习的最终目的是

2020-07-30 14:40:13 775 1

原创 RFID技术在物联网中有哪些应用

如果要说短距离的物联网网络技术,估计大家最熟悉的还是蓝牙。但实际上,除了蓝牙,RFID无线射频识别技术也早已深入到了我们的日常生活中,甚至每天都在使用,比如我们寸步难离的二代身份证。  RFID  RFID(Radio Frequency Identification,射频识别)是一种无线通信技术,可通过射频信号自动识别目标对象并获取相关数据,是物联网中常用的短距离无线通信技术之一。  RFID电子标签有着一整套完整的调制器、编码器、存储器、控制器和天线,根据应用需求,可以选择内置电池配合使用。对比普

2020-07-29 15:17:57 4178

原创 什么是嵌入式?

什么是嵌入式?嵌入式到底是什么的?也许很多人不了解,但我宁愿相信这一部分人都不是做技术开发的。如果你还非得要说是。那就该充充电了。那究竟什么是嵌入式呢?嵌入式是一个操作系统,美国人定义为用于控制、监视或者辅助操作机器的设备和装置。但国人普遍认为它是以应用为中心,以计算机技术为基础、软硬件可裁切,是一个专用的计算机系统。概念性的解释始终无法深入脑海,因此必须拿案例来说明一下,什么是嵌入式,或者说是嵌入式系统。通常是一个控制程序存储在ROM中的嵌入式处理器控制板。如比较贴近生活的嵌入式产品,智能手机、智能冰箱

2020-07-29 14:29:14 4687

原创 嵌入式系统开发学习步骤(Linux高级编程学习顺序)

1、Linux 基础安装Linux操作系统Linux文件系统Linux常用命令Linux启动过程详解熟悉Linux服务能够独立安装Linux操作系统能够熟练使用Linux系统的基本命令认识Linux系统的常用服务安装Linux操作系统Linux基本命令实践设置Linux环境变量定制Linux的服务 Shell 编程基础使用vi编辑文件使用Emacs编辑文件使用其他编辑器2、Shell 编程基础Shell简介认识后台程序Bash编程熟悉Linux系统下的编辑环境熟悉Linux

2020-07-28 15:22:58 270

原创 python字符串操作

在python有各种各样的string操作函数。在历史上string类在python中经历了一段轮回的历史。在最开始的时候,python有一个专门的string的module,要使用string的方法要先import,但后来由于众多的python使用者的建议,从python2.0开始, string方法改为用S.method()的形式调用,只要S是一个字符串对象就可以这样使用,而不用import。同时为了保持向后兼容,现在的 python中仍然保留了一个string的module,其中定义的方法与S.met

2020-07-27 15:52:26 70

原创 ARM-汇编指令集(总结)

ARM汇编指令集指令、伪指令(汇编)指令: 是机器码的助记符,经过汇编器编译后,由CPU执行。(汇编)伪指令:用来指导指令执行,是汇编器的产物,最终不会生成机器码。有两种不同风格的ARM指令1).ARM官方的ARM汇编风格:指令一般用大写,Windows中的IDE开发环境。2).GNU风格的ARM汇编:指令一般用小写。ARM汇编的特点LDR/STR架构1).ARM采用RISC架构,CPU本身不能直接读取内存,而需要先将内存中内容加载入CPU中通用寄存器中才能被CPU处理。2).ldr

2020-07-27 10:58:42 290

原创 嵌入式linux内核和根目录制作

系统组成:Bootloader, Boot parameters, Kernel, Root filesystem嵌入式linux系统有linux内核与根文件系统两部分构成,两者缺一不可。内核制作:1:清除原有配置与中间文件X86:make distcleanarm:make distclean2 配置内核(copy其他类似的配置文件为.config)x86:make menuconfigarm:make menuconfig ARCH=arm /* nfs与ramdisk启动的区别 */

2020-07-24 14:34:52 171

原创 STM32的串口通信

在基础实验成功的基础上,对串口的调试方法进行实践。硬件代码顺利完成之后,对日后调试需要用到的printf重定义进行调试,固定在自己的库函数中。b) 初始化函数定义:void USART_Configuration(void); //定义串口初始化函数c) 初始化函数调用:void UART_Configuration(void); //串口初始化函数调用初始化代码:void USART_Configuration(void) //串口初

2020-07-22 13:14:54 213

原创 ARM 常用汇编指令

ARM 汇编程序的框架结构.section .data <初始化的数据>.section.bss <未初始化的数据>.section .text.global _start_start: <汇编代码>注意: 一般是将上面结构进行简化.text.global _start_start: <汇编代码>寄存器操作指令:算术和逻辑指令:MOV :用于将一个寄存器或被移位寄存器或一个立即数移动到目的寄存器MOV r1

2020-07-21 14:44:23 225

原创 Python爬虫原理

前言简单来说互联网是由一个个站点和网络设备组成的大网,我们通过浏览器访问站点,站点把HTML、JS、CSS代码返回给浏览器,这些代码经过浏览器解析、渲染,将丰富多彩的网页呈现我们眼前;一、爬虫是什么?如果我们把互联网比作一张大的蜘蛛网,数据便是存放于蜘蛛网的各个节点,而爬虫就是一只小蜘蛛,沿着网络抓取自己的猎物(数据)爬虫指的是:向网站发起请求,获取资源后分析并提取有用数据的程序;从技术层面来说就是 通过程序模拟浏览器请求站点的行为,把站点返回的HTML代码/JSON数据/二进制数据(图片、视频)

2020-07-16 14:37:37 239

空空如也

空空如也

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

TA关注的人

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