自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

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

通过博客的学习实践我了解到了关于12C协议的相关知识还有关于U8g2图形库移植以及OLED显示实践的实现。

2024-06-11 17:00:26 822

原创 uc/OS移植到stm32实现三个任务

本次实践学习到了关于如何将uc/OS其移植到stm32F103上。

2024-06-08 18:01:46 1208

原创 定位器与PWM的LED控制

本次实验我学习到了更多定时器和pwm的知识。

2024-05-28 23:47:24 324

原创 HAL库LED点灯

STM32CubeMX是STMicroelectronics(ST)推出的一款图形化软件配置工具,旨在帮助开发者轻松配置STM32微控制器的硬件外设和中间件。该工具为用户提供了一个直观的界面,通过简单的点击和选择操作,可以生成C语言代码框架,极大地简化了STM32微控制器的初始化和配置过程。在安装教程中一般都会介绍关于stm32CubeMX的使用在这里就不过多赘述了。关于安装stm32CubeMX,网上教程较多可以随意选择。本次实验学习到了关于stm32CubeMX,以及HAL的相关知识。

2024-05-24 21:25:05 316 1

原创 中断编程入门

时,停止持续发送“hello windows!”时,持续发送“hello windows!”(提示:要将接收到的连续字符保存到一个字符数组里,进行判别匹配。用stm32F103核心板的GPIOA端一管脚接一个LED,GPIOB端口一引脚接一个开关(用杜邦线模拟代替)。接低电平时,LED灭灯。当stm32接收到1个字符“s”时,停止持续发送“hello windows!当接收到1个字符“t”时,持续发送“hello windows!接入5.5v时led正常亮起,接入G时led灭,不接入G正常亮起。

2024-05-19 19:52:31 415 1

原创 stm32串口通信入门

RS-232使用较高的电压水平(-3V到-15V表示逻辑“1”,+3V到+15V表示逻辑“0”),适用于较长距离和噪声较大的工业环境。对可靠性要求不高的场合,DB-9通常采用三线制串口,仅需发送(Tx)、接收(Rx)和地(GND)三条线,即可实现全双工通信,进行最基本的数据收发传送,最高传输速率可达20kbps。信号线:RS-232定义了多个信号线,包括数据线(TXD、RXD)、地线(GND)、控制线(如CTS、RTS、DTR、DSR等)和定时线(如DCD、RI)。学习到了更多stm32标准库的知识。

2024-05-12 18:05:40 491 1

原创 stm32F103的LED亮灭之版本1(寄存器地址版)

PA0-PA15、PB0-PB15、PC0-PC15、PD0-PD2:这些GPIO引脚可以配置为输入、输出或具有特定功能的复用模式。地址:GPIOx_BASE + 0x20(对于低寄存器AFRL)和GPIOx_BASE + 0x24(对于高寄存器AFRH)。地址:GPIOx_BASE + 0x00(对于低寄存器CRL)和GPIOx_BASE + 0x04(对于高寄存器CRH)。功能:配置每个GPIO引脚的工作模式(输入、输出、复用功能等)和输出类型(推挽或开漏)。

2024-05-05 18:24:36 535 3

原创 单片机定时器与串口通信

驱动电路负责将接收到的控制命令和数据转换为适合LCD显示的信号,并控制液晶的亮暗和显示内容。乙机接收到的8位二进制数据有可能出错,需进行奇偶校验,其方法是将乙机的RB8和PSW的奇偶校验位P进行比较,如果相同,接收数据;LCD 1602是一种常用的字符型液晶显示模块,常用于嵌入式系统和电子项目中,用于显示简单的文本信息。实现一个用2位数码管显示计时时间,最小计时单位为“百毫秒”,计时范围0.1~9.9s的计时器。蜂鸣器是一种常见的声响装置,通常用于发出简单的声音信号,例如警报、提醒或提示。

2024-04-20 19:01:00 962

原创 单总线温度采集

1.DS18B20是美国DALLAS公司生产的数字温度传感器,体积小、低功耗、抗干扰能力强。可直接将温度转化成数字信号传送给单片机处理,因而可省去传统的信号放大、A/D转换等外围电路。结构:采用TO-92、SOIC等封装形式,尺寸小巧,便于集成到各种应用中。Proteus仿真时,用手动,即用鼠标单击DS18B20图标上的“↑”或“↓”来改变温度,注意手动调节温度同时,LED数码管会显示出与DS18B20窗口相同的2位温度数值。2.DS18B20的工作时序包括初始化时序、写时序和读时序。

2024-04-20 18:28:08 132

原创 中断与定时计数

设计一中断嵌套程序:要求K1和K2都未按下时,P1口8只LED呈流水灯显示,当按一下K1时,产生一个低优先级外中断0请求(跳沿触发),进入外中断0中断服务程序,上下4只LED交替闪烁。此时按一下K2时,产生一个高优先级的外中断1请求(跳沿触发),进入外中断1中断服务程序,使8只LED全部闪烁。高优先级中断服务程序完成后,再继续执行低优先级中断程序,本例如设置外中断1为低优先级,外中断0为高优先级,仍然先按下再松开K1,后按下再松开K2或者设置两个外中断源的中断优先级为同级,均不会发生中断嵌套。

2024-04-07 21:08:55 833

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

(2)根据上图的DELAY函数可以看出相当于两个循环叠加先在R6进行250次循环然后R7减1再次赋值进行R6又250次循环这样子进行250次,即D1循环进行了250次,D2循环了250X250次,其中第二句的R7-1循环250次。根据实验课所给上图程序请查阅汇编指令 “MOV R6,#250”和“DJNZ R6,D2”的指令周期数,计算其对应的时钟周期 us值;而DJNZ这条指令是给R6减1并循环执行250次且该句是两个周期因此该语句需要500μs。根据查阅汇编指令可知MOV R6,#250是一个周期;

2024-03-24 19:32:45 931 1

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

然后我们打开Edsim51模拟器,将Update Ereq改为50000然后点击NEW,点击Load,然后打开led_test选择刚刚生成的led1.hex文件加载进去然后点击RUN ,可以看到Led被点亮。首先在D盘下新建led_test文件夹,将上述实现点亮Led灯源代码保存为led1.c文件并保存在led_test文件夹下,打开window命令行窗口,使用cd命令打开到led_test文件夹下。编辑完代码后点击编译运行,会出现编译成功,然后跳转到原理图可以看到点亮效果。

2024-03-16 16:25:03 914 1

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

设计点亮含8LED灯的流水灯的电路设计原理是先放置一个AT89C51芯片,然后放置8个灯泡同时将他们分别与8个限流电阻串联,再将AT89C51芯片个端口以及小灯泡连于总线上,再使用线命名使端口和小灯泡一一对应,最后导入可执行文件hex即可完成流水灯。在上述C语言程序中主要就是先写了一个延时函数delay-ms然后在主函数中写了一个while循环语句在语句中分别编写点亮LED函数,同时在每个LED点亮之间使用delay-my函数以达到延时效果,即形成流水灯。首先点击下图箭头所指图标。

2024-03-10 10:47:38 405 1

原创 Verilog编程基础练习

2) Verilog代码设计的3-8译码器模块的输出信号 为何要定义为 reg类型而不用默认wire(导线)类型?然后用Verilog的门级描述方式写一个“1位全加器”, 生成RTL电路,与Logsim的“1位全加器”进行对比。在下面这个Verilog门级电路实现时不是按照之前的logsim电路图来描述的是按照用三个与门的全加器实现的全加器来描述的。学习教材上的 并行加法器原理(先行进位加法器),参考附件资料,完成一个16位ALU(算术逻辑单元)的电路设计,采用Verilog设计模式,生成RTL电路。

