自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 通过Quartus II实现Nios II编程

Nios II处理器能够满足各种应用对32位嵌入式微处理器的需求,用户可以根据自己的系统需求选择合适的处理器型号,以达到性能和成本的最佳平衡。,因为Lite版本不支持高性能的Nios II,编译的时候会报错,若想使用Quartus需要标准版及以上版本,如果是标准及以上版本就可以选择NIos II/f。然后再将其更名为cpu。配置片上存储器 On-Chip Memory,选择Basic目录下的On-Chip Memory,并将总存储大小改为40k,完成配置,然后改名为onchip_ram。

2025-04-23 21:44:48 790

原创 守护进程编程、GDB调试以及外网连接树莓派

守护进程(Daemon Process)是一种特殊的后台进程,它独立于控制终端,并且周期性地执行某种任务或者等待处理特定事件。守护进程通常在系统启动时开始运行,直到系统关闭才结束,它们为系统提供各种服务,例如 Web 服务器、邮件服务器、日志记录等GDB 全称“GNU symbolic debugger”,从名称上不难看出,它诞生于 GNU 计划(同时诞生的还有 GCC、Emacs 等),是 Linux 下常用的程序调试器。

2025-04-18 21:38:30 971

原创 DDS函数信号发生器设计

直接数字频率合成(Direct Digital Frequency Synthesis,简称DDS或DDFS)是一种应用数字技术产生信号波形的方法,它是由美国学者J. Tierncy、C.M. Rader和B. Gold在1971年提出的,他们以数字信号处理理论为基础,从相位概念出发提出了一种新的直接合成所需波形的全数字频率合成方法。

2025-04-15 16:44:33 908

原创 Quartus II的IP核调用及仿真测试

IP核就是知识产权核或知识产权模块的意思,在EDA技术开发中具有十分重要的地位。美国著名的Dataquest咨询公司将半导体产业的IP定义为“用于ASIC或FPGA中的预先设计好的电路功能模块”。IP主要分为软IP、固IP和硬IP。软IP是用Verilog/VHDL等硬件描述语言描述的功能块,但是并不涉及用什么具体电路元件实现这些功能。固IP是完成了综合的功能块。硬IP提供设计的最终阶段产品——掩膜。[1]

2025-04-12 19:06:03 1357

原创 随笔1 认识编译命令

pkg-config:动态获取OpenCV的头文件和库文件路径。Makefile:通过变量和规则简化编译流程。CMake:更高级的构建工具,适合复杂的项目。

2025-04-06 23:55:19 447

原创 关于Ubuntu系统的远程控制及文件传输

在Session -> Host Name中输入Ubuntu或树莓派的IP地址。将虚拟机的网络连接设置为“桥接模式”,这样虚拟机的网络会直接连接到物理网络。X11协议是用于在远程服务器上运行图形界面程序,并将图形界面显示到本地。数据传输效率较高,但需要本地安装X Server(如Xming)。打开PuTTY,输入Ubuntu或树莓派的IP地址。输入Ubuntu或树莓派的IP地址,用户名和密码。确保树莓派的Wi-Fi或有线网络连接正常。使用user1或user2登录。适用于需要完整桌面环境的场景。

2025-04-06 23:21:31 873

原创 FPGA状态机思想实现流水灯及HDLBits学习

