自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

胡启智的博客

个人学习经历及项目作品

  • 博客(24)
  • 资源 (1)
  • 收藏
  • 关注

原创 虚拟机中安装Ubuntu 20.04,Liunx系统的常用命令以及工具安装

因工作学习 需求,在虚拟机软件VirtualBox安装了Ubuntu 20.04系统,本章节中主要介绍一些环境的安装以及Liunx中常用的一些命令。

2022-04-02 23:56:48 1507 1

原创 STM32单片机(八). ADC、DAC和DMA数据传输

对于STM32的ADC模数转换器的介绍以及配置在文章《STM32单片机(六). 传感器的使用》中已经详细介绍,在本章节中主要介绍DAC数模转换器以及DMA的使用。1、DAC转换1.1 数模转换器的介绍DAC(Digital to analog converter),数字模拟转换器,可以将数字信号转换为模拟信号。DAC可以输出电压模拟信号,用来去驱动其它器件。STM32F1中的DAC模块是由12位电压输出数模转换器,可以配置为8位或12位模式,也可以与DMA控制器配合使用。在12位模式下,数据可使用左对

2021-05-24 20:18:21 6875 12

原创 STM32单片机(七). USART串口、IIC和CAN通信

在简单的学习过了STM32中的简单外设以及中断系统后,在本章节中开始介绍STM32芯片中各个通信接口的配置。在计算机中,按数据传输方式可分为串行通信以及并行通信;按数据同步方式可分为异步通信和同步通信;按数据传输方向课分为单工、半双工和全双工通信。串行通信: 在一条数据线上,将数据按照二进制位依次传输,传输一位数据占据一个固定的时间长度。适用于计算机之间、计算机与外设之间的远距离通信,其具备占用传输线数量少、长距离传输时成本低的优点,但数据传输控制相比于并行通信复杂。并行通信: 在多条数据线上,一个数据

2021-05-03 20:01:32 7864 9

原创 STM32单片机(六). 传感器的使用

传感器是单片机外围电路中最常见的模块,在搭配了各种形式的传感器电路后,就可以采集到的更多的环境信息。在本章节中,主要介绍呼吸灯、温度传感器、RTC实时时钟以及红外遥控模块的控制使用。1、PWM实现呼吸灯的效果1.1 PWM脉冲宽度调制PWM是利用单片机的数字输出来对模拟电路进行控制的技术,其应用包含电机控制、通信、开关电源等等。PWM是一种对模拟信号进行数字编码的方法,其本质上还是数字信号,也就是在任意时刻端口输出要么是高电平要么就是低电平,电压或者电流是以一种通或端的重复脉冲序列被加到模拟负载上。因

2021-04-22 22:08:51 15467 10

原创 STM32单片机(五). 中断系统

中断的概念: 中断是当单片机的CPU在执行程序时,外部或内部发生了一个随机事件,导致CPU暂时中断正在执行的程序,转去执行一段特殊的服务程序也就是中断服务子程序或中断处理程序。当处理完服务程序后,返回到被中断的程序继续执行,这样的一个过程就被称为中断,引发这个中断的事件被称为中断源。中断在stm32中还被分为相应的优先级,低优先级的中断会被高优先级中断所中断,即为中断的嵌套。在Crotex-M3内核中支持256个中断,其中包含16个内核中断以及240个外部中断。STM32F10X芯片中只用了其中的84个中断

2021-04-18 21:26:26 4893 5

原创 STM32单片机(四).LED、蜂鸣器和数码管的操作

在进行一款单片机学习时,最基本也是最简单的外设就是控制I/O口的高低电平。LED、蜂鸣器以及数码管这些都是可以作为外围电路连接在单片机的I/O口上,进而可以实现通过单片机对其进行控制。在本章节中,会以这三种外围电路的控制来学习stm32单片机中的外设资源—GPIO(General-purpose input/output)。1、点亮LED灯所使用的基于stm32f103zet6芯片的开发板中,关于LED外围电路的设计如下图中所示。从图中可以看出,只有当二极管(LED)的阴极电压为0V(低电平)时其会.

2021-04-14 22:44:56 4998 7

原创 STM32单片机(三).STM32单片机的开发方法

