自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

唯恋殊雨的博客

主要整理学习笔记与个人开发项目

  • 博客(313)
  • 资源 (59)
  • 收藏
  • 关注

原创 基于MATLAB/Simulink的电力电子电路仿真技术——PPT链接

最近特别多的人问我要这个PPT,我把他分享出来,供大家借鉴学习百度网盘:https://pan.baidu.com/s/1HTwA86hcqC3Wf7MZJHhkxg

2018-12-12 17:25:00 5602 9

转载 C/C++学习笔记——C提高:动态库的封装和使用

库的基本概念库是已经写好的、成熟的、可复用的代码。每个程序都需要依赖很多底层库,不可能每个人的代码从零开始编写代码,因此库的存在具有非常重要的意义。在我们的开发的应用中经常有一些公共代码是需要反复使用的,就把这些代码编译为库文件。库可以简单看成一组目标文件的集合,将这些目标文件经过压缩打包之后形成的一个文件。像在Windows这样的平台上,最常用的c语言库是由集成按开发环境所附带的运行库,这...

2020-03-08 11:48:49 1589

原创 C/C++学习笔记——C提高:预处理

预处理的基本概念C语言对源程序处理的四个步骤:预处理、编译、汇编、链接。预处理是在程序源代码被编译之前,由预处理器(Preprocessor)对程序源代码进行的处理。这个过程并不对程序的源代码语法进行解析,但它会把源代码分割或处理成为特定的符号为下一步的编译做准备工作。文件包含指令(#include)文件包含处理“文件包含处理”是指一个源文件可以将另外一个文件的全部内容包含进来。C语言提...

2020-03-08 11:34:31 919

原创 C/C++学习笔记——C提高: 函数指针和递归函数

函数指针函数类型通过什么来区分两个不同的函数?一个函数在编译时被分配一个入口地址,这个地址就称为函数的指针,函数名代表函数的入口地址。函数三要素: 名称、参数、返回值。C语言中的函数有自己特定的类型。c语言中通过typedef为函数类型重命名:typedef int f(int, int); // f 为函数类型typedef void p(int); // p 为函数类型这...

2020-03-08 11:26:50 1514

原创 C/C++学习笔记——C提高:链表

链表基本概念什么是链表链表是一种常用的数据结构,它通过指针将一些列数据结点,连接成一个数据链。相对于数组,链表具有更好的动态性(非顺序存储)。数据域用来存储数据,指针域用于建立与下一个结点的联系。建立链表时无需预先知道数据总量的,可以随机的分配空间,可以高效的在链表中的任意位置实时插入或删除数据。链表的开销,主要是访问顺序性和组织链的空间损失。数组和链表的区别:数组:一次性分配...

2020-03-08 11:20:49 824

原创 C/C++学习笔记——C提高: 文件操作

文件在今天的计算机系统中作用是很重要的。文件用来存放程序、文档、数据、表格、图片和其他很多种类的信息。作为一名程序员,您必须编程来创建、写入和读取文件。编写程序从文件读取信息或者将结果写入文件是一种经常性的需求。C提供了强大的和文件进行通信的方法。使用这种方法我们可以在程序中打开文件,然后使用专门的I/O函数读取文件或者写入文件。文件相关概念文件的概念一个文件通常就是磁盘上一段命名的存储区。...

2020-03-08 11:13:00 885

原创 C/C++学习笔记——C提高: 结构体

结构体基础知识结构体类型的定义struct Person{ char name[64]; int age;};typedef struct _PERSON{ char name[64]; int age;}Person;注意:定义结构体类型时不要直接给成员赋值,结构体只是一个类型,编译器还没有为其分配空间,只有根据其类型定义变量时,才分配空间,有空间后才能赋值。结构体变量...

2020-03-08 10:54:40 634

原创 C/C++学习笔记——C提高:多维数组

一维数组元素类型角度:数组是相同类型的变量的有序集合内存角度:连续的一大片内存空间在讨论多维数组之前,我们还需要学习很多关于一维数组的知识。首先让我们学习一个概念。数组名考虑下面这些声明:int a;int b[10];我们把a称作标量,因为它是个单一的值,这个变量是的类型是一个整数。我们把b称作数组,因为它是一些值的集合。下标和数名一起使用,用于标识该集合中某个特定的值。...

2020-03-08 10:48:28 645

原创 C/C++学习笔记——C提高:位运算

可以使用C对变量中的个别位进行操作。您可能对人们想这样做的原因感到奇怪。这种能力有时确实是必须的,或者至少是有用的。C提供位的逻辑运算符和移位运算符。在以下例子中,我们将使用二进制计数法写出值,以便您可以了解对位发生的操作。在一个实际程序中,您可以使用一般的形式的整数变量或常量。例如不适用00011001的形式,而写为25或者031或者0x19.在我们的例子中,我们将使用8位数字,从左到右,每位的...

2020-03-08 10:42:52 619

原创 C/C++学习笔记——C提高:指针的指针(二级指针)

二级指针基本概念这里让我们花点时间来看一个例子,揭开这个即将开始的序幕。考虑下面这些声明:int a = 12;int *b = &a;它们如下图进行内存分配:假定我们又有了第3个变量,名叫c,并用下面这条语句对它进行初始化:c = &b;它在内存中的大概模样大致如下:问题是:c的类型是什么?显然它是一个指针,但它所指向的是什么?变量b是一个“指向整型的指针...

2020-03-07 21:22:16 1563 1

原创 C/C++学习笔记——C提高:指针强化

指针是一种数据类型指针变量指针是一种数据类型,占用内存空间,用来保存内存地址。void test01(){ int* p1 = 0x1234; int*** p2 = 0x1111; printf("p1 size:%d\n",sizeof(p1)); printf("p2 size:%d\n",sizeof(p2)); //指针是变量,指针本身也占内存空间,指针也可以被...

2020-03-07 21:18:27 880

原创 C/C++学习笔记——C提高:内存分区

数据类型数据类型概念什么是数据类型?为什么需要数据类型?数据类型是为了更好进行内存的管理,让编译器能确定分配多少内存。我们现实生活中,狗是狗,鸟是鸟等等,每一种事物都有自己的类型,那么程序中使用数据类型也是来源于生活。当我们给狗分配内存的时候,也就相当于给狗建造狗窝,给鸟分配内存的时候,也就是给鸟建造一个鸟窝,我们可以给他们各自建造一个别墅,但是会造成内存的浪费,不能很好的利用内存空间。...

2020-03-07 21:03:49 687

原创 C/C++学习笔记——C提高:C语言概述

欢迎大家来到c语言的世界,c语言是一种强大的专业化的编程语言。C语言的起源贝尔实验室的Dennis Ritchie在1972年开发了C,当时他正与ken Thompson一起设计UNIX操作系统,然而,C并不是完全由Ritchie构想出来的。它来自Thompson的B语言。使用C语言的理由在过去的几十年中,c语言已成为最流行和最重要的编程语言之一。它之所以得到发展,是因为人们尝试使用它后都...

2020-03-07 20:43:59 703

原创 C/C++学习笔记——C基础:文件操作

概述磁盘文件和设备文件磁盘文件指一组相关数据的有序集合,通常存储在外部介质(如磁盘)上,使用时才调入内存。设备文件在操作系统中把每一个与主机相连的输入、输出设备看作是一个文件,把它们的输入、输出等同于对磁盘文件的读和写。磁盘文件的分类计算机的存储在物理上是二进制的,所以物理上所有的磁盘文件本质上都是一样的:以字节为单位进行顺序存储。从用户或者操作系统使用的角度(逻辑上...

2020-03-07 20:27:54 805

原创 C/C++学习笔记——C基础:复合类型(自定义类型)

结构体概述数组:描述一组具有相同类型数据的有序集合,用于处理大量相同类型的数据运算。有时我们需要将不同类型的数据组合成一个有机的整体,如:一个学生有学号/姓名/性别/年龄/地址等属性。显然单独定义以上变量比较繁琐,数据不便于管理。C语言中给出了另一种构造数据类型——结构体。结构体变量的定义和初始化定义结构体变量的方式:先声明结构体类型再定义变量名在声明类型的同时定义变量直接定...

2020-03-07 20:15:44 669

原创 C/C++学习笔记——C基础:内存管理

作用域C语言变量的作用域分为:代码块作用域(代码块是{}之间的一段代码)函数作用域文件作用域局部变量局部变量也叫auto自动变量(auto可写可不写),一般情况下代码块{}内部定义的变量都是自动变量,它有如下特点:在一个函数内定义,只在函数范围内有效在复合语句中定义,只在复合语句中有效随着函数调用的结束或复合语句的结束局部变量的声明声明周期也结束如果没有赋初值,内容为随机...

2020-03-07 20:06:16 845

原创 C/C++学习笔记——C基础:指针

概述内存内存含义:存储器:计算机的组成中,用来存储程序和数据,辅助CPU进行运算处理的重要部分。内存:内部存贮器,暂存程序/数据——掉电丢失 SRAM、DRAM、DDR、DDR2、DDR3。外存:外部存储器,长时间保存程序/数据—掉电不丢ROM、ERRROM、FLASH(NAND、NOR)、硬盘、光盘。内存是沟通CPU与硬盘的桥梁:暂存放CPU中的运算数据暂存与硬盘等外部存储...

2020-03-06 20:49:32 2211

原创 C/C++学习笔记——C基础:函数

概述函数分类C 程序是由函数组成的,我们写的代码都是由主函数 main()开始执行的。函数是 C 程序的基本模块,是用于完成特定任务的程序代码单元。从函数定义的角度看,函数可分为系统函数和用户定义函数两种:系统函数,即库函数:这是由编译系统提供的,用户不必自己定义这些函数,可以直接使用它们,如我们常用的打印函数printf()。用户定义函数:用以解决用户的专门需要。函数的作用函...

2020-03-06 20:35:08 716

原创 C/C++学习笔记——C基础:数组和字符串

概述在程序设计中,为了方便处理数据把具有相同类型的若干变量按有序形式组织起来——称为数组。数组就是在内存中连续的相同类型的变量空间。同一个数组所有的成员都是相同的数据类型,同时所有的成员在内存中的地址是连续的。数组属于构造数据类型:一个数组可以分解为多个数组元素:这些数组元素可以是基本数据类型或构造类型。int a[10]; struct Stu boy[10];按数组...

2020-03-05 20:53:15 2014

原创 C/C++学习笔记——C基础:程序流程结构

概述C语言支持最基本的三种程序运行结构:顺序结构、选择结构、循环结构。顺序结构:程序按顺序执行,不发生跳转。选择结构:依据是否满足条件,有选择的执行相应功能。循环结构:依据条件是否满足,循环多次执行某段代码。选择结构if语句#include <stdio.h>int main(){ int a = 1; int b = 2; if (a > b)...

2020-03-04 21:40:14 754

原创 C/C++学习笔记——C基础:运算符与表达式

常用运算符分类运算符类型作用算术运算符用于处理四则运算赋值运算符用于将表达式的值赋给变量比较运算符用于表达式的比较,并返回一个真值或假值逻辑运算符用于根据表达式的值返回真值或假值位运算符用于处理数据的位运算sizeof运算符用于求字节数长度算术运算符运算符术语示例结果+正号+33-负号-...

2020-03-04 21:20:47 732

原创 C/C++学习笔记——C基础:数据类型

常量与变量关键字

2020-03-03 21:29:21 1978

原创 C/C++学习笔记——C基础:C语言概述

什么是C语言一提到语言这个词语,自然会想到的是像英语、汉语等这样的自然语言,因为它是人和人交换信息不可缺少的工具。而今天计算机遍布了我们生活的每一个角落,除了人和人的相互交流之外,我们必须和计算机角落。用什么的什么样的方式和计算机做最直接的交流呢?人们自然想到的是最古老也最方便的方式——语言,而C语言就是人和计算机交流的一种语言。语言是用来交流沟通的。有一方说,有另一方听,必须有两方参与,...

2020-03-01 20:53:32 1231

原创 个人项目——基于STM32的智能教务显示系统

这个项目也是我给别人代做的,大家先看一下视频,了解一下这个项目点击观看视频 客户要求基本是这样的:现在大学的教室门口不都贴着课程表嘛,然后每个学期都要换,上面有这个学期要上的课,每一个格子里有课程名字,上课老师,课程开始和结束的周数,例如周一第一节课1-8周高等数学,9-16周概率论这样子,但是每个学期都需要取出来换,所以客户想让我做一个可以自...

2019-03-20 22:04:14 7571 6

原创 总结一下自己的大学四年

下学期就要毕业了,四年悄悄的就过完了,没有选择考研,寒假去签约的公司实习。这四年我感觉过的还算充实,学了很多课外的东西,不敢说学习很好,但是动手能力绝对有自信。在整个大学没有挂过科的情况下学了很多自己感兴趣的东西,跟在科技的前沿,奖学金也拿过,比赛也参加过,女朋友也有了,基本上大学没有遗憾了。刚才整理了一下时间轴,可以给大一大二的学弟学妹参考。还有以前发的源码等等都会整理到Github,没有CSD...

2018-12-19 17:25:55 7253 20

原创 Linux学习笔记——常用命令

3. 常用命令3.1 概述很多人可能在电视或电影中看到过类似的场景,黑客面对一个黑色的屏幕,上面飘着密密麻麻的字符,梆梆一顿敲,就完成了窃取资料的任务。Linux 刚出世时没有什么图形界面,所有的操作全靠命令完成,就如同电视里的黑客那样,充满了神秘与晦涩。近几年来,尽管 Linux 发展得非常迅速,图形界面越来越友好,但是在真正的开发过程中,Linux 命令行的应用还是占有非常重要的席...

2018-11-25 23:19:51 1357

原创 Linux学习笔记——文件系统

2. 文件系统2.1 目录和路径2.1.1 目录目录是一组相关文件的集合。一个目录下面除了可以存放文件之外还可以存放其他目录,即可包含子目录。在确定文件、目录位置时,DOS和Unix/Linux都采用“路径名+文件名”的方式。路径反映的是目录与目录之间的关系。2.1.2 路径Unix/Linux路径由到达定位文件的目录组成。在Unix/Linux系统中组成路径的目录分割符为斜杠...

2018-11-25 22:29:15 840

原创 Linux学习笔记——Unix/Linux操作系统介绍

1. Unix/Linux操作系统介绍1.1 操作系统的作用1.1.1 操作系统的目标方便:使计算机系统易于使用有效:以更有效的方式使用计算机系统资源扩展:方便用户有效开发、测试和引进新功能1.1.2 操作系统的地位操作系统在计算机系统中承上启下的地位:向下封装硬件,向上提供操作接口。1.2 Unix/Linux操作系统介绍1.2.1 Unix家族1965:贝尔实验室...

2018-11-25 22:13:19 1154

转载 Web前端学习笔记——Web Worker

HTML 5 Web WorkersHTML5 应用缓存 HTML5 服务器发送事件web worker 是运行在后台的 JavaScript,不会影响页面的性能。什么是 Web Worker?当在 HTML 页面中执行脚本时,页面的状态是不可响应的,直到脚本已完成。web worker 是运行在后台的 JavaScript,独立于其他脚本,不会影响页面的性能。您可以继续做任何...

2018-09-27 09:03:20 778

原创 Web前端学习笔记——AngularJS之指令、表单处理、和服务端交互、路由处理、Angular CLI

目录指令NgClassNgStyleNgModelNgIfNgSwitchNgFor带索引的 *ngFor自定义指令表单处理和服务端交互启用 Http 服务发起一个 get 请求Reading the full response错误处理路由处理基本用法导航链接 routerLink路由对象动态路由匹配路由导航A...

2018-09-27 09:03:04 692

原创 Web前端学习笔记——AngularJS之基础案例:TodoMVC

基础案例:TodoMVC起步下载模板:git clone https://github.com/tastejs/todomvc-app-template.git --depth 1初始化项目:ng new todomvc-angularcd todomvc-angularng serve将 todomvc-angular\src\app\app.component....

2018-09-27 09:02:59 721

原创 Web前端学习笔记——AngularJS之组件、模板语法

目录组件typora-copy-images-to: media组件的定义组件的模板组件通信父子通信:Input Down父子通信:Output Up父子通信:父组件直接访问子组件 public 成员没有直接关系通信:Service 单例利用 Cookie 和 localStorage 进行通信利用 Session 进行通信小结组件生命周期动...

2018-09-27 09:02:52 2328

原创 Web前端学习笔记——TypeScript

TypeScript内容纲要了解什么是 TypeScript TypeScript 基本语法TypeScript 介绍TypeScript 是什么TypeScript 是 JavaScript 的强类型版本。然后在编译期去掉类型和特有语法,生成纯粹的 JavaScript 代码。由于最终在浏览器中运行的仍然是 JavaScript,所以 TypeScript 并不...

2018-09-27 09:02:47 3124

原创 Web前端学习笔记——AngularJS之简介、起步、特性

目录Angular 简介Angular 是什么特性发展历史起源困境Angular 2 横空出世ng2 相比 ng1现状那我为什么要学习使用 Angular ?学习 Angular 的一些建议相关链接起步Step 0. 安装依赖环境安装 Node.js安装 npm安装 Python安装 C++ 编译工具安装 cnpmSt...

2018-09-27 09:02:39 1102

原创 Web前端学习笔记——NodeJS之文件操作路径、开发与测试、扩展技术

目录麻烦的文件操作路径路径分类相对路径操作的问题相对路径到底相对于谁?如何解决某些时候相对路径带来的问题?__dirname 和 __filename 两兄弟使用 path.join() 方法解决拼接的问题路径使用整理总结nodemonMocha参考链接JavaScript 代码风格代码风格JavaScript Standard Styl...

2018-09-26 08:57:21 646

原创 Web前端学习笔记——NodeJS之综合案例:多人社区

多人社区该案例以 Node.js 中文开源技术社区 CNode 为原型。准备在 GitHub 上创建一个仓库 ithub 使用 Git 将远程仓库下载到本地 git clone 远程仓库地址初始化目录结构.├── node_modules├── controllers 控制器├── models 模型├── public 静态资源├── views 视图├── a...

2018-09-26 08:57:14 1038

原创 Web前端学习笔记——NodeJS之回调函数、Promise对象、async 函数

目录回调函数回调函数概念JavaScript 回调函数示例:封装原生的 ajax 操作示例:实现拷贝方法示例:读取文件中的 todos 列表数据示例:把任务持久化保存到文件中异常处理try-catch 处理异常Callback 处理异常Promise 对象回调地狱Promise 概念Promise 基本用法几个例子错误处理Prom...

2018-09-26 08:57:08 1066

原创 Web前端学习笔记——NodeJS之操作MySQL、MongoDB

操作 MySQL 数据库参考文档:https://github.com/mysqljs/mysql安装npm install mysqlHello Worldvar mysql = require('mysql');var connection = mysql.createConnection({ host : 'localhost', us...

2018-09-26 08:57:01 1014

原创 Web前端学习笔记——NodeJS之小案例:在线留言本

小案例:在线留言本Edit on github案例Github仓库地址:https://github.com/lipengzhou/express-guestbook-case零、准备完整目录结构如下:.├── node_modules npm安装的第三方包目录,使用 npm 装包会自动创建├── public 页面需要使用的静态资源│ ├── css│ ...

2018-09-26 08:56:55 975

原创 Web前端学习笔记——NodeJS之Express

目录ExpressExpress 介绍起步安装Hello World基本路由处理静态资源使用模板引擎配置使用 art-template 模板引擎其它常见模板引擎解析表单 post 请求体使用 Session路由路由方法路由路径路由处理方法app.route()express.Router在 Express 中获取客户端请求...

2018-09-26 08:56:47 935

(STM32)0.96寸OLED显示屏IIC

/************************************************ ALIENTEK精英STM32开发板 作者:唯恋殊雨 CSDN博客:https://blog.csdn.net/tichimi3375 12864_SPI_OLED_STM32驱动 OLED显示驱动模块:SSD1306 四线SPI:SCL,SDA 对应接口:PC2,PC1 ************************************************/

2018-06-11

(STM32)0.96寸OLED显示屏SPI

(STM32)0.96寸OLED显示屏,基于SPI通信方式, 12864_SPI_OLED_STM32驱动 OLED显示驱动模块:SSD1306 四线SPI:SCL,SDA,REST,D/C 对应接口:PA5,PA7,PA12,PA11

2018-06-11

(STM32)0.96寸OLED显示屏

“STM32开源代码——0.96寸OLED显示屏”博客中的代码,使用本代码前请先查看博客,放止代码不能使用

2018-06-11

STM32 0.96寸OLED显示屏

“STM32开源代码——0.96寸OLED显示屏”博客中的代码,使用本代码前请先查看博客,放止代码不能使用

2018-06-11

(STM32)TM1637四段数码管

int main(void) { delay_init(); //延时函数初始化 NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC中断分组2:2位抢占优先级,2位响应优先级 uart_init(115200); //串口初始化为115200 LED_Init(); //初始化与LED连接的硬件接口 TM1637_Init(); while(1) { delay_ms(1); //延时1ms TM1637_NixieTubeDisplay(); TM1637_NixieTubeDisplayChar(1,0);//第一位显示1 TM1637_NixieTubeDisplayChar(2,1);//第二位显示2 TM1637_NixieTubeDisplayChar(3,2);//第三位显示3 TM1637_NixieTubeDisplayChar(4,3);//第四位显示4 } }

2018-06-10

基于STM32的太阳能供电智能花盆

“个人项目——基于STM32的太阳能供电智能花盆”博客中使用的代码

2018-06-10

基于STM32的智能教务显示系统源码

“个人项目——基于STM32的智能教务显示系统”博客使用的源码,内含STM32的源码、Android Studio的源码、APP。

2018-06-08

基于HC-05的主从机指纹安防系统(主从机程序)

”个人项目——基于HC-05的主从机指纹安防系统“博客中使用的源码,请结合博客查看

2018-06-08

V0.7 08XE基本识别程序(口令模式)

我的“个人项目——基于STM32的智能物联网寝室代码”博客中用到的代码遗漏的语音识别模块的程序,可以自行下载验证

2018-05-13

基于STM32的智能物联网寝室代码

我的“个人项目——基于STM32的智能物联网寝室代码”博客中用到的代码,可以自行下载验证

2018-05-13

机智云演示Demo

我的一篇机智云入门博客中用来演示的一个Demo,可以下载自己验证用

2018-05-12

STM32接入机智云工具包

使用本工具包请务必先查看我的“STM32接入机智云”的一篇博客,不然你可能不会用这个。

2018-05-12

(STM32)UART串口程序

int main(void) { u16 t; u16 len; u16 times=0; delay_init(); //延时函数初始化 NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC中断分组2:2位抢占优先级,2位响应优先级 uart_init(115200); //串口初始化为115200 LED_Init(); //LED端口初始化 KEY_Init(); //初始化与按键连接的硬件接口 while(1) { if(USART_RX_STA&0x8000;) { len=USART_RX_STA&0x3fff;//得到此次接收到的数据长度 printf("\r\n您发送的消息为:\r\n\r\n"); for(t=0;t<len;t++) { USART_SendData(USART1, USART_RX_BUF[t]);//向串口1发送数据 while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);//等待发送结束 } printf("\r\n\r\n");//插入换行 USART_RX_STA=0; }else { times++; if(times 0==0)printf("请输入数据,以回车键结束\n"); if(times0==0)LED0=!LED0;//闪烁LED,提示系统正在运行. delay_ms(10); } } }

2018-05-12

(STM32)光敏传感器

int main(void) { u8 adcx; delay_init(); //延时函数初始化 NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级 uart_init(115200); //串口初始化为115200 LED_Init(); //初始化与LED连接的硬件接口 Lsens_Init(); //初始化光敏传感器 while(1) { adcx=Lsens_Get_Val(); printf("光照强度为:%d",adcx);//显示ADC的值 delay_ms(250); } }

2018-05-12

(STM32)DS18B20程序

int main(void) { short temperature; delay_init(); //延时函数初始化 NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级 uart_init(115200); //串口初始化为 115200 LED_Init(); //初始化与LED连接的硬件接口 while(DS18B20_Init()) //DS18B20初始化 { printf("DS18B20 Error"); delay_ms(200); } while(1) { temperature=DS18B20_Get_Temp(); printf("温度为:%f",temperature/10.0); //显示温度部分 } }

2018-05-12

(STM32)DHT11程序

int main(void) { u8 temperature; u8 humidity; delay_init(); //延时函数初始化 NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级 uart_init(115200); //串口初始化为115200 LED_Init(); //初始化与LED连接的硬件接口 while(DHT11_Init()) //DHT11初始化 { printf("DHT11 Error"); delay_ms(200); } while(1) { DHT11_Read_Data(&temperature;,&humidity;); //读取温湿度值 printf("温度为:%d",temperature); //显示温度 printf("湿度为:%d",humidity); //显示湿度 delay_ms(200); } }

2018-05-12

(STM32)红外遥控

int main(void) { u8 key; delay_init(); //延时函数初始化 NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级 uart_init(115200); //串口初始化为115200 LED_Init(); //LED端口初始化 KEY_Init(); Remote_Init(); //红外接收初始化 while(1) { key=Remote_Scan(); if(key) { printf("键值为:%d",key); //显示键值 switch(key) { case 0:LED0 = 0;break; case 162:LED0 = 1;break; } }else delay_ms(10); } }

2018-05-12

(STM32)ENC28J60网络模块实验

开机检测ENC28J60,如果检测不成功,则提示报错。在成功检测到ENC28J60之后,初始化uIP,并设置IP地址(192.168.1.16)等,然后监听80端口和1200端口,并尝试连接远程1400端口,80端口用于实现WEB Server功能,1200端口用于实现TCP Server功能,连接1400端口实现TCP Client功能。此时,我们在电脑浏览器输入http://192.168.1.16 ,就可以登录到一个界面,该界面可以控制开发板上两个LED灯的亮灭,还会显示开发板的当前时间以及开发板STM32芯片的温度(每10秒自动刷新一次)。另外,我们通过网络调试软件(做TCP Server时,设置IP地址为:192.168.1.103,端口为1400;做TCP Client时,设置IP地址为:192.168.1.16,端口为1200)同开发板连接,即可实现开发板与网络调试软件之间的数据互发。按KEY0,由开发板的TCP Server端发送数据到电脑的TCP Client端。按KEY1,则由开发板的TCP Client端发送数据到电脑的TCP Server端。LCD显示当前连接状态。

2018-05-12

(STM32)2.8寸TFTLCD屏虚拟键盘触摸程序

while(1) { key_num=AS608_get_keynum(0,170); if(key_num) { printf("\r\nkey_num:%d\r\n",key_num); if(key_num==1||key_num==3)Handle(); //处理 if(key_num==13)LED0=0; //开灯 if(key_num==15)LED0=1; //关灯 } }

2018-05-12

V0.7语音识别模块 新手视频教程(原版)

V0.7语音识别模块 新手视频教程(原版),详情请查看我的博客

2018-05-12

VueJS-APP案例

Web前端学习笔记——VueJS-APP案例所使用的代码。。。

2018-09-24

TodoMVC案例

Web前端学习笔记——AngularJS之TODOMVC案例使用的代码

2018-09-14

2018西门子杯中国智能制造挑战赛逻辑控制设计开发——六部十层电梯群控程序(省一等奖)

这是我今年参加省赛的程序,用SCL语言编写的,当时学校生产实习没有时间详细做,所以说做的比较仓促,无缘国赛,不过也得了省一还是很不错的,期望拿到程序的你可以完善我没有做完的智能群控调度算法,明年国赛战出成绩,加油

2018-09-10

RT-Thread中文文档

因为觉得翻官网的文档不方便,所以就全部整理下来了,有需要的就下载吧,3.0.3版本的,8.10整理的,除了评论一字不漏,查看起来绝对方便

2018-08-13

EMWIN实验5 绘制位图

“STemWin学习笔记——显示位图”博客中使用的代码。。

2018-06-24

EMWIN实验5 2D绘图

“STemWin学习笔记——2D绘图”博客中使用的代码。。。

2018-06-21

EMWIN实验4 数值显示

“STemWin学习笔记——数值显示”博客中使用的代码。。

2018-06-21

EMWIN实验3 文本显示

“STemWin学习笔记——文本显示”博客中使用的代码。。

2018-06-21

RAW_UDP实验

“LwIP学习笔记——RAW编程接口UDP实验”博客所用代码

2018-06-17

LWIP无操作系统移植

“LwIP学习笔记——LwIP无操作系统移植”博客中使用的代码

2018-06-17

STemWin无操作系统移植

“STemWin学习笔记——STemWin无操作系统移植”博客所用代码

2018-06-17

FreeRTOS任务壮态或信息查询实验

“FreeRTOS学习笔记——任务壮态或信息查询与任务运行时间统计”博客所用代码

2018-06-15

FreeRTOS列表项的插入和删除实验

"FreeRTOS学习笔记——FreeRTOS 列表和列表项"博客中使用的代码

2018-06-15

FreeRTOS 中断配置和临界段

"FreeRTOS学习笔记——FreeRTOS 中断配置和临界段"博客中所用代码

2018-06-13

案例实战信用卡欺诈检测数据集

“人工智能学习笔记——案例实战信用卡欺诈检测”博客中的数据集

2018-06-13

FreeRTOS任务挂起和恢复实验

“FreeRTOS学习笔记——FreeRTOS任务挂起和恢复实验”博客所用代码

2018-06-12

FreeRTOS任务创建和删除实验(静态方法)

“FreeRTOS学习笔记——FreeRTOS任务创建和删除实验(静态方法)”博客所用代码

2018-06-12

FreeRTOS任务创建和删除实验(动态方法)

"FreeRTOS学习笔记——FreeRTOS任务创建和删除实验(动态方法)"博客所用代码

2018-06-12

基于STM32与K60的智能设备源码

“个人项目——基于STM32与K60的智能设备”博客中的源码,包括K60、STM32、Android Studio

2018-06-08

基于STM32的MQ-3酒精浓度检测源码

“个人项目——基于STM32的MQ-3酒精浓度检测”博客中使用的代码

2018-06-08

空空如也

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

TA关注的人

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