选项,配置ModelSim环境,如果Modelsim版本为INTEL FPGA Edition,那么文件地址应为安装文件内。按照顺序先编辑名字,然后浏览刚才的.vt文件,最后点击Add添加达到如下图效果,再点击OK。把仿真代码copy到该文件内,并在第一行声明时间扫描间隔。,并在flie中添加生成的led_fsm.vt文件。修改led_fsm.vt文件内容。网站,完成组合逻辑(

2025-04-04 15:19:52 1235

原创 Linux系统调用编程

抽象层次:Linux虚拟内存管理是操作系统级别的抽象,而STM32的物理内存映射是硬件级别的直接访问。隔离性:Linux虚拟内存管理提供进程间的隔离,而STM32的物理内存映射没有隔离机制。灵活性:Linux虚拟内存管理更灵活,支持动态内存分配和交换空间,而STM32的物理内存映射是固定的。通过这次实验我理解进程和线程的概念,并在Linux系统中查看和终止进程。能够区分Linux的虚拟内存管理和STM32的物理内存映射。

2025-04-04 13:07:36 648

原创 Ubuntu与本地用户交流是两种小方法

Linux的talk命令是一个视觉通信程序,它将你终端的行复制到另一个用户的终端,就像即时通讯服务一样。Talk命令在Unix-like操作系统中提供了一个文本聊天界面,让你可以实时与其他已登录的用户进行交流。:这个程序应该支持本地用户之间的实时交流,因此需要一个服务器端来管理连接和转发消息,以及一个客户端来发送和接收消息。因此需要使用两个终端,一个充当服务器,一个充当客户端。其中,person可以是你机器上的某个人的登录名,或者是另一台主机上的用户的形式’参数可以指示适当的终端名称,其中。

2025-04-02 17:15:55 627

原创 Verilog实现分秒计数器(含按键暂停,按键消抖功能)

在DE2-115开发板上开发一个分秒计数器。首先设计分钟和秒应该从00:00到59:59循环计数,所以需要六位或者七位数码管来显示,查询得知DE2-115上的数码管是共阳极,那么每个数码管的段码需要取反。分频模块:将50MHz时钟分频为1Hz。计数模块:实现分钟和秒的BCD计数逻辑,支持进位和复位。显示模块:将BCD码转换为七段数码管显示码,支持共阳极数码管。控制功能:支持复位、暂停和按键消抖功能。

2025-04-01 15:40:47 974

原创 DE2-115开发板LED流水灯Verilog设计

通过LED流水灯实验,我学会了用Verilog做分频和状态机控制,还掌握了模块化设计和规范写代码的方法。以前觉得抽象的数字电路知识,现在通过实际操作,终于明白了怎么在FPGA里实现。动手能力也提升了不少,能更灵活地运用到以后的项目里。而且在调试过程中,也锻炼了自己解决问题的能力,遇到错误不再慌张,知道如何去分析和修正。这次实验让我对数字系统设计有了更深入的理解,也增强了我继续学习和探索的信心。五、参考资料【FPGA实战】Verilog实现DE2-115的流水灯控制Quartus联合Vscode开发教程。

2025-03-19 11:27:03 805

原创 奔跑吧Linux内核实验手记:从零搭建Linux实验环境

通过本系列实验,我深刻体会到:

2025-03-10 19:12:01 371

原创 树莓派3B+的初步使用

首先,准备至少16GB大小的SD卡以便装入树莓派系统,将SD卡插入读卡器后连接电脑准备给SD卡写入系统。

2025-03-06 19:03:59 764

原创 数字逻辑与FPGA实现基础

通过逻辑抽象、真值表、逻辑表达式、化简和逻辑图的步骤,我们完成了电热水器水位报警系统的设计。最终的逻辑表达式和逻辑图可以用于实际的电路设计和实现。(以上内容由AI生成)

2025-03-04 12:18:56 949

原创 51单片机架构与汇编指令

由于每个LED都通过一个独立的电阻连接到单片机的一个特定端口位,因此可以通过单独设置这些端口位来控制每个LED的状态。由于P0端口的每一个位都可以独立控制,因此通过改变P0端口的值,可以控制哪些LED灯亮起,哪些熄灭。main函数是一个无限循环,每次循环中,P0端口的值会被依次设置为不同的值,这些值分别对应着P0端口上LED灯的不同状态。了一些内联函数的声明,比如_nop_(),这是一个空操作指令,常用于延时函数中以产生延迟。:这是整个电路的核心部件,它是一个具有4K字节闪存的微控制器,用于执行程序代码。

2024-07-12 18:15:37 892

原创 汇编程序与周期性任务设计

83.33ns=125000us即125ms,LED灯每125ms亮灭一次*24=1500000个时钟周期,总的时钟周期us值为1500000。指令周期数都为1,时钟周期us值都约为1us;250=62500次,时钟周期总数为62500。

2024-07-12 17:34:27 434

原创 基于AHT20的温湿度的采集与显示

1.软件I2C软件I2C是指利用软件来模拟I2C总线通信协议的实现方式,不需要硬件支持,通过GPIO(通用输入输出)口来模拟I2C的SCL(时钟线)和SDA(数据线)信号线。在一些对成本和资源要求较低的嵌入式系统中,软件I2C可以被用来模拟硬件I2C,但受限于软件处理速度,软件I2C的通信速率往往比硬件I2C要慢。2.硬件I2C硬件I2C是指利用硬件电路来实现I2C总线通信协议的方式,通常借助于专门的I2C控制器或器件。

2024-06-20 21:05:34 489

原创 基于I2C协议的OLED显示(利用U8G2库)

U8G2图形库可实现的功能非常多,不仅可以实现自定义的图像显示,还可以将图像动态的进行展示。

2024-06-10 15:39:51 980

原创 基于HAL库的STM32F103C8T6移植uC/OS-III

111

2024-06-06 20:05:09 697

原创 通过定时器和PWM控制LED进行周期性亮灭

通过这次学习我深入了解STM32定时器原理以及掌握脉宽调制pwm生成方法。学会使用STM32F103的 Tim2-Tim5其一定时器的某一个通道pin,连接一个LED,用定时器计数方式,控制LED以2s的频率周期性地亮灭。能够采用定时器PWM模式,让 LED 以呼吸灯方式渐亮渐灭,周期为1-2秒,自己能调整占空比变化到一个满意效果;能够使用Keil虚拟示波器,观察 PWM输出波形。

2024-05-27 21:30:18 1261

原创 使用STM32CubeMX实现STM32F103C8T6bulepill简单的LED灯点亮

初步学习了STM32CubeMX的使用,了解到其运行方法,这个工具极大地提升了stm32的开发的便捷性。

2024-05-24 19:12:52 1499 1

原创 STM32串口中断入门

STM32的中断有两个主要的优先级:抢占式优先级和响应式优先级。抢占式优先级决定了中断的嵌套能力,即当一个高抢占式优先级的中断发生时,它可以打断一个正在执行的低抢占式优先级的中断。响应式优先级则决定了同一抢占式优先级下的中断优先级。中断是嵌入式系统编程中的一个重要概念,它允许程序在执行过程中被外部事件打断,去执行一段特定的代码(中断服务程序),然后再返回原来的程序继续执行。当stm32接收到一个字符“s”时,停止持续发送“hello windows!(剩余未展示部分均为模本默认)

2024-05-13 23:17:16 1181

原创 STM32串口通信入门

通过学习STM32的串口发送和接收,了解到其工作原理以及如何使其工作。

2024-05-12 20:48:07 549 1

原创 使用STM32F103C8T6实现LED周期性亮灭

STM32F103C8T6是一款基于ARM Cortex-M3内核的低功耗、高性能32位微控制器。其最小核心板的主要引脚接口包括:GPIO(通用输入输出)引脚、USART(通用同步异步收发器)引脚、ADC(模数转换器)引脚、SWDIO和SWCLK引脚、USB D+和D-引脚、I2C(Inter-Integrated Circuit)引脚等其他引脚。因为STM32F103C8在Proteus8.15版本才有,所以需要将Proteus版本升级到8.15及以上版本;

2024-05-05 19:24:32 865 2

原创 定时器与串口通信

通过本次实验,我对Proteus和普中51单片机的应用开发有了更为深入的了解。在实践中,我逐步掌握了中断、定时器和串口通信等关键技术,不仅加深了对理论知识的理解,还提高了实际操作能力。在编程过程中,我锻炼了逻辑思维和解决问题的能力,感受到了单片机编程的魅力与挑战。这次实验让我收获颇丰,对未来在单片机领域的学习和工作都具有重要的指导意义。

2024-04-20 20:19:25 408

原创 利用DS18B20和LED数码管实现单总线温度测量系统

DS18B20数字温度传感器提供9-Bit到12-Bit的摄氏温度测量精度和一个用户可编程的非易失性且具有过温和低温触发报警的报警功能。DS18B20采用的1-Wire通信即仅采用一个数据线(以及地)与微控制器进行通信。该传感器的温度检测范围为-55℃至+125℃,并且在温度范围超过-10℃至85℃之外时还具有±0.5℃的精度。此外,DS18B20可以直接由数据线供电而不需要外部电源供电。每片DS18B20都有一个独一无二的64位序列号,所以一个1-Wire总线上可连接多个DS18B20设备。

2024-04-20 16:38:52 892

原创 中断与定时计数

通过实践,我成功掌握了外部中断和定时器/计数器中断的编程方法,并深入理解了中断的工作机制。在中断服务程序中,我遵循了避免使用耗时代码的原则,通过改变模式标志位的方式优化了中断处理流程,提高了主程序的执行效率。此外,我还掌握了定时器/计数器的工作原理和初值计算方法,通过对比软件循环定时和硬件定时的方式,深刻认识到硬件定时在精度和稳定性方面的优势。通过这次实验,我不仅提高了编程能力和实践操作能力,还加深了对51单片机中断原理的理解和应用。

2024-04-07 22:54:12 399

原创 基于SDCC和Edsim51的代码仿真

打开windows命令行窗口,用cd命令切换到当前工作目录到D:\根目录下,用mkdir命令创建一个实验目录led_test,再切换到当前工作目录到D:\led_test目录下。汇编语言比较简单,因为LED0接在P1.0端口上,8051中P1.0的地址固定为90H,因此,对这个地址(指针)对应的寄存器写入立即数0(低电平),就可以使LED0电路导通亮灯。可以看到,run运行后变为pause,在左下方看到LED灯亮了(白色表示灭,最右边的红色表示LED0灯亮),在右边可以看到P1口的状态(0或1)

2024-03-15 16:45:56 615 1

原创 Verilog基础练习

Verilog代码设计的3-8译码器模块的输出信号定义为reg类型而不用默认wire(导线)类型,是因为后面运用了过程语句always,因此被赋值的只能是reg变量。如果将output reg [7:0] out改为output [7:0] out,相应地也要将always语句改为连续赋值语句assign。如果不进行这样的修改,会出现“Multiple drivers”错误,因为wire类型的变量可以被多个模块驱动,而assign语句也会产生驱动信号的行为,因此会出现多个驱动信号的情况,导致错误。

2023-12-17 19:35:08 469 1

原创 使用与非门搭建RS锁存器

虽然RS触发器输出有Q和~Q(反相),但是平常以Q为默认。高电平有效是指某引脚施加高电平时触发了该引脚的功能。R=0、S=0时,Q保持上一个状态不变;下面两个电路均在Logisim中实现。R=1、S=1时,禁止、不稳状态;基本的RS锁存器可以用两个。对于或非门的R是触发器,即。R=1、S=0时,Q=0;R=0、S=1时,Q=1;RS触发器中的R表示。

2023-11-16 18:36:30 3645 1

原创 编码器-解码器电路设计及Multisim软件仿真

编码器(Encoder)的逻辑功能是将2的n次方个输入信号的高/低电平信号编成一个对应的n位二进制代码。译码器(Decoder)的作用正好与编码器相反,是将一个N位二进制代码N个输入信号)转译为2的n次方个输出的高/低电平信号(或者另一种代码)。优先编码器(74LS148)功能表如下所示:常用的译码器电路有二进制译码器、 二–十进制译码器和LED显示译码器。