经过前两章节对STM32的简单介绍,在接下来的几个章节中开始进行STM32单片机的软件开发实践,所使用到的工具有Keil5、STM32CubeMX以及串口软件。对于STM32F1系列的单片机,其存储器有4GB的空间,包含了程序存储器、数据存储器、寄存器以及I/O单口。存储器的地址是由出厂时分配或者用户进行分配,这个分配的过程被称作“存储器映射”,在分配一个地址就叫做“重映射”。在ARM架构中,将4GB空间分成可8块区域,每块512MB。这8块区域分别是Block 0(Flash,地址0x0000000.

2021-04-10 22:15:02 8558 1

原创 STM32单片机(二).STM32系列单片机的介绍

STM32系列芯片是为要求高性能、低成本、低功耗的嵌入式应用设计的ARM Cortex M0, M0+, M3, M4和M7内核,按照内核架构分成不同的产品。其主流的产品有STM32F0、STM32F1和STM32F3;超低功耗产品STM32L0、STM32L1、STM32L4以及STM32L4+;性能产品STM32F2、STM32F4、STM32F7以及STM32H7。在本文中以介绍笔者使用过的两款单片机STM32F103ZET6以及STM32F407IG为主,此外还会介绍常用的STM32F407VET6

2021-04-07 22:03:33 37406 1

原创 STM32单片机(一).相关的开发工具软件

结束了C51和Arduino单片机的入门学习,接下来的几篇文章是关于STM32单片机的学习总结。对于stm32我也只是个初学者,因此在文中出现理解不到位的地方敬请各位指出,与大家一起共同学习。1、Keil uVision 5经过对51单片机的学习,就可以了解到Keil提供了一套包含C编译器、宏汇编、连接器、库管理和功能强大的仿真调试器在内的完整开发方案,通过集成开发环境(uVision)将这些东西组合在了一起。在Keil公司被ARM收购后,其就为Arm系列的推出了MDK-ARM软件,一个集代码编辑器,编

2021-04-03 22:23:49 9078

原创 Arduino单片机(五).基于OpenWrt模块的无线视频遥控小车设计

1、功能介绍本项目所设计的机器人需要实现的功能为:操作员在操作终端(手机或PC端)通过Wi-Fi连接到小车上Wi-Fi模块所在的网络中,向其发出相关操作指令,在Wi-Fi模块接收相关的数据指令并通过UNO R3单片机对这些数据进行解码,最后按照不同的指令信息利用单片机控制相应的外围电路从而实现遥控控制。与此同时,安装在机器人上的摄像头可以通过Wi-Fi网络将视频信息传递到相应操作终端,只要在同一个Wi-Fi网络下便可以在多个设备上直观地查看。实现了终端对底层电路的控制以及底层信息的回传,以便于操作员实时了

2021-03-31 23:20:49 2168 1

原创 Arduino单片机(三).Arduino UNO系列的简单项目

1、UNO R3的端口输出实验1.1 实验介绍对于单片机中最为经典的控制电路就是流水灯实验,流水灯也称作跑马灯,利用单片机的IO口输出高电平(HIGH)与低电平(LOW)进而控制外部电路中多个LED灯以不同时间频率的亮灭。在实验中使用UNO开发板控制外围电路中的6个LED灯,使其以1s的时间间隔依次亮起,其电路图如下所示:1.2 核心代码int Start= 2;int Num = 6;int Index = 0;void setup(){ for (int i = Start; i &

2021-03-24 23:09:44 8556

原创 Arduino单片机(二).Arduino系列单片机的介绍

1、经典入门级—Ardunio UNO R31.1 性能资源Arduino UNO R3是一款基于Atmega328的单片机开发板,其板载14个数字IO端口0到13(其中6个端口可以作为PWM信号输出功能使用);6个模拟输入(可做数字信号输入和输出功能)端口A0~A5;1个16MHz的晶体振荡器;一个USB接口;1个DC电源插座;1个ICSP header以及1个复位按钮。Arduino UNO R3的详细参数如下表中所示微处理器ATmega328P数字输入/输出引脚14路工作

2021-03-20 23:16:43 14846 2

原创 Arduino单片机(一).开发软件的安装及编程语言

Arduino单片机(一).开发软件的安装及编程语言

2021-03-16 23:11:20 4055

原创 一点小小的感悟

从2017年发表了第一篇csdn文章,到现在已经过去了快五年的时间。五年前的我是一名学生,五年后的今天我依旧是一名学生,区别是从一名大二学生成为了现在的研二学生。这一路走来,经历了很多很多事情,也曾雄心壮志的立下了很多flag,当然很多的时候也都变成了flag=true。尽管在别人眼中我看起来是在成长,但总感觉自己有些浮躁有很多东西还未来得及沉淀下来。记得本科时带过比赛的老师曾说过“大部分事情都是可以通过自己的努力去做到的,没成功是因为坚持的时间不够”。想想现在的自己,也许正是因为坚持才一步步走到了今天,正

2021-03-12 21:30:04 264 3

原创 51单片机(十).避障与循迹小车

实验简介使用STC89C53单片机作为主控制器芯片实现了带全向轮的两轮驱动避障以及循线小车,感知模块为超声波和红外传感器。本实验分为3个独立的部分:1、利用超声波实现小车的避障功能;2、利用红外传感器实现避障功能;3、利用红外传感器实现循线功能。元器件介绍如下是一款常见的超声波模块HC-SR04的外观图,HC-SR04超声波测距模块可提供2cm-400cm的非接触式距离感测功能,测距精度可达高到3mm;模块包括超声波发射器、接收器与控制电路。使用51单片机采集HC-SR04数据时就要用到AD

2020-05-24 22:30:52 12282 9

原创 51单片机(九).51单片机简单项目—万年历和温度采集

1、实验简介实现郭天祥老师视频中的DS12C887时钟万年历实验以及一个使用DS18B20进行温度采集的实验。两个实验具体实现的功能如下所示:1、通过读取按键修改时间、闹钟信息(通过LCD1602显示);2、闹钟触发时,蜂鸣器报警;3、将采集到的温度信息显示在LCD或数码管上。2、电路结构图如Fig 1所示,DS12C887定时闹钟电路的结构图由四部分组成:数码管显示模块,按键输入模块,蜂鸣器报警模块以及DS12C887时钟电路。在系列(五)、(七)中详细介绍了数码管以及按键部分,在此不做

2020-05-20 22:37:26 1555

原创 51单片机(八).单片机的I2C与串口通讯

STC89C52的I2C与串口通信I2C总线单片机电路中的I2C总线(Inter Integrated Circuit Bus)是一种Philips公司推行的串行总线标准。连接在总线上的外设通过总线寻址,是具有总线仲裁和高低速设备同步等功能的高性能多主机总线。I2C总线的工作原理1、总线由串行数据线SDA和串行时钟线SCL构成,可发送和接受数据。2、所有连接在I2C总线上的器件和接口电路...

2020-03-30 21:59:03 6766

原创 51单片机(七).单片机输入电路实践——按键键盘的使用

单片机输入电路中最常用的是键盘,键盘分为两类:一类是独立键盘;另一类是矩阵键盘。下面分别是51单片机外围电路中常见的独立按键电路以及4*4矩阵键盘电路:独立键盘矩阵键盘对于键盘操作还有一个重要的问题,按键抖动现象。即按一下按键然后松开手,由于单片机运行速度很快,能够多次运行到键盘程序,往往会认为按了多次按键。消除键盘抖动的方法有硬件消抖和软件消抖。最常用的是软件消抖,即在...

2020-03-20 11:21:15 4291

原创 51单片机(六).单片机输出电路实践——LCD1602与LCD12864的使用

一、LCD简介LCD作为一种常见的外设,是广泛应用在单片机外围电路的一种显示设备。LCD1602和LCD12864是典型的单片机显示电路中常用的模块,两种该模块都属于点阵式液晶显示模块。1、LCD1602模块1602液晶也叫160字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。1602LCD是指显示内容为16*2,显示两行,每行可以显示16个字符液晶模块。液晶160...

2020-03-18 22:33:33 8082 1

原创 51单片机(五).单片机输出电路的实践——数码管显示电路的设计

一.数码管显示电路设计 数码管分为共阴和共阳两种,一种是将LED内部所有的阳极连 到一起,并通过com端引出。共阴则反之。当锁存使能端为高时,这些器件的锁存对于数据是透明的(也就是说输出同步)。当锁存使能变低时,符合建立时间和保持时间的数据会被锁存。 数码管显示有静态显示和动态显示两种,静态显示即为对数码 管的每一段进行编码控制达到显示指定数字的目的。动态显示即 通过...

2018-03-16 14:48:39 11121

原创 51单片机(四).C51编程语言

一.常量与变量1.常量又称为标量,在程序执行过程中不能改变,常量数据类型有整形(int)、浮点型(float)、字符型和字符串型。应用中一般使用“#define”定义在程序中经常用到的常量。2.变量是一种在程序执行过程中,数值不断变化的量。C51对变量的定义格式:【存储种类】数据类型【存储器类型】变量名C51中的四中存储种类:auto(自动)、extern(外部)、static(静态)...

2017-10-29 15:39:56 14165

原创 51单片机(三).单片机的最小系统

三.CPU时序与数值编码 1.时钟周期也称振荡周期,时钟脉冲频率的倒数,越高,工作速度越快。2.机器周期完成一个基本操作所需要的时间,规定51单片机的一个机器周期就有12个时钟周期,振荡脉冲的12分频。3.指令周期执行一条指令所需的时间。4.单片机的数值与编码二进制与十六进制之间的转换四.单片机的最小系统 1.复位电路2.晶振电路3.最小系统注...

2017-10-25 16:34:14 1389

原创 51单片机(二).STC89C52单片机的引脚功能

1.主电源引脚VCC和VSS电源VCC接+5V,VSS接地端,即公共参考地2.时钟电路引脚XTAL1和XTAL2 STC89C52芯片内部设置了一个反相放大器,XTAL1为放大器输入端;XTAL2为放大器的输出端,也是内部时钟发生器的输入端。使用自激震荡方式时,XTAL1和XTAL2外接石英晶振,内部振荡器按照晶振频率振荡,产生时钟信号。3.控制信号引脚

2017-10-23 14:12:20 55366

原创 51单片机(一).初学STC89C52单片机

一.STC89C52单片机的基本结构1.CPU 运算器和控制器 单片机的核心构成部分之一2.内部数据存储器 存放可读的数据,如程序中的定义。3.程序存储器 8KB,(0000H~1FFFH)存放程序,原始数据。4.定时/计算器 3个定时器/计算器,即可设置成计

2017-10-23 13:38:38 7093

128x64取字软件.zip

用于没有汉字库的lcd12864液晶屏的取字工作,同时也支持图片的取模,实测可用且无广告。如果购买的显示屏模块有对应的汉字库,则不需要转二进制!!!

2020-03-19

空空如也

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

TA关注的人

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