自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 资源 (13)
  • 问答 (1)
  • 收藏
  • 关注

原创 程序人生方法(初成)——持续更改

首先的首先,你要确定自己是为了兴趣而学还是为了什么? 1、入门阶段的闭门造轮子 ,不是传统意义上的看书、看教程和看学习资料等,要如何高效率的学习呢?闭门造轮子的阶段,其实就是理解其原理的阶段。这个阶段要以原理加上实践才能更高效率的去获取并掌握知识,一味地找轮子而不得其要领,只会让你遗忘得更快——记得越多,忘得越多。也就是印证了论语的已经话“学而不思者罔,思而不学则殆”。所以得到了一个小小...

2019-02-28 17:21:41 11933

原创 0. 嵌入式入门学习路线

最近有好多同学在咨询嵌入式该怎么入门,应该怎么学习,有什么好的学习方法推荐,以及嵌入式入门的学习路线。今天我就带着大家的问题,一一为大家解决。STM32基础入门uCOS-II基础入门文末有相关学习资料网盘地址; 首先嵌入式门槛虽然较高,但也跟其他事物一样,并不是牢不可破。只要我们用心去对待,冬雪终将化去,春风定会吹来。本人推荐的嵌入式学习计划或路线如下: ...

2019-02-22 11:58:54 12443 1

原创 PID小车

通过PID三个参数实现函数内容完成速度控制PID小车。转化成代码:void PIDControl() //pid偏差计算{ e=SpeedSet-num; duk=(Kp*(e-e1)+Ki*e+Kd*(e-2*e1+e2)); //+Kd*(e-2e1+e2)//增量式pid uk=uk1+duk; out=(int)uk; if(ou...

2019-04-30 17:12:48 2948 2

原创 Android配置问题