2023-11-14 19:13:34 234

原创 组合逻辑电路的分析与设计

掌握组合逻辑电路的分析与设计。掌握真值表、逻辑函数表达式、卡诺图化简基本概念和方法。

2023-10-30 15:40:41 221 1

原创 实验二:基本逻辑门电路分析与仿真

在本次实验中,我们学习了基本逻辑门电路的分析方法。通过使用与、或、非等逻辑门的组合,我们可以实现各种复杂的逻辑功能。在实验过程中,我们首先了解了逻辑门的基本原理和工作方式,然后通过实际搭建电路并观察输出结果,验证了逻辑门的功能。最后,我们还学习了如何使用真值表来分析和设计逻辑电路。通过本次实验,我对基本逻辑门电路有了更深入的理解,并掌握了一些实用的分析技巧。这对我今后的学习和工作都将有很大的帮助。

2023-10-21 14:30:20 1378 1

原创 二进制数原码-反码和补码的数字电路

开始下载Logisim软件极其运行环境。下载完成后先安装JDK软件,默认安装即可,然后运行Logisim。(2)负数的补码,将其原码除符号位外的所有位取反(0变1,1变0,符号位为1不变)后加1。在输入端口中输入任意一个4位的原码,仿真器会自动将原码转换成补码,并输出到输出端口中。(1)正数和原码相同;

2023-10-21 12:42:40 259 1

原创 Linux-Ubuntu c语言程序编译环境设置以及安装Dev-c++编写基于辗转相除法的十进制数转二进制数的C++程序

1.下载VMware虚拟机点击开始下载VMware虚拟机,VMware的版本为17.0.0,需要自行购买或查找对应的激活码。2.下载Ubuntu系统因为Ubuntu官方网站在海外,下载速度极慢,所以推荐选择国内镜像网站以快速下载Ubuntu系统,例如阿里云平台,点击开始下载Ubuntu18.04.6镜像版本。3.VMware虚拟机安装Ubuntu系统根据VMware安装提示可自行完成Ubuntu系统的安装或者自行查找教程,这里便不过多解释。4.Dev-c++的安装进入。

2023-10-21 00:40:09 1834 1

shell进度条100:1

shell进度条100:1

2024-10-29

video_20240520_211229.mp4

video_20240520_211229.mp4

2024-05-21

IMG_20240521_115621.jpg

IMG_20240521_115621.jpg

2024-05-21

video_20240520_220624.mp4

video_20240520_220624.mp4

2024-05-21

空空如也

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

TA关注的人

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