自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

莘莘的博客

阅读使人充实,会谈使人敏捷,写作与笔记使人精确

  • 博客(73)
  • 收藏
  • 关注

原创 C语言计算任意位数的水仙花数

【代码】C语言计算任意位数的水仙花数。

2024-04-06 17:01:37 177 3

原创 《VHDL数字系统设计与应用》在校课程记录——实验七:计数器设计实验

一、实验内容:1、设计一个 5 进制减法计数器,并将结果显示在数码管上。2、设计一个有时钟使能的 2 位十进制加法计数器,并将结果显示在数码管上。二、实验步骤:数码管显示参照《VHDL数字系统设计与应用》在校课程记录——实验六:七段数码显示设计实验1、实验一:自建模块 VHDL 模型:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity SUB_5 is port (

2021-11-09 23:34:23 1515 2

原创 《VHDL数字系统设计与应用》在校课程记录——实验六:七段数码显示设计实验

一、模块准备:创建工程时将老师给的显示模块和分频模块的 .vhd 文件加入到工程中:1、显示模块的 VHDL 模型:--//**-----------------文件信息-------------------------------------//**文 件 名: decl7s.vhd--//**创 建 人: --//**最后修改日期: --//**描 述: 显示模块--//** --//*----------------

2021-11-03 18:42:03 2281

原创 《VHDL数字系统设计与应用》在校课程记录——实验四:组合逻辑3-8译码器的设计实验

一、概述:二、VHDL 描述:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY decoder_38 IS PORT( i : IN STD_LOGIC_VECTOR(2 DOWNTO 0); en : IN STD_LOGIC; y : OUT STD_LOGIC_VECTOR(7 DOWNTO 0) );END decoder_38;ARCHITECTURE one OF decoder_38 IS BEGIN P

2021-11-01 23:46:08 474

原创 《VHDL数字系统设计与应用》在校课程记录——实验五:触发器设计实验

一、D 触发器:1、概述:2、VHDL 描述:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity DFF1 is port ( clk,d : in std_logic; q : out std_logic );end entity;architecture rtl of DFF1 isbegin p1:process(clk)begin if(clk'

2021-11-01 22:58:46 917

原创 《VHDL数字系统设计与应用》在校课程记录——实验三:基本组合逻辑电路的 VHDL 模型

一、新建工程二、新建 VHDL 文件:1、新建 VHDL File:2、保存文件注意:文件名必须和实体名一样三、编写程序:1、可以插入 VHDL 程序模板:或者右击选择Insert Template打开:2、编写程序:如二选一数据选择器:library ieee;use ieee.std_logic_1164.all;entity mux2_1 is port ( a,b,s : in bit; y : out bit );end entity;a

2021-10-20 15:58:56 393

原创 《VHDL数字系统设计与应用》在校课程记录——实验二:全加器的设计

一、绘制原理图:1、半加器原理图:2、生成波形图:二、生成模块(半加器模块):三、使用生成的“半加器”模块绘制1位全加器电路图:1、一位全加器原理图:2、添加“半加器”元件:3、生成波形图:四、下载程序到开发板:1、接入仿真器,打开开发板电源2、查看引脚定义并配置引脚:引脚定义:打开引脚配置界面:示例:3、仿真:4、验证...

2021-10-14 18:47:13 694 1

原创 《VHDL数字系统设计与应用》在校课程记录——实验一:EDA软件熟悉与使用

一、新建工程:1、点击新建工程:2、点击 Next:3、选择工程存放路径,填写工程名字,点击 Next:4、选择导入已有工程,不需要则直接 Next:5、选择芯片型号,此处为Cyclone Ⅲ系列EP3C25F324C8芯片,点击 Next:6、选择 EDA 工具,此处使用内部的工具即可,全部选择 None,点击 Next:7、对照信息没问题后,点击 Finish:二、新建文件:1、新建原理图文件:原理图为.bdf文件2、保存原理图文件:选择路径后,输入文件名,点击保

2021-10-13 13:20:51 489

原创 STM32CubeMX——OLED开发基础(HAL 库)

一、开发基础概述:1、0.96 寸 OLED 模块接口定义:SPI 接口模块:GND   电源地VCC   电源正(3 ~ 5.5V)D0    OLED 的 D0 脚,在 SPI 和 IIC 通信中为时钟管脚D1    OLED 的 D1 脚,在 SPI 和 IIC 通信中为数据管脚RES    OLED 的 RES 管脚,用于复位(低电平复位)DC    OLED 的 D/C 管脚,数据和命令控制管脚CS    OLED 的 CS 管脚,片选管脚IIC 接口模块:GND   

2021-08-31 17:45:57 19544 51

原创 STM32CubeMX——ADC模数转换器开发基础(HAL 库)

一、模数转换器(ADC)概述:

2021-08-25 16:44:41 1920

原创 STM32CubeMX——串口数据收发基础(HAL 库)

一、STM32CubeMX 中关于 USART 的配置:1、配置异步通信:2、此处硬件流控制不使能:3、设置数据属性:4、使能 USART1 中断:此处有需要则使能 USART1 中断:二、代码编写:1、HAL 库中关于串口收发重要函数:① 阻塞式发送函数:HAL_StatusTypeDef HAL_UART_Transmit(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout);

2021-08-17 17:30:48 24685 10

原创 STM32CubeMX——定时器开发基础(HAL 库)

一、STM32 的常见的定时器资源:1、系统嘀嗒定时器 SysTick2、看门狗定时器 WatchDog3、实时时钟 RTC4、基本定时器:TIM6、TIM75、通用定时器:TIM2、TIM3、TIM4、TIM56、高级定时器:TIM1、TIM8系统嘀嗒定时器SysTick:这是一个集成在 Cortex M3 内核中的定时器,它并不属于芯片厂商的外设,也就是说使用 ARM 内核的不同厂商,都拥有基本结构相同的系统定时器。主要目的是给 RTOS 提供时钟节拍做时间基准。通用定时器:在基

2021-08-16 19:35:51 1846

原创 STM32CubeMX——外部中断基础(HAL 库)

1、

2021-08-14 16:35:18 7304 3

原创 STM32CubeMX 开启一个工程(基于 HAL 库点亮一个 LED)

1、打开 STM32CubeMX,点击File栏目,点击New Project:或者在主界面New Project中点击ACCESS TO MCU SELECTOR:2、搜索并选择要使用的 stm32 芯片型号,点击Start Project:3、点击System Core,点击SYS选择仿真方式,此处我使用ST-Link仿真,选择如下:4、配置时钟源:这里使用外部晶振(外部时钟源):可以看到图中芯片相应的引脚变为绿色5、配置时钟:选择Clock Configuration栏目:此处

2021-08-08 23:52:44 1995 6

原创 STM32CubeMX 安装固件支持包

一、方法 1(推荐):1、打开 STM32CubeMX,点击Help,点击Manage embedded software packages:2、勾选需要下载的固件支持包(选择芯片型号,版本),点击Install Now:3、如图已安装成功:4、固件仓库路径(可自行修改):二、方法 2:1、如果已经下载好固件支持包,可以直接放入 STM32CubeMX 的默认搜索路径,打开 STM32CubeMX,点击Help,点击Updater Settings:2、可以看到 STM32Cub

2021-08-05 18:02:57 14765 2

原创 STM32——LED点灯(MiniSTM32F103RCT6,寄存器版本)

1、查看原理图:   由图可知,该开发板的LED0和LED1分别接PA8和PD2,且欲点亮LED0和LED1,需要给PA8和PD2置高电平

2021-07-31 15:55:10 2728 3

原创 STM32 使用串口下载程序( ISP 一键下载)

USB 转串口模块在开发板上是一个独立的模块,可以通过调帽与其他串口连接,USART1/2/3/4/5,只有USART1才具有串口下载的功能一、硬件连接:1、BOOT0和BOOT1接地,RXD/TXD接PA9/PA10,开发板默认的调帽,不需要动2、用USB线连接电脑和开发板的USB转串口接口3、打开电源开关,给开发板供电二、软件下载与使用:1、使用FLYMCU软件:2、下载程序需要用到.hex文件,由Keil MDK编译生成,需要设置,打开Keil MDK,点击魔术棒按钮Options f

2021-07-27 16:12:40 15368 1

原创 STM32 开发板 ST-Link 调试指南

1、仿真器测试:把仿真器用 USB 线连接电脑,无需安装驱动,连接好 USB 线后,此时仿真器无需连接开发板,如果红灯亮 1s,然后绿灯亮则表示正常。2、配置 Keil MKD:打开一个工程点击 Options for target:选择 Debug,选择要设置使用的仿真器类型:选择完成后点击 Settings:https://www.pianshen.com/article/8402993950/...

2021-07-26 18:31:54 7088 3

原创 STM32——新建 Keil MDK 5 工程(寄存器版本)

注:本文仅依照加粗字体和图片可快速新建 Keil MDK 5 工程打开 Keil MDK 5,点击Project > New μVision Project,如图:选择一个路径,新建一个TEST文件夹,在TEST文件夹里新建USER文件夹,将工程名字设为test,保存在USER文件夹里面,如图:点击保存后会弹出对话框,选择自己要使用的芯片型号,如图:此处我选择STM32F103RC,点击 OK!!注意: 一定要安装对应的器件 pack 才会显示这些内容弹出Manage Run-T

2021-07-24 19:41:25 2989 5

原创 安装适合 I.MX6ULL 的交叉编译器

arm 交叉编译工具链可以在 Linaro 官网下载

2021-07-19 15:39:15 125

原创 shell 脚本入门

一、什么是shell 脚本:如果此时需要在终端中输入一系列命令完成一些操作,但是我们一条一条输入命令,这样就会很麻烦。那么有没有一种方式可以将很多条命令放到一个文件里面,然后直接运行这个文件即可?有!就是 shell 脚本!shell 脚本类似 windows 的批处理文件,shell 脚本就是将连续执行的命令写成一个文件。shell 脚本提供数组、循环、条件判断等功能。shell 脚本一般是 Linux 运维或者系统管理员需要掌握的。二、shell 脚本写法:shell 脚本是个纯文本文件,命令

2021-07-16 23:26:04 17212 2

原创 make 工具和 Makefile 基础入门

一、编辑 Makefile 文件当文件有几十、上百甚至上万个的时候用终端输入 gcc 命令的方法显然是不现实的,为此提出了一个解决大工程编译的工具:make,描述哪些文件需要编译、哪些需要重新编译的文件就叫做 Makefile,Makefile 就跟脚本文件一样,Makefile 里面还可以执行系统命令。使用的时候只需要一个 make 命令即可完成整个工程的自动编译,极大的提高了软件开发的效率。在工程目录下创建Makefile文件:Makefile 和 .c 文件是处于同一个目录的,在Makefil

2021-07-13 18:48:52 193

原创 Ubuntu / Linux 下文件权限管理

一、Ubuntu / Linux 文件权限文件权限是指不同的用户或用户组对某个文件拥有的权限,文件的权限分为三种:r:可读(r=4)w:可写(w=2)x:可执行(x=1)文件描述形式如下:表示:如:rw- rw- r-- 权限的十进制表示是 664如:rwx rwx rwx 权限的十进制表示是 777二、Ubuntu / Linux 下修改文件权限chmod [参数] [文件名/目录名] //修改文件权限-c 效果类似 -v 参数,但仅回显更改的部分-f 不显示错误信

2021-07-12 17:09:48 347

原创 Ubuntu 下的磁盘管理

一、Ubuntu 磁盘文件/dev/sd*文件,此类文件是磁盘设备文件,并不能直接访问磁盘,必须要将磁盘挂载到某个目录下才可以访问。进入/dev路径下,可以拔插 U 盘,查看 U 盘的设备文件是哪一个。二、磁盘和目录的容量查询命令df:列出文件系统的整体磁盘使用量,主要查看单个文件系统的使用量。du:评估某个目录下文件的使用量大小,主要查看单个文件的大小。三、磁盘的挂载、卸载、分区和格式化1、磁盘的挂载和卸载mount // 挂载umount // 卸载Ubuntu 插入 U

2021-07-11 17:51:08 6361

原创 Ubuntu 没有识别 USB3.0

1、关闭 Ubuntu 虚拟机2、打开虚拟机设置:选择 USB 控制器,选择 USB 兼容性:USB 3.1点击确定保存3、打开 Ubuntu 虚拟机4、查看是否存在 USB3.0 接口:lsusb此时已存在 USB3.0 接口5、此时插入 USB3.0 设备,虚拟机有反应...

2021-07-08 14:38:04 3418

原创 Ubuntu18.04 系统时间修改为国内时间

sudo timedatectl set-local-rtc 1sudo timedatectl set-timezone Asia/Shanghai

2021-07-08 14:07:07 712

原创 智能家居 (7) ——整合篇

????1、前序文章:【智能家居 (1) ——工厂模式继电器控制灯】【智能家居 (2) ——工厂模式火焰报警器】【智能家居 (3) ——语音识别控制端线程】【智能家居 (4) ——网络控制端线程】【智能家居 (5) ——前四章内容整合】【基于 Libcurl 通过 https 访问翔云 OCR 实现人脸识别】【树莓派安装mjpg-streamer使用摄像头】【智能家居 (6) ——人脸识别控制开关电磁锁】文章目录????1、前序文章:????1、main.c 文件(主函数):????2、分

2021-07-02 15:35:51 908 1

原创 智能家居 (6) ——人脸识别控制开关电磁锁

????1、前序文章:【智能家居 (1) ——工厂模式继电器控制灯】【智能家居 (2) ——工厂模式火焰报警器】【智能家居 (3) ——语音识别控制端线程】【智能家居 (4) ——网络控制端线程】【智能家居 (5) ——前四章内容整合】【基于 Libcurl 通过 https 访问翔云 OCR 实现人脸识别】【树莓派安装mjpg-streamer使用摄像头】????2、main.c 函数:通过语音控制开启人脸识别,摄像头亮灯2秒拍照此 main.c 函数仅用于 “人脸识别控制开关电磁锁”

2021-07-01 14:15:15 1463 1

原创 基于 Libcurl 通过 https 访问翔云 OCR 实现车牌识别

Libcurl 安装(Unix环境)Libcurl 实现 Http 协议访问网页一、准备工作:1、 购买平台车牌识别次数2、 实现车牌识别所需参数(以图片为 base64 流为例):① 接口地址:https://netocr.com/api/recogliu.do② 调用方法:post接口接收参数(必传参数):① 需要识别的车牌图片的 base64 流(字符型)② 用户 key 和 secret 值,前往个人中心查看用户 OCR Key 和 OCR Secret 值(字符型)③ 指定识

2021-06-30 16:05:33 176 2

原创 基于 Libcurl 通过 https 访问翔云 OCR 实现人脸识别

Libcurl 安装(Unix环境)Libcurl 实现 Http 协议访问网页一、准备工作:1、 购买平台人脸识别次数2、 实现人脸识别所需参数(以图片为 base64 流为例):① 接口地址:https://netocr.com/api/faceliu.do② 调用方法:post接口接收参数(必传参数):① 需要识别的两张图片的 base64 流(字符型)② 用户 key 和 secret 值,前往个人中心查看用户 OCR Key 和 OCR Secret 值(字符型)③ 指定识别

2021-06-30 15:11:50 271 1

原创 树莓派设置静态 IP(固定 IP)

????方法一:命令行设置1、进入/etc/dhcpcd.conf文件sudo vi /etc/dhcpcd.conf2、添加配置项(需要固定的 IP 地址)追加到文件末尾无线:interface wlan0inform 192.168.43.100有线:interface eth0inform 192.168.43.1003、保存,退出,然后重启树莓派sudo reboot4、查看可以看到,IP 地址已被固定????方法二:图形界面设置1、右击右上角网络图标:单击W

2021-06-29 13:58:10 21093 7

原创 树莓派更换国内软件源与系统源

修改地理位置较近的镜像源,提高下载速度,提高连接成功率。1、备份原有软件源和系统源sudo cp /etc/apt/sources.list /etc/apt/sources.list.baksudo cp /etc/apt/sources.list.d/raspi.list /etc/apt/sources.list.d/raspi.list.bak2、修改软件更新源配置文件sudo nano /etc/apt/sources.list将原有内容每行最前面加#注释,然后添加如下内容(以清

2021-06-28 17:02:14 445 1

原创 树莓派配置wifi

树莓派网络分为有线网络和无线网络两种连接方式,有线网络只需要一根网线接入,设备自动给树莓派分配 IP 地址,基本不需要进行设置。但在使用无线网络连接时,需要进行相关操作。▲先进行检查的相关操作:1、确认设备节点是否存在ls /sys/class/net出现 wlan0 设备节点,说明 wifi 设备被识别且无线网卡驱动已加载。通过以下命令确认能否搜索到你想要连接的 wifi:sudo iw dev wlan0 scan |grep SSID????1、在 boot 分区下新建 wpa_

2021-06-28 15:46:51 2050 2

原创 树莓派串口登录

第一次登录树莓派,如果没有屏幕,我们可以选择通过串口连接 PC 端,使用 PC 端终端仿真工具登录。1、将 SD 卡使用读卡器连接到电脑上并打开 SD 卡盘符,修改以下文件(1) 修改 config.txt 文件:在文件最后添加以下句段dtoverlay=pi3-disable-btstart_x=1gpu_mem=128(2) 修改 cmdline.txt 文件:所有内容更换为以下句段dwc_otg.lpm_enable=0 console=serial0,115200 console=t

2021-06-28 00:04:59 266 1

原创 树莓派开启SSH

官方提供的系统镜像默认是关闭 SSH 服务的,为了方便开发,我们可以配置SSH。▲方法一:1、 命令行输入:sudo raspi-config进入到树莓派系统配置界面2、 选择 “Interface Options” 进入后选择 “SSH” 确定。▲方法二:1、 无屏幕开启 SSH 设置可以通过 PC 设置。将 SD 卡使用读卡器连接到电脑上并打开 SD 卡盘符,新建 “SSH” 文件(无后缀)即可。(文件无内容)...

2021-06-27 23:24:17 4468 2

原创 Libcurl 实现 Http 协议访问网页

Libcurl 下载地址Libcurl 官网一、使用 Libcurl 访问步骤:1、调用curl_global_init()初始化 libcurl2、调用curl_easy_init()函数得到 easy interface 型指针3、调用curl_easy_setopt()设置传输选项4、根据curl_easy_setopt()设置的传输选项,实现回调函数以完成用户特定任务5、调用curl_easy_perform()函数完成传输任务6、调用curl_easy_cleanup()释放内存

2021-06-25 22:44:37 407 1

原创 Libcurl 安装(Unix环境)

libcurl 下载地址解压:tar xvf curl-7.71.1.tar.gz安装:(1)配置:在curl-7.71.1路径下执行:./configure --prefix=$PWD/_install// --prefix 指定安装路径// --prefix=$PWD/_install 会在当前目录下生成 _install 文件夹,并安装在此文件夹(2)编译:make(3)安装:make install此时已生成_install文件夹(4)!!查看cu

2021-06-24 16:26:43 746 1

原创 智能家居 (5) ——前四章内容整合

1、main.c 文件(主函数):2、往期文章讲解:【智能家居 (1) ——工厂模式继电器控制灯】【智能家居 (2) ——工厂模式火焰报警器】【智能家居 (3) ——语音识别控制(多线程)】【智能家居 (4) ——网络控制(多线程)】...

2021-03-24 22:51:42 2255 6

原创 TCP的三次握手四次挥手

目录:1、TCP(Transfer control protocol)传输控制协议(1)两种传输模式:(2)数据方向:(3)字段简介:(4)三次握手:(5)四次挥手:2、常见面试题:1、TCP(Transfer control protocol)传输控制协议(1)两种传输模式:TCPUDP面向有连接面向无连接可靠高速常用于点对点常用于点对面如:微信通话如:直播(2)数据方向:在互联网的通信中,永远是客户端主动连接到服务端(3)字段简介:序列号s

2021-03-02 16:37:32 190 2

原创 简述 OSI 网络七层模型

第7层应用层提供为应用软件而设的接口,以设置与另一应用软件之间的通信,各种应用程序协议,如 HTTP、FTP、SMTP、POP3第6层表示层把数据转换为能与接收者的系统格式兼容并适合传输的格式,信息的语法语义及它们的关联,如加密解密、转换翻译、压缩解压缩第5层会话层不同机器上的用户之间建立及管理会话,在数据传输中设置和维护计算机网络中两台计算机之间的通信连接第4层传输把传输表头(TH)加至数据以形成数据包(传输表头包含了所使用的协议等发送信息)第...

2021-02-28 17:49:08 2912 2

空空如也

空空如也

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

TA关注的人

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