写在十九岁生日的23:31。

今天没有出去玩,可能是也有一些放假玩倦了的原因,可能也有一些自己想做最想做的事,为未来起一个好引子的原因。
I thought she would give me a call, even just send me a message like old times we did. But none at all, I’m still waiting here, holding my phone, look forward her words. None at all. I believed that there are still someplace, something in the bottom of her heart for me. Now I guess I was wrong. Or at least she would feel something in this particular day. Or she would not forget the date at all.
Whatever, I guess girls are truly chiller than boys.
我们六岁就认识了,我们在贫穷落后的年纪相识,你则一直都光芒万丈,清新,高尚,冷静,美丽。你一直是我阴沉生命中的光,唯一的太阳。这些话我从十五岁开始向你倾诉,向你表白,一直到十八岁。如今,我已经学会控制自己,再苦再难也不打扰你了。只是没想到,最后是这样的平静的日子,如清澈的小河汩汩流淌。
我知道,可能我们的生命很难再有交集了。我想告诉你却不能告诉你的是,从小时候起,我就明白,所有的时光,没有你一同欣赏,一道攀涉,都是毫无意义的。在我看来,所有你不在身边的日子,都是彻底的虚度。小时候我爱看书,后来我做不到了,我每看一部电影,每读一本书,每走一步路,每一个第一次,都带给我无尽的,反复回味的空虚与痛苦。
但没关系的,我们是这样小小的我们,我们是这样小小的我们,一点点的失落和错过,又能怎样呢?决不可以让你知道我的痛苦和忧郁,就让你潇洒浪漫的活着,就让我藏在这角落里慢慢的回忆想象,慢慢的走,来世,会有另一百年的缘分。
没关系,宝贝,宝宝,丫头,姑娘,你不必担心我,我会做出许多成绩,我会去到很多地方,我会遇见很多人,我身边没有你,我不会忘记你。我怎么可能爱上别的人!我从见到你的那天,就品尝到了,绝大多数人一辈子都不会明白的爱情啊。多少年了?十三年了,每天都更欣赏你,都更明白什么是爱。你是如此的特别,世界上,再不会有另一位如你一般的深沉的姑娘。
I’M SHINING
IN EACH SEC.
小小的我们,要彼此铭记,各自珍重。我爱你。说一辈子,就是一辈子。

