自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 hdlbites练习11

module top_module ( input clk, // Clocks are used in sequential circuits input d, output reg q );// always@( posedge clk ) begin q <= d; endendmoduleCreate 8 D flip-flops. All DFFs should be triggere

2023-10-21 20:47:09 86

原创 hdlbites练习10

具有四个输入(a,b,c,d)的单输出数字系统在输入端出现2、7或15时生成逻辑-1,当0、1、4、5、6、9、10、13或14出现时产生逻辑-0。数字 3、8、11 和 12 的输入条件在此系统中永远不会出现。例如,7 对应于 a,b,c,d 分别设置为 0,1,1,1。以最低 SOP 形式确定输出out_sop,以最低 POS 形式确定输出out_pos。

2023-10-21 18:16:30 79

原创 hdlbites练习9

现在您知道如何构建一个完整的加法器,请创建它的 3 个实例来创建 3 位二进制纹波进位加法器。加法器将两个 3 位数字和一个进位数相加,产生 3 位和并执行。为了鼓励您实际实例化全加器,还要在纹波进位加法器中输出每个全加器的带出。假设您有两个 8 位 2 的补码数,a[7:0] 和 b[7:0]。加法器将两个 100 位数字和一个进位相加,以产生 100 位和并执行。创建一个完整的加法器。一个完整的加法器将三个位(包括进转)相加,并产生一个总和结转。半加法器添加两个位(没有结转)并产生总和结转。

2023-10-21 16:23:56 85

原创 hdlbites练习8

sel=0 应该选择 [3:0] 中的位,sel=1 选择[7:4] 中的位,sel=2 选择 [11:8] 中的位,依此类推。创建 1 位宽、256:1 多路复用器。sel=0 应该选择 in[0],sel=1 选择 in[1] 中的位,sel=2 选择[2] 中的位,依此类推。sel=0 选择 a,sel=1 选择 b,依此类推。对于未使用的情况(sel=9 到 15),将所有输出位设置为“1”。当 sel=0 时,选择 a。当 sel=1 时,选择 b。当 sel=1 时,选择 b。

2023-10-21 13:26:05 77 1

原创 hdlbites练习7

例如,out_both[2] 应指示 in[2] 和 in[3] 是否都是 1。由于in[3]的左边没有邻居,答案是显而易见的,所以我们不需要知道out_both[3]。例如,out_both[98] 应该指示 in[98] 和 in[99] 是否都是 1。由于in[99]的左边没有邻居,答案是显而易见的,所以我们不需要知道out_both[99]。例如,out_any[2] 应指示 in[2] 或 in[1] 是 1。例如,out_any[2] 应指示 in[2] 或 in[1] 是 1。

2023-10-20 22:22:56 55 1

原创 hdlbites练习6

给定四个无符号数字,找到最小值。无符号数字可以与标准比较运算符(a < b)进行比较。使用条件运算符制作双向最小电路,然后组合其中的几个以创建 4 路最小电路。您可能需要一些用于中间结果的线向量。

2023-10-19 12:03:37 44

原创 hdlbites练习5

【代码】hdlbites练习5。

2023-10-17 11:32:13 35

原创 hdlbites练习4

模块的层次结构是通过在另一个模块中实例化一个模块来创建的,只要使用的所有模块都属于同一个项目(因此编译器知道在哪里可以找到模块)。一个模块的代码不会写在另一个模块的主体中(不同模块的代码不嵌套)。

2023-10-15 19:23:00 66 1

原创 hdlbites练习2.1

有六个 5 位输入向量:a、b、c、d、e 和 f,总共 30 位输入。有四个 8 位输出向量:w、x、y 和 z,用于 32 位输出。给定五个 1 位信号(a、b、c、d 和 e),计算 25 位输出向量中的所有 25 个成对一比特比较。这需要连接符号位的 24 个副本(即复制位 [7] 24 次),后跟 8 位数字本身。构建一个组合电路,将输入半字(16 位,[15:0])拆分为较低的 [7:0] 和高部 [15:8] 字节。给定一个 8 位输入向量 [7:0],反转其位顺序。

2023-10-13 20:55:22 51

原创 hdlbites练习1.2

verilog里的wire是一种数据类型,用于连接模块中的不同部分。它可以传递信号,但不能存储值。wire通常用于连接模块中的输出和输入。

2023-10-13 19:21:57 49

原创 hdlbites练习1.1

本文初步进入verilog的学习,重点为assign语句

2023-10-13 18:40:58 42

原创 51单片机DS18B20温度传感器

DS18B20DS18B20 是单线接口数字温度传感器,测量范围是-55℃~+125℃,-10℃~+85℃范围内精度是±0.5℃,测量分辨率为 9~12 位(复位值为 12 位,最大转换时间为 750ms)。DS18B20 包括寄生电源电路、 64 位 ROM 和单线接口电路、暂存器、 EEPROM、 8 位 CRC 生成器和温度传感器等。寄生电源电路可以实现外部电源供电和单线寄生供电, 64 位 ROM 中存放的 48 位序列号用于识别同一单线上连接的多个 DS18B20,以实现多点测温。

2022-04-07 19:12:34 2336

原创 51单片机DS1302时钟

DS1302时钟操作可通过 AM/PM 指示决定采用 24 或 12 小时格式。 DS1302 与单片机之间能简单地采用同步串行方式进行通信,仅用到三个口线: RES 复位、 I/O 数据和 SCLK 串行时钟。时钟/RAM 的读/写数据以一个字节或多达 31 个字节的字符组方式通信。DS1302 有 12 个寄存器,其中有 7 个寄存器与日历、时钟相关,存放的数据位为 BCD 码形式,即日历、时间寄存器。此外, DS1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与 RAM

2022-04-07 18:56:00 1985 1

原创 51单片机at24c02的读写

AT24C02原理图AT24C02 存储器写操作需要在给出开始态、器件地址和确认之后,紧跟着给出一个 8 位数据地址。一经收到该地址, EEPROM 就通过 SDA 发出确认信号,并随时钟输入 8 位数据。在收到 8位数据之后, EEPROM 将向 SDA 确认,数据传送设备必须用停止状态来终止写操作,这时,EEPROM 进入一个内计时固定存储器写入周期。在该写周期时,所有输入被禁止, EEPROM 直到写完后才应答1KB/2KB EEPROM 能进行 8 字节页面写入, 4KB、 8

2022-04-07 18:47:35 3174

原创 51单片机PCF8951芯片的A/D和D/A

pcf8951原理图/*************************************************函数功能:AD输入*************************************************/uchar Pca_Adin(uchar pca){ uchar vlot; IIC_Start(); IIC_SendByte(0x90); IIC_WaitAck(); IIC_SendByte(0x40|pca); IIC_WaitAck

2022-04-07 18:38:50 2968 1

原创 iic在51单片机中详解

IICIIC-一种接口协议,有主机和从机,常见于嵌入式(单片机),最高速度可达400kbps。IIC即Inter-IntegratedCircuit(集成电路总线),是一种多向控制总线,由飞利浦半导体公司在八十年代初设计,主要是用来连接整体电路(ICS)。在IIC中,多个芯片可以连接到同一总线结构下,同时每个芯片都可以作为实施数据传输的控制源,这种方式简化了信号传输总线。原理I2C协议规定,总线上数据的传输必须以一个起始信号作为开始条件,以一个结束信号作为传输的停止条件。起始和结束信号总是由主设备产

2022-04-07 18:19:49 1974

原创 51定时器外部输入测频

定时器测频原理频率测量比较简单:将定时器 0 初始化为计数模式,对输入到 P34(T0)的脉冲进行计数,1s 的计数值即为频率值。代码定时器定义void Timer0_Init(void){ TMOD &= 0xf0; TMOD |= 0x06; TH0 = 0xff; TL0 = 0xff; TF0 = 0; TR0 = 1;}void Timer1_Init(void){ TMOD &= 0x0f; TMOD |= 0x10; TH1 = (655

2022-04-07 18:13:09 370 1

原创 51定时器PWM调节

pwm原理部分PWM-脉冲宽度调制是一种模拟控制方式,根据相应载荷的变化来调制晶体管基极或MOS管栅极的偏置,来实现晶体管或MOS管导通时间的改变,从而实现开关稳压电源输出的改变。这种方式能使电源的输出电压在工作条件变化时保持恒定,是利用微处理器的数字信号对模拟电路进行控制的一种非常有效的技术。广泛应用在从测量、通信到功率控制与变换的许多领域中。代码利用定时器0来定时PWM的周期为1ms分成100个单位定时器1来控制其他的部分void Timer0_Init(void){ TMOD &am

2022-04-07 15:56:59 2055

原创 Ct107D开发板按键识别

按键原理图CT107D开发板上独立按键与矩阵按键通过J5来控制;当J5排针2,3相接为独立按键功能。当1,2相接为矩阵按键功能。按键识别原理独立按键独立按键相对于矩阵按键简单一些,当单片机检测出按键按下输出相应的值。矩阵键盘单片机外部设备中所使用的排布类似于矩阵的键盘组。在键盘中按键数量较多时,为了减少 I/O 口的占用,通常将按键排列成矩阵形式。在矩阵键盘中,在每条水平线和垂直线交叉处不直接连通,而是通过一个按键加以连接。这样,一个端口(如 P0 口)就可以构成 4×4=16个按键

2022-04-07 15:42:03 754

原创 51系列单片机定时器中断

定时器中断定时器是单片机的重要功能模块之一,在检测、控制领域有广泛应用。定时器常用作定时时钟,以实现定时检测,定时响应、定时控制,并且可以产生ms宽的脉冲信号,驱动步进电机。定时和计数的最终功能都是通过计数实现,若计数的事件源是周期固定的脉冲则可实现定时功能,否则只能实现计数功能。因此可以将定时和计数功能全由一个部件实现。TMOD寄存器76543210GATEC/TM1M0GATEC/TM1M0GATE:门控制GATE=1时,由外部中断引脚INT0

2022-04-06 11:24:56 984

原创 蓝桥杯单片机led指示

LED原理图CT107D开发板上LED显示模块为共阳极接法,我们只需要将对应的I/O口输出低电平就可以点亮LED。代码假如我们要分别控制l1,l2,l3三个led#define Y4 P2&0x1f|0x80#define Yc P2&0x1f|0x00void Led_Init(bit i,bit j,bit k){ P0 = 0xff;//初始状态为所有led都关闭 if(i) //当i输入为1,打开l1,否则关闭。以此类推。 P0 &= 0xfe

2022-04-06 11:00:54 505

原创 蓝桥杯单片机关闭蜂鸣器、继电器LED及数码管

蓝桥杯大赛CT107D开发板

2022-04-06 10:47:51 3348

原创 基于FPGA的数字时钟设计

基于FPGA的数字时钟设计芯片与开发板技术指标1.具有正常的日时分秒技术显示功能,用七个数码管分别显示日,时,分,秒。2.有按键校日,校时,校分,校秒。3.利用led模拟整点报时功能。4.起始时间为周一00.00.00。VHDL代码分频器Library ieee;Use ieee.std_logic_1164.all;Use ieee.std_logic_unsigned.all;Use ieee.std_logic_arith.all;Entity FDIV250 is

2021-04-02 20:40:53 8930 1

空空如也

空空如也

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

TA关注的人

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