Android添加所需要的库 对应这库的GroupID、ArtifactName和RequestedVersiondependencies { implementation 'com.android.support.constraint:constraint-layout:1.1.3' compile fileTree(dir: 'libs', include: [...

2019-04-30 16:48:34 302

原创 课堂管理系统——Android

实现一个课堂管理系统,将已完成的数据库部分增加聊天室部分apk文件名:apk资源文件:AndroidManifest.xml<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" ...

2019-04-30 16:39:08 2933 4

转载 Android聊天室

客户端GitHub地址服务端GitHub地址用于一个小工程。

2019-04-30 16:14:42 675 1

原创 OpenCv识别多条形码

这其实是一个小工程完成的功能: 使用摄像头采集图像进行预处理(检测部分) 提取出预处理的条形码图像(识别部分) 将条形码进行存入数据库(存储部分) 首先接到这个图像识别的小工程需要先确定这个工程的最初输入,和最后输出,输入就是普通的RGB图像,输出是数据库文件。其中需要完成的过程,就是我需要做得功能,检测部分、识别部分和存储部分,话不多说,上部分代码:/...

2019-04-30 12:00:30 7681 4

原创 VMware下任意Linux装WMware Tools

首先下载VMWareTools-9.2.0-799703.tar.gz,然后打开命令终端,根据相应的目录输入如下命令:任意用户先进入root用户下 :suroot 然后输入密码如果在media目录下 也有可能在run目录下 进入目录root@localhost:~# cd /mediaroot@localhost:/media# lsroot@...

2019-03-22 16:50:04 292

原创 全栈python学习大纲(由于图像过大,手动点击查看图像)

Python Web 全栈+自动化运维开发架构师目录整体分为七个阶段:阶段一: Python 自动化运维基础 ( Python 基本数据类型, 面向对象编程, Python 数据库操作)阶段二: Python 前端 WEB 开发 ( HTML、 CSS、 jQuery、 BootStrap)阶段三: Python WEB 可视化数据开发(爬虫, Scrapy、 Django、...

2019-03-13 10:08:30 476 2

原创 uCOS-II基础入门

uCOS-II基础入门相关链接:uCOS-II基础入门一介绍:实时系统概念、前后台系统、代码的临界段、任务切换。如需了解更多详情可以点击如下:嵌入式学习之uCOS-II基础入门(一)uCOS-II基础入门二介绍:内核概述、调度含义、不可剥夺型内核、可剥夺内核、可重入性的含义。如需了解更多详情可以点击如下:嵌入式学习之uCOS-II基础入门(二)uCOS-II基...

2019-03-06 10:06:20 603

转载 10、嵌入式学习之uCOS-II基础入门

任务控制块(Task Control Blocks, OS­­_TCBs)一旦任务建立了,任务控制块OS­­_TCBs将被赋值。任务控制块是一个数据结构,当任务的CPU使用权被剥夺时,μC/OS-Ⅱ用它来保存该任务的状态。当任务重新得到CPU使用权时,任务控制块能确保任务从当时被中断的那一点丝毫不差地继续执行。OS­­_TCBs全部驻留在RAM中。任务建立的时候,OS­­_TCB...

2019-03-06 09:58:43 458

转载 9、嵌入式学习之uCOS-II基础入门

内核结构临界段(Critical Sections)和其它内核一样,μC/OS-Ⅱ为了处理临界段代码需要关中断,处理完毕后再开中断。这使得μC/OS-Ⅱ能够避免同时有其它任务或中断服务进入临界段代码。关中断的时间是实时内核开发商应提供的最重要的指标之一,因为这个指标影响用户系统对实时事件的响应性。μC/OS-Ⅱ努力使关中断时间降至最短,但就使用μC/OS-Ⅱ而言,关中断的时间很大程度上取决...

2019-03-06 09:45:26 437

转载 8、嵌入式学习之uCOS-II基础入门

时钟节拍(Clock Tick)时钟节拍是特定的周期性中断。这个中断可以看作是系统心脏的脉动。时钟的节拍式中断使得内核可以将任务延时若干个整数时钟节拍,以及当任务等待事件发生时,提供等待超时的依据。时钟节拍率越快,系统的额外开销就越大。各种实时内核都有将任务延时若干个时钟节拍的功能。然而这并不意味着延时的精度是1个时钟节拍,只是在每个时钟节拍中断到来时对任务延时做一次裁决而已。第一种情...

2019-03-06 09:41:23 352

转载 7、嵌入式学习之uCOS-II基础入门

中断处理时间虽然中断服务的处理时间应该尽可能的短,但是对处理时间并没有绝对的限制。如果中断服务是在任何给定的时间开始,且中断服务程序代码是应用程序中最重要的代码,则中断服务需要多长时间就应该给它多长时间。然而在大多数情况下,中断服务子程序应识别中断来源,从叫中断的设备取得数据或状态,并通知真正做该事件处理的那个任务。当然应该考虑到是否通知一个任务去做事件处理所花的时间比处理这个事件所花的时间还...

2019-03-06 09:34:23 388

转载 6、嵌入式学习之uCOS-II基础入门

消息邮箱(Message Mail boxes)通过内核服务可以给任务发送消息。典型的消息邮箱也称作交换消息,是用一个指针型变量,通过内核服务,一个任务或一个中断服务程序可以把一则消息(即一个指针)放到邮箱里去。同样,一个或多个任务可以通过内核服务接收这则消息。发送消息的任务和接收消息的任务约定,该指针指向的内容就是那则消息。每个邮箱有相应的正在等待消息的任务列表,要得到消息的任务会因为邮...

2019-03-06 09:27:56 505

转载 5、嵌入式学习之uCOS-II基础入门

死锁(或抱死)死锁也称作抱死,指两个任务无限期地互相等待对方控制着的资源。设任务T1正独享资源R1,任务T2在独享资源T2,而此时T1又要独享R2,T2也要独享R1,于是哪个任务都没法继续执行了,发生了死锁。最简单的防止发生死锁的方法是让每个任务都:l先得到全部需要的资源再做下一步的工作l用同样的顺序去申请多个资源l释放资源时使用相反的顺序内核大多允许用户在申请...

2019-03-06 09:11:46 381

转载 4、嵌入式学习之uCOS-II基础入门

互斥条件实现任务间通讯最简便到办法是使用共享数据结构。特别是当所有到任务都在一个单一地址空间下,能使用全程变量、指针、缓冲区、链表、循环缓冲区等,使用共享数据结构通讯就更为容易。虽然共享数据区法简化了任务间的信息交换,但是必须保证每个任务在处理共享数据时的排它性,以避免竞争和数据的破坏。与共享资源打交道时,使之满足互斥条件最一般的方法有:l关中断 l使用测试并置位指令 l禁...

2019-03-06 08:52:39 447

转载 3、嵌入式学习之uCOS-II基础入门

任务优先级每个任务都有其优先级。任务越重要,赋予的优先级应越高。静态优先级应用程序执行过程中诸任务优先级不变,则称之为静态优先级。在静态优先级系统中,诸任务以及它们的时间约束在程序编译时是已知的。动态优先级应用程序执行过程中,任务的优先级是可变的,则称之为动态优先级。实时内核应当避免出现优先级反转问题。优先级反转...

2019-03-06 08:32:32 528

转载 2、嵌入式学习之uCOS-II基础入门

内核(Kernel)多任务系统中,内核负责管理各个任务,或者说为每个任务分配CPU时间,并且负责任务之间的通讯。内核提供的基本服务是任务切换。之所以使用实时内核可以大大简化应用系统的设计,是因为实时内核允许将应用分成若干个任务,由实时内核来管理它们。内核本身也增加了应用程序的额外负荷,代码空间增加ROM的用量,内核本身的数据结构增加了RAM的用量。但更主要的是,每个任务要有自己的栈空间,这...

2019-03-05 19:58:16 1368

转载 1、嵌入式学习之uCOS-II基础入门

最近一起分享下uCOS-II学习教程,包括uCOS-II一些专有名词,任务,优先级等。uCOS-II概念μC/OS-II由Micrium公司提供,是一个可移植、可固化的、可裁剪的、占先式多任务实时内核,它适用于多种微处理器,微控制器和数字处理芯片(已经移植到超过100种以上的微处理器应用中)实时系统概念实时系统的特点是,如果逻辑和时序出现偏差将会引起严重后果的系统。有两种类型...

2019-03-05 19:34:12 1682

原创 C#与C++的区别

三大主流OOP(面向对象编程)语言(C++、Java、C#),它们三者有太多的共性,其语法和编程概念,大部分都彼此兼容,精一门则可通三门。尤其对掌握C++的程序员而言,入门学习Java和C#没有任何门槛的,唯一需要花些时间的地方就是熟悉这二者的类库和框架。三者中,C++是我最熟悉也最喜欢的,因为最先接触C语言然后升级到C++的,在学习C#时难免会将其与C++做对比,现将C#与C++的区别做一番小结...

2019-03-02 11:26:23 21362 3

转载 Keil MDK 和 IAR 两款ARM开发工具区别比较

首先要说明,没有那款开发工具是万能的,也没有那款工具在所有方面都具有绝对优势。对于Keil MDK-ARM和IAR两款工具择,可以根据自己的习惯来选择,而不应该在使用其中的一款时贬低另外一款,或者总是赞美自己的选择。好了,下面开始讲Keil MDK-ARM和IAR的区别。一、概述Keil MDK-ARM(旧称RealView MDK)开发工具源自德国Keil公司,被全球上百万的嵌...

2019-03-01 15:18:28 1602

原创 ARM Cortex-M3系统设计与实现

ARM Cortex-M3系统设计与实现——STM32基础篇目录0. 嵌入式入门学习路线1. STM32 MCU简介 1.1 stm32 mcu结构 1.2 STM32 MCU存储器映像 1.3 STM32 MCU系统时钟树 1.4 Cortex-M3简介2. 通用并行GPIO口 2.1 GPIO结构及寄存器说明 2.2 GPIO设计实例...

2019-03-01 14:11:53 7053

原创 10. 实时钟系统设计

10. 实时钟系统设计 10.1 系统结构 10.2 程序设计 10.2.1 实时钟程序设计 10.2.2 按键和显示程序设计 10.2.3 系统程序设计 10.3 程序实现 10.1 系统结构实时钟系统包括STM32MCU、实时钟电路DS1302、2个按键、4个LED、LED显示器和UART-USB转换器CP2102实时钟电路...

2019-02-28 14:04:17 5331

原创 9. 直接存储器存取DMA

9. 直接存储器存取DMA 9.1 DMA简介 9.2 USART的DMA操作 9.3 TIM的DMA操作 9.4 ADC的DMA操作 9.1 DMA简介直接存储器存取(DMA)用来提供在外设和存储器之间或者存储器和存储器之间的批量数据传输。DMA传送过程中无须CPU干预,数据可以通过DMA快速地传送,这就节省了CPU的资源来做其他操作 STM32的两...

2019-02-28 09:59:03 5449

原创 8. 嵌套向量中断控制器NVIC

8. 嵌套向量中断控制器NVIC 8.1 NVIC简介 8.2 EXTI中断 8.3 USART中断 8.4 TIM中断 8.5 ADC中断 8.1 NVIC简介接口数据传送控制方式有查询、中断和DMA等,中断是重要的接口数据传送控制方式 STM32中断控制分为全局和局部2级,全局中断由NVIC控制,局部中断由设备控制 NVIC支持多个内部异常和多达24...

2019-02-27 21:13:42 6239

原创 7. 内部集成电路总线接口I²C

7. 内部集成电路总线接口I²C 7.1 I²C结构及寄存器说明 7.2 I²C设计实例 7.2.1 24C32A简介 7.2.2 24C32A程序设计 7.2.3 24C32A程序应用7.1 I²C结构及寄存器说明内部集成电路总线接口I²C是通信控制领域广泛采用的一种总线标准,用于连接微控制器和外围设备,连接在总...

2019-02-26 10:01:08 8275

原创 6. 模数转换器ADC

6. 模数转换器ADC 6.1 ADC结构及寄存器说明 6.2 ADC设计实例 6.2.1 用ADC1规则通道实现外部模拟信号的模数转换 6.2.2 用ADC1注入通道实现内部温度传感器的温度测量6.1 ADC结构及寄存器说明模数转换器ADC的主要功能是将模拟信号转化为数字信号以便于微控制器进行数据处理 ADC按转换原理分为逐次比较型、双积分型和∑...

2019-02-25 10:34:58 11177

原创 HTTP协议_php版

1、协议现实生活中的协议,相互遵守,单方面违背,协议不成立;(停战协议,全球贸易协议)//没有协议,世界一片混乱互联网中的协议, ftp、 http、 stmp、 TCP/IP……2、httphttp(HTTP-Hypertext transfer protocol):超文本传输协议,详细的规定了万维网服务器与客户端之间数据传送的通信规则; 基本上,你每天都在用; 当你在浏览...

2019-02-24 18:53:16 10063

原创 笨方法刷博客_C实现

 使用一个笨方法去完成CSDN博客的阅读数增加,话不多说上代码#include &lt;windows.h&gt;#include &lt;tchar.h&gt;#include &lt;assert.h&gt; const TCHAR szOpen[] = _T("open");const TCHAR szAddress1[] = _T("https://blog.csdn....

2019-02-23 15:45:04 10750

原创 5. 定时器TIM

5. 定时器TIM 5.1 TIM结构及寄存器说明 5.2 TIM设计实例 5.2.1 1s定时程序设计 5.2.2 矩形波输出程序设计 5.2.3 矩形波测量程序设计5.1 TIM结构及寄存器说明定时器TIM2-5、基本定时器TIM6/7、实时钟RTC、独立看门狗IWDG和窗口看门狗WWDG等 高级控制定时器除了具有刹车输入BKIN、互补...

2019-02-22 10:42:42 11951

原创 4. 串行设备接口SPI

4. 串行设备接口SPI 4.1 SPI结构及寄存器说明 4.2 SPI设计实例 4.2.1 SPI基本功能程序设计 4.2.2 SPI环回程序设计 4.2.3 用SPI控制LCD4.1 SPI结构及寄存器说明串行设备接口(Serial peripheral interface:SPI)是工业标准串行协议,通常用于嵌入式系统,将微处理器连接...

2019-02-21 11:16:58 11672

原创 指针数组和数组指针

优先级:()&gt;[]&gt;*指针数组int *p[n];               //定义一个指针数组         指针数组:是数组——装着指针的数组。[]优先级高,先与p结合成为一个数组,再由int*说明这是一个整型指针数组,它有n个指针类型的数组元素。指向一维#include &lt;stdio.h&gt;int main(){ int a = ...

2019-02-20 19:38:33 13065 1

原创 3. 通用同步/异步收发器接口USART

3. 通用同步/异步收发器接口USART 3.1 UART简介 3.2 USART结构及寄存器说明 3.3 USART设计实例 3.3.1 USART基本功能程序设计 3.3.2 与计算机通信程序设计 3.3.3 用printf()实现通行程序设计3.1 UART简介并行/串行:同步/异步:UART(Universal Asynchro...

2019-02-20 11:28:17 12066

原创 2. 通用并行接口GPIO

2. 通用并行接口GPIO 2.1 GPIO结构及寄存器说明 2.2 GPIO设计实例 2.2.1 直接操作寄存器软件设计 2.2.2 使用库函数范例程序(v2.0.1) 2.2.3 用GPIO控制LCD2.1 GPIO结构及寄存器说明GPIO包括多个16位I/O端口,每个端口可以独立设置3种输入方式和4种输出方式,并可独立地置位或复位 ...

2019-02-19 15:30:12 12999

原创 1. stm32 mcu简介

1. stm32 mcu简介 1.1 stm32 mcu结构 1.2 STM32 MCU存储器映像 1.3 STM32 MCU系统时钟树 1.4 Cortex-M3简介 1.1 stm32 mcu结构由控制单元、从属单元和总线矩阵三大部分组成,控制单元和从属单元通过总线矩阵相连接 控制单元包括Cortex-M3内核和两个DMA控制器(DMA1和DMA2)...

2019-02-18 14:54:33 15645

转载 .md,markdown文件的基本常用编写语法

序言:  很久没有写博客了,感觉只要是不写博客,人就很变得很懒,学的知识点感觉还是记不住,渐渐地让我明白,看的越多,懂的越少(你这话不是有毛病吗?应该是看的越多,懂的越多才对),此话怎讲,当你在茫茫的知识库里面东看看,西看看的时候,很快就被海量的知识给淹没了,根本就不知道哪些是对的,哪些是错的,感觉好像这个也懂了,那个也懂了,但是真正写起来,脑子又一片空白,又好像什么都不懂,这种状态时有发生,...

2019-02-15 09:24:07 10781 1

原创 //自己封装的几个函数方便记忆

void bootUp()//将本目录写入注册表{//设置程序开机启动HKEY hKey;//找到系统的启动项   CString lpRun = _T("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run");//打开启动项Key   long lRet = RegOpenKeyEx(HKEY_CURRENT_USER,...

2017-04-24 21:28:26 10851

原创 opencv2、3舍弃了CvImage类,写好不容易找到

CvImage类声明文件 // CvvImage.h#pragma once#ifndef CVVIMAGE_CLASS_DEF#define CVVIMAGE_CLASS_DEF#include "opencv2/opencv.hpp"class  CvvImage { public: CvvImage(); virtual ~CvvIm...

2017-04-24 21:25:12 11481

原创 自己写的一个多进程的定时器类方便使用,放在bolg里

 定时器类声明文件//cMyTimer.h#pragma once#include "string"#include "list"using namespace std;struct stTimer{ unsigned timeElapce; //定时器间隔运行时间 unsigned timeCreate; //定时器创建时间 unsigned t...

2017-04-24 21:19:46 11203

PID控速小车

通过按键改变预设置速度,小车可以通过PID方式从当前速度改到设置速度,使用定时器测试光电编码器速度,使用LCD显示速度值。

2019-04-30

课堂管理系统

实现一个课堂管理系统,操作数据库,功能为登录界面,做题界面,聊天室,增题界面。

2019-04-30

OpenCV多一维码识别

使用opencv3.41和zbar库,实现实时检测、识别一帧图像中多个条形码,数据库的动态链接库在ado目录下,数据库文件在db目录下,if1weima目录为检测的输出图像,is1weima目录下为识别出的一维码图像;zbar目录下为工程的源码文件,CMyTimer为定时器类,Add为配置定时器类,pch为声明文件,zbar.cpp为主程序入口。 建议从新建立工程将上诉文件放置入新工程从新配置,为64位工程。

2019-04-30

php快速入门与商用项目培训

《php快速入门与商用项目培训》针对php初学者及入门者,系统阐述web开发的基本知识,结合数据库应用,使读者快速跨入php 领域,对编程语言不再畏惧。hwcms以简洁的方式显示内容管理系统的基本功能,让您了解php开发的快捷;修改后的uc home为浩为资源堂用户提供了便利,并基于软件开发的原则——尽量让用户使用方便。另外,《php快速入门与商用项目培训》还全面阐述了修改原因及过程。    php与java的整合,让您体味学以致用的最高境界,充分利用php的简单易学、开发高效和java的强大功能及企业支持特性。php负责web层,java负责业务和数据逻辑层,形成web开发的“黄金搭档”。

2019-02-24

Pro DNS and BIND 10英文版

BIND 10提供一个DNS的C++库和很多提供服务的守护进程、动态 DNS、zone 转换和域名服务等等。

2019-02-24

JavaScript.DOM编程艺术(第2版)(书签)mobile

本书讲述了JavaScript、DOM 和HTML5 的基础知识,着重介绍DOM 编程技术背后的思路和原则:平稳退化、渐进增强和以用户为中心等。这些概念对于任何前端Web 开发工作都非常重要。本书将这些概念贯穿在书中的所有代码示例中,以便呈现用来创建图片库页面的脚本、用来创建动画效果的脚本和用来丰富页面元素呈现效果的脚本,最后结合所讲述的内容创建了一个实际的网站。

2019-02-24

网络渗透扫描及其安全英文版

渗透测试,是为了证明网络防御按照预期计划正常运行而提供的一种机制。不妨假设,你的公司定期更新安全策略和程序,时时给系统打补丁,并采用了漏洞扫描器等工具,以确保所有补丁都已打上。如果你早已做到了这些,为什么还要请外方进行审查或渗透测试呢?因为,渗透测试能够独立地检查你的网络策略,换句话说,就是给你的系统安了一双眼睛。而且,进行这类测试的,都是寻找网络系统安全漏洞的专业人士。

2019-02-24

BackTrack 5 Cookbook英文版

backtrack是一个基于linux的渗透测试和安全审计平台,旨在帮助网络安全人员对网络黑客行为进行评估,如今被世界各地的安全社区和安全人员所使用。 本书总共分为10章,以示例方式讲解了backtack中很多流行工具的使用方法,其内容涵盖了backtrack的安装和配置、backtrack的自定义设置、信息采集、漏洞识别、漏洞利用、提权、无线网络分析、voip、密码破解、取证调查等内容。 《backtrack 5 cookbook》讲解详细,示例丰富,无论你是经验丰富的渗透测试老手,还是打算紧跟时代潮流,希望掌握backtack 5中常用软件使用方法的新手,都会从本书中获益匪浅。

2019-02-24

虚拟专网.技术于解决方案

虚拟专网已经成为当今网络的必要部分,它为确保内联网(Jntranet)和外联网(Extranet)在共享的Internet结构上的通信专用性提供了有效的手段。这是一本实用的综合性指南,介绍了各种技术组件、具体的解决方案以及配置和管理成功的所需要的实践知识,本书既可作为网络工程师和管理人员的实用指南,也可作为软硬件开发人员必须的背景资料,还可作为教学的参考材料。

2019-02-24

stm32参考手册中文版

本参考手册涵盖了基于ARM® Cortex®-M3内核的单片机STM32F101xx, STM32F102xx, STM32F103xx, STM32F105xx and STM32F107xx产品线,它为用户使用以上单片机提供了完整的存储器和外设信息。

2019-02-22

简易usb串口助手

mfc写的一个串口调试器,通过改变串口通信参数来进行串口接发数据,通过设备管理器获取com串口号进行连接。开发环境vs2013,debug通过release通过。方便学习。

2017-12-31

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

TA关注的人

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