2023-12-17 16:46:55 381 1

原创 搭建RS和D锁存器实验

虽然 RS触发器 输出有 Q和`Q(它们的值反相),但是平时沟通时是以Q为默认,比如说 RS 触发器输出1,那么就是指 Q 输出 1。1、 首先用 multisim (或logsim)软件采用门电路或者74LSxx系列设计SR、D触发器,进行仿真,验证逻辑关系。前面RS触发器当输入R=1,S=1的情况时,输出是不确定的状态,这种情况比较棘手。RS触发器 中的 R 表示 Reset(复位),S 表示 Set(置位)R=1、S=0时,那么 Q = 0 R=0、S=1时,那么 Q = 1。

2023-11-21 18:47:31 128

原创 编码器与解码器原理及其应用

74LS147编码器高级应用-病房呼叫系统-Multisim仿真如下:

2023-11-14 18:11:30 221 1

原创 实验三: 组合逻辑电路的分析与设计

按图3-2接线,输入端 A、 B、 C、 D 接至逻辑开关输出插口, 输出端 Z 接逻辑电平显示输入插口,按真值表(自拟)要求,逐次改变输入变量, 测量相应的输出值,验证逻辑功能, 与表3-1 进行比较, 验证所设计的逻辑电路是否符合要求。最后, 用实验来验证设计的正确性。请在之前四路表决器电路实现的基础上,继续用连接线 联接CD4511,将投票为1的票数总和显示到一个 LED上,思考如何做?用“ 与非” 门设计一个表决电路: 当四个输入端A、B、C、D中有三个或四个为“ 1” 时, 输出端才为“ 1”。

2023-11-03 18:10:10 287

原创 实验二(1)基本逻辑门电路分析

选用 74LS20 四输入端两与非门一个,74LS20 芯片 14 引脚接入+5V,74LS20 芯片 7 引脚接入地 0V,并按图 1-1 接线,按表 1-1 改变 A、B、C、D 的状态,观察输出端 Y 的状态,并记录数据。选用 74LS00 二输入端四与非门两个,74LS00 芯片 14 引脚接入+5V,74LS00 芯片 7 引脚接入地 0V,并按图 1-2 接线,改变 A、B、C、D 的状态,观察输出端 Y 的状态,并记录数据在表 1-2。2、测试逻辑电路的逻辑功能。1、 测试门电路逻辑功能。

2023-10-24 19:59:23 156

原创 在理解全加器和二进制补码的原理上,用Logisim设计实现一个4位二进制数的补码器电路

当你的负数补码器电路设计完成后,你可以在输入端口中输入任意一个4位的原码,仿真器会自动将原码转换成补码,并输出到输出端口中。然后,你再继续考虑输入即有正数又可能是负数的情况下,如何完善补码器电路。负数的补码,将其原码除符号位外的所有位取反(0变1,1变0,符号位为1不变)后加1。(1)全加器是由两个半加器组成(当两个多位二进制数相加时,除了最低位以外,第二位以上的相加需要考虑低位的进位,即将两个待加数A.和B,以及一个来自前面低位送来的进位数C」这三个数相加,得出本位和(全加和)S和进位数C。

2023-10-22 13:46:10 279 1

原创 程序编译环境设置---Ubuntu系统下完成 Helloworld的程序以及win10安装Dev-c++并编写基于“辗转相除法”的十进制转二进制程序

加上"- p "参数可以一次性创建所有依赖的文件夹,例如" mkdir - p directory / s ubdirectory ". 9. rm :删除指定文件或目录。例如," cd ~"切换到当前用户的主目录," cd .."切换到上一级目录," cd -"切换到上一次目录。

2023-10-19 20:49:59 148

空空如也

空空如也

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

TA关注的人

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