基于51单片机,实现对直流电机的调速、测速以及正反转控制。项目包含完整的仿真文件、源程序、原理图和PCB设计文件,适合学习和实践51单片机在电机控制方面的应用。 功能特点 调速控制:通过按键调整PWM占空比,实现电机的速度调节。 测速功能:采用霍尔传感器非接触式测速,实时显示电机转速。 正反转控制:通过按键切换电机的正转和反转状态。 LCD显示:使用LCD1602液晶显示屏,显示当前的转速和PWM占空比。 硬件组成 主控制器:STC89C51/52单片机(与AT89S51/52、AT89C51/52通用)。 测速传感器:霍尔传感器,用于非接触式测速。 显示模块:LCD1602液晶显示屏,显示转速和占空比。 电机驱动:采用双H桥电路,控制电机的正反转和调速。 软件设计 编程语言:C语言。 开发环境:Keil uVision。 仿真工具:Proteus。 使用说明 液晶屏显示: 第一行显示电机转速(单位:转/分)。 第二行显示PWM占空比(0~100%)。 按键功能: 1键:加速键,短按占空比加1,长按连续加。 2键:减速键,短按占空比减1,长按连续减。 3键:反转切换键,按下后电机反转。 4键:正转切换键,按下后电机正转。 5键:开始暂停键,按一下开始,再按一下暂停。 注意事项 磁铁和霍尔元件的距离应保持在2mm左右,过近可能会在电机转动时碰到霍尔元件,过远则可能导致霍尔元件无法检测到磁铁。 资源文件 仿真文件:Proteus仿真文件,用于模拟电机控制系统的运行。 源程序:Keil uVision项目文件,包含完整的C语言源代码。 原理图:电路设计原理图,详细展示了各模块的连接方式。 PCB设计:PCB布局文件,可用于实际电路板的制作。
### 实现思路 要在Vivado中实现8个7段数码管扫描显示出生日期2005.1.1,并通过拨码开关控制显示,可按以下步骤进行: 1. **设计数码管显示模块**:实现数码管的扫描显示逻辑。 2. **设计拨码开关控制模块**:根据拨码开关的状态控制显示内容。 3. **编顶层模块**:将数码管显示模块和拨码开关控制模块进行例化和连接。 ### 代码实现 #### 数码管显示模块(seg_display.v) ```verilog module seg_display( input wire clk, input wire rst_n, input wire [31:0] data, // 要显示的数据 output reg [7:0] seg_sel, // 数码管位选信号 output reg [7:0] seg_data // 数码管段选信号 ); // 定义扫描时钟计数器 reg [19:0] scan_cnt; always @(posedge clk or negedge rst_n) begin if (!rst_n) begin scan_cnt <= 20'd0; end else begin scan_cnt <= scan_cnt + 1'b1; end end // 扫描时钟信号 wire scan_clk; assign scan_clk = scan_cnt[19]; // 数码管位选信号计数器 reg [2:0] sel_cnt; always @(posedge scan_clk or negedge rst_n) begin if (!rst_n) begin sel_cnt <= 3'd0; end else begin sel_cnt <= sel_cnt + 1'b1; end end // 数码管位选信号 always @(*) begin case (sel_cnt) 3'd0: seg_sel = 8'b11111110; 3'd1: seg_sel = 8'b11111101; 3'd2: seg_sel = 8'b11111011; 3'd3: seg_sel = 8'b11110111; 3'd4: seg_sel = 8'b11101111; 3'd5: seg_sel = 8'b11011111; 3'd6: seg_sel = 8'b10111111; 3'd7: seg_sel = 8'b01111111; default: seg_sel = 8'b11111111; endcase end // 数码管段选信号 always @(*) begin case (sel_cnt) 3'd0: seg_data = seg_decode(data[3:0]); 3'd1: seg_data = seg_decode(data[7:4]); 3'd2: seg_data = seg_decode(data[11:8]); 3'd3: seg_data = seg_decode(data[15:12]); 3'd4: seg_data = seg_decode(data[19:16]); 3'd5: seg_data = seg_decode(data[23:20]); 3'd6: seg_data = seg_decode(data[27:24]); 3'd7: seg_data = seg_decode(data[31:28]); default: seg_data = 8'b11111111; endcase end // 7段数码管译码器 function [7:0] seg_decode; input [3:0] num; case (num) 4'd0: seg_decode = 8'b00000011; 4'd1: seg_decode = 8'b10011111; 4'd2: seg_decode = 8'b00100101; 4'd3: seg_decode = 8'b00001101; 4'd4: seg_decode = 8'b10011001; 4'd5: seg_decode = 8'b01001001; 4'd6: seg_decode = 8'b01000001; 4'd7: seg_decode = 8'b00011111; 4'd8: seg_decode = 8'b00000001; 4'd9: seg_decode = 8'b00001001; default: seg_decode = 8'b11111111; endcase endfunction endmodule ``` #### 拨码开关控制模块(switch_control.v) ```verilog module switch_control( input wire switch, // 拨码开关信号 output reg [31:0] display_data // 要显示的数据 ); always @(*) begin if (switch) begin display_data = 32'h20050101; // 显示2005.1.1 end else begin display_data = 32'h00000000; // 不显示 end end endmodule ``` #### 顶层模块(top.v) ```verilog module top( input wire clk, input wire rst_n, input wire switch, // 拨码开关信号 output wire [7:0] seg_sel, // 数码管位选信号 output wire [7:0] seg_data // 数码管段选信号 ); // 例化拨码开关控制模块 wire [31:0] display_data; switch_control u_switch_control( .switch(switch), .display_data(display_data) ); // 例化数码管显示模块 seg_display u_seg_display( .clk(clk), .rst_n(rst_n), .data(display_data), .seg_sel(seg_sel), .seg_data(seg_data) ); endmodule ``` ### 相关问题
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值