自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Alice的博客

C语言学习

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

原创 Arduino程序设计(十四)舵机控制实验(SG90)

本文介绍SG90舵机控制原理及实验,主要内容有:1、介绍SG90舵机;2、舵机0°~180°来回转动;3、串口控制舵机转动固定角度。(1)舵机是一种位置(角度)伺服的驱动器。舵机只是一种通俗的叫法,其实质是一个伺服马达。在需要角度不断变化并可以保持的控制系统中应用广泛。如遥控机械人、飞机模型等。(2)舵机的转动角度为0~180°,其内部结构包括电机,控制电路和机械结构三部分。电机有三根线引出,分别接VCC、GNG和信号线。

2023-10-11 21:03:50 3635 2

原创 Arduino程序设计(十三)触摸按键实验(TTP223)

本文介绍触摸按键控制LED的原理及实验,主要内容有:1、介绍TTP223触摸按键模块;2、触摸按键控制LED;3、触摸按键状态检测。

2023-09-22 16:05:22 2383

原创 Arduino程序设计(十一)8×8 共阳极LED点阵显示(74HC595)

本文主要介绍8×8 共阳极LED点阵显示实验,分别是:1、介绍74HC595点阵模块;2、点阵显示指定行列LED;3、点阵显示汉字。74HC595是一个8位串行输入、并行输出的位移缓存器:并行输出为三态输出。在SCK 的上升沿,串行数据由SDL输入到内部的8位位移缓存器,并由Q7’输出,而并行输出则是在LCK的上升沿将在8位位移缓存器的数据存入到8位并行输出缓存器。当串行数据输入端OE的控制信号为低使能时,并行输出端的输出值等于并行输出缓存器所存储的值。

2023-09-22 10:49:03 2425

原创 Arduino程序设计(十二)串口通信实验(上位机发送指令,下位机执行)

本文主要介绍String类函数、Serial类函数及两个串口通信实验,分别是:1、字符串数据类型操作;2、串口通信介绍;3、上位机控制LED灯;4、上位机实现按键检测。(1)字符串用于存储文本,可用于在LCD或Arduino IDE串行监视器窗口中显示文本。同时字符串对于存储用户输入也很有用。例如,用户在连接到Arduino的键盘上键入的字符。(2)Arduino编程中有两种类型的字符串:① 字符数组,与C编程中使用的字符串相同;

2023-09-20 19:49:44 4533 2

原创 Arduino程序设计(十)8×8 共阴极LED点阵显示(MAX7219)

本文主要介绍8×8 LED点阵显示实验,分别是:1、介绍MAX7219点阵模块;2、点阵显示部分图形;3、点阵显示数字 0~9 及 26 个英文字母。1、通过上述两个点阵实验,了解了8*8点阵显示的基本原理;2、通过SPI通信控制点阵显示,学会了Arduino用SPI通信方式控制外设。

2023-09-19 09:07:47 4370 2

原创 Arduino程序设计(九)WS2812B彩灯实验

本文主要介绍WS2812B彩灯实验,主要内容有:1、介绍WS2812B及灯环,灯环由32个彩灯组成;2、灯环显示三基色;3、顺时针、逆时针的彩色流水灯;4、彩虹灯环,循环显示赤橙黄绿青蓝紫七色。(1)基本组成:WS2812B是一款智能控制LED光源,控制电路和RGB芯片集成在一个5050个组件的封装中。内部包括智能数字端口数据锁存器和信号整形放大驱动电路。还包括一个精密的内部振荡器和一个12V电压可编程恒流控制部分,有效地保证像素点光的颜色高度一致。

2023-09-14 16:57:45 2587

原创 Arduino程序设计(八)LCD显示实验

本文主要介绍温度/温湿度传感器的LCD显示实验,分别是:1、LM35采集环境温度LCD显示;2、DS18B20采集环境温度LCD显示;3、DHT11采集环境温湿度LCD显示。(1)LM35介绍LM35特性特性说明基本功能LM35作为常用的温度传感器,可以检测周围的温度工作原理利用感温材料,通过内部电路将温度值转化为对应的电压信号工作电压4~30V,常用5V供电温度测量测量范围0~100℃ ,误差 ±0.5℃输出信号线性模拟信号输出,LM35输出电压和摄氏温度程线性关系。

2023-09-08 14:39:47 2964

原创 Arduino程序设计(七)数码管实验

本文主要介绍两种数码管显示原理及实验,主要内容包括:1、一位数码管显示0~F,16进制对应字符;2、四位数码管显示数字1234;3、四位数码管实时显示LM35采集的温度值。

2023-09-06 10:16:16 3869

原创 Arduino程序设计(六)蜂鸣器实验

本文主要介绍两种蜂鸣器的区别和蜂鸣器控制实验,主要内容包括:1、有源蜂鸣器和无源蜂鸣器的工作原理及主要区别;2、有源蜂鸣器实验主要介绍有源蜂鸣器的控制;3、无源蜂鸣器实验分为三个实验,分别为调节蜂鸣器输出频率、无源蜂鸣器触发报警声及无源蜂鸣器播放音乐。(1)有源蜂鸣器:① 有源蜂鸣器(Active buzzer)内建了一组固定的频率,只要接通电源,就会发出固定的音调。蜂鸣器的源,这里指的是震荡源。

2023-08-30 17:21:11 6198

原创 Arduino程序设计(五)按键中断+按键状态检测

本文主要介绍两种按键检测实验,分别是:1、外部中断实现按键控制LED灯;2、按键单击、双击和长按的状态检测。

2023-08-30 10:25:29 4114 1

原创 Arduino程序设计(四)按键消抖+按键计数

本文主要介绍两种按键控制LED实验:第一种是采用软件消抖的方法检测按键按下的效果;第二种是根据按键按下次数,四个LED灯呈现不同的流水灯效果。

2023-08-24 19:17:42 4484 1

原创 AD四层板设计(Altium Designer)

1、用 Altium Designer 软件绘制电路时,通常2层板能实现设计需求。遇到板框固定,元器件密集的情况下,2 层板无法实现预期功能,考虑设计多层板;2、本文主要介绍AD四层板的设计流程,其中PCB的叠层设计、内缩设计及DRC设计规则是关键。3、软件版本:Altium Designer 19.0.41、正片层(Signal)正片就是平常用在走线的信号层,即走线的地方是铜线,用Polygon Pour进行大块敷铜填充。2、负片层(Plane)

2023-08-22 14:15:08 11151

原创 Arduino程序设计(三) 光照采集 + 温度采集

光照采集 + 温度采集前言一、光敏电阻检测环境光二、DS18B20检测环境温度总结参考文献

2022-11-17 10:37:26 2416 1

原创 Arduino程序设计(二) 按键控制LED灯

按键控制LED灯程序设计前言一、按键控制LED灯——内部上拉(基础)二、按键控制LED灯——外部上拉(基础)三、按键控制LED灯(进阶)总结参考文献

2022-11-15 15:30:37 12905 1

原创 Arduino程序设计(一) 流水灯+呼吸灯

LED灯程序设计前言一、LED灯的程序设计1 —— 频闪灯二、LED灯的程序设计2 —— 流水灯三、LED灯的程序设计3 —— 呼吸灯总结参考文献

2022-11-12 16:40:01 7029 1

原创 电源防反接电路设计

电源防反接电路前言1、二极管串联型防反接保护电路2、整流桥型防反接保护电路3、MOS管防反保护电路4、保险丝防护

2022-08-18 09:13:34 2226

原创 AD的PCB开窗+挖槽(Altium Designer)

PCB设计的开窗+挖槽前言一、PCB开窗1.1 PCB开窗介绍1.2 PCB开窗步骤二、PCB挖槽三、AD汉化

2022-08-17 17:14:08 30739 3

原创 物联网技术概论:1~7章汇总(西安交通大学)

物联网技术概论:1~7章第一章第二章第三章第四章第五章第六章第七章参考图书

2022-08-09 09:57:37 1760

原创 物联网技术概论:第7章

第七章:物联网信息安全7.1 物联网安全威胁7.2 物联网安全体系7.3 RFID的安全和隐私7.4 基于加密技术的逻辑方法被应用于RFID标签7.5 物联网传输层的安全7.6 非对称加密7.7 单向HASH函数7.8 安全协议7.9 物联网应用层的安全7.10 外包数据和位置信息的隐私保护问题...

2022-08-05 17:44:44 2591

原创 物联网技术概论:第6章

第六章:物联网数据处理6.1 物联网与大数据6.2 物联网数据存储6.2.1 关系型数据库6.2.2 非关系型数据库6.3 物联网云计算和虚拟化6.4 物联网数据分析与挖掘6.4.1 数据的预处理和知识发现6.4.2 数据挖掘6.4.3 并行处理MapReduce6.4.4 并行处理Spark6.5 物联网的数据检索6.5.1 文本检索6.5.2 流媒体检索6.6 物联网数据的可视化技术...

2022-07-29 09:38:48 1977

原创 物联网技术概论:第5章

5.1 WiFi技术5.2 蓝牙技术5.3 ZigBee技术5.4 移动通信技术5.5 卫星通信技术5.6 双绞线和光纤5.7 以太网5.8 网络体系结构5.9 传输层和网络层重要协议

2022-07-05 16:06:33 3762

原创 物联网技术概论:第4章

4.2.4 商品条码4.3 二维码 —— QR码4.3.1 二维码组成与结构4.3.2 QR码的识读原理4.3.3 QR码的编码原理4.4 RFID识别技术4.4.1 自动识别技术4.4.2 RFID技术4.4.3 RFID系统组成原理4.5 防冲突算法4.5.1 RFID的标签识别协议4.5.2 ALOHA防冲突算法4.5.3 基于二进制树的防冲突算法4.5.4 防冲突算法的性能分析4.6 定位技术4.6.1 卫星定位技术4.6.2 蜂窝基站定位技术4.6.3 无线室内定

2022-06-30 12:35:47 2025

原创 物联网技术概论:第3章

第三章:物联网感知技术3.1 物联网感知层3.1.1 物联网感知层的意义3.1.2 物联网感知层的功能3.2 传感器的特性与分类3.2.1 传感器的定义3.2.2 传感器的通用原理3.2.3 传感器的特性3.2.4 传感器的分类3.3 电阻应变式传感器3.3.1 电阻应变式传感器的工作原理3.3.2 电阻应变式传感器的分类3.3.3 电阻应变式传感器的应用3.4 电容式传感器3.4.1 电容式传感器的定义3.4.2 电容式传感器的工作原理3.4.3 电容式传感器的特点及应用

2022-06-27 15:39:09 3130

原创 AD绘制PCB板框+定位孔(Altium Designer)

AD绘制PCB板框+定位孔(Altium Designer)

2022-06-24 16:23:51 32826 10

原创 物联网技术概论:第2章

物联网技术概论 第二章:物联网的概念和特征

2022-06-14 19:09:18 1545

原创 物联网技术概论:第1章

物联网技术概论,第一章学习笔记

2022-06-14 14:38:47 1243

原创 AD常用快捷键+基础知识(Altium Designer)

本文章主要介绍:AD画图软件的常用快捷键和基础知识

2022-06-08 16:54:57 7330

原创 基于MATLAB机电系统动态仿真部分习题

基于MATLAB机电系统动态仿真习题

2022-06-08 14:33:51 5255 8

原创 FPGA的秒表设计案例(verilog实现)

秒表设计案例案例1:秒表0案例2:秒表1案例3:秒表2案例1:秒表0实现功能:1位数码管实现0~9计数。实验现象:第1秒: 1位数码管显示0,第2秒: 1位数码管显示1,第3秒: 1位数码管显示2,第4秒: 1位数码管显示3,第5秒: 1位数码管显示4,第6秒: 1位数码管显示5,第7秒: 1位数码管显示6,第8秒: 1位数码管显示7,第9秒: 1位数码管显示8,第10秒: 1位数码管显示9,……10s一个周期,重复进入下一次循环。代码实现://秒表模块,0~9计数mod

2021-10-22 16:38:29 6109

原创 FPGA的呼吸灯设计案例(verilog实现)

呼吸灯设计案例案例1:呼吸灯0案例2:呼吸灯1案例3:呼吸灯2案例1:呼吸灯0实现功能:4个LED同时改变,亮度由PWM信号控制。实验现象:4个LED,灭→亮,逐渐变亮,到达最亮后熄灭,再从灭→亮,重复进入下一次循环。代码实现:module pwm( input clk, input rst_n, output reg [3:0] led);reg [15:0] pwm0,count;always @(posedge clk or negedge r

2021-10-21 16:29:01 4121

原创 HDLBits练习答案汇总

HDLBits习题总结Verilog LanguageCircuitsCombinational LogicSequential LogicFinite State MachinesVerification: Reading Simulations习题网站: HDLBits.Verilog LanguageBasicsVectorsModules: HierarchyProceduresMore Verilog FeaturesCircuitsCombinational LogicBas

2021-10-14 14:22:59 5973

原创 HDLBits第十八章练习及答案

编写测试平台1、时钟2、测试平台13、与门4、测试平台25、T 触发器1、时钟您将获得一个具有以下声明的模块:module dut ( input clk ) ;编写一个测试平台来创建模块dut 的一个实例(具有任何实例名称),并创建一个时钟信号来驱动模块的clk输入。时钟周期为 10 ps。时钟应初始化为零,其第一次转换为 0 到 1。代码实现:module top_module ( ); reg clk; initial begin c

2021-10-14 13:47:44 853

原创 HDLBits第十七章练习及答案

从仿真波形构建电路1、组合电路12、组合电路23、组合电路34、组合电路45、组合电路56、组合电路67、时序电路78、时序电路89、时序电路910、时序电路101、组合电路1实现下图所示的组合电路。代码实现:module top_module ( input a, input b, output q );// assign q = a & b; // Fix meendmodule验证结果:2、组合电路2实现下图所示的组合电路。提示:

2021-10-14 11:11:28 461

原创 HDLBits第十六章练习及答案

发现代码中的错误1、多路选择器2、NAND3、多路选择器14、加/减法器5、案例说明1、多路选择器这个 8 位宽的 2 对 1 多路选择器不起作用。修复错误。原始代码:module top_module ( input sel, input [7:0] a, input [7:0] b, output out ); assign out = (~sel & a) | (sel & b);endmodule修正后代码:module

2021-10-14 09:18:24 600

原创 HDLBits第十五章练习及答案

构建更大的电路1、周期为1000的计数器2、四位移位寄存器和递减计数器3、FSM 序列1101识别器4、FSM:使能移位寄存器5、FSM:完整的FSM6、完整的计时器7、FSM:One hot 逻辑方程1、周期为1000的计数器构建一个从 0 到 999(包括 0 到 999)计数的计数器,周期为 1000 个周期。复位输入是同步的,应将计数器复位为 0。代码实现:module top_module ( input clk, input reset, output [9:0

2021-10-13 11:10:03 1185

原创 HDLBits第十四章练习及答案4

有限状态机21、Q8:设计一个Mealy FSM22、Q5a:串行二进制补码器(Moor FSM)23、Q5b:串行二进制补码器(Mealy FSM)24、Q3a:FSM25、Q3b:FSM26、Q3c:FSM 逻辑27、Q6b:FSM 下一状态逻辑28、Q6c:FSM one-hot 下一状态逻辑29、Q6:FSM30、Q2a:FSM31、Q2b:One hot FSM方程32、Q2a:FSM33、Q2b:另一个FSM21、Q8:设计一个Mealy FSM米利型状态机检测输入的X中”101“是否

2021-10-12 17:40:08 1156

原创 HDLBits第十四章练习及答案3

有限状态机15、PS/2数据包解析器16、PS/2数据包解析器和数据路径17、串行接收器18、串行接收器和数据通路19、带奇偶校验的串行接收器20、序列识别15、PS/2数据包解析器PS/2 鼠标协议发送三个字节长的消息。但是,在连续的字节流中,消息的开始和结束位置并不明显。唯一的指示是每个三字节消息的第一个字节总是有bit[3]=1(但其他两个字节的 bit[3] 可能是 1 或 0,具体取决于数据)。我们需要一个有限状态机,当给定输入字节流时,它会搜索消息边界。我们将使用的算法是丢弃字节,直到我们

2021-10-11 15:14:20 956

原创 HDLBits第十四章练习及答案2

有限状态机10、旅鼠111、旅鼠212、旅鼠313、旅鼠414、One-hot FSM10、旅鼠1在旅鼠的 2D 世界中,旅鼠可以处于两种状态之一:向左走或向右走。如果碰到障碍物,它会改变方向。特别是,如果旅鼠在左边被撞到,它会向右走。如果它在右边被撞到,它会向左走。如果它同时在两侧碰撞,它仍然会转换方向。实现一个具有两个状态、两个输入和一个输出的摩尔状态机来模拟这种行为。提示:代码实现:module top_module( input clk, input areset,

2021-10-09 15:58:33 1174

原创 HDLBits第十四章练习及答案1

有限状态机1、简单 FSM1(异步复位)2、简单 FSM1(同步复位)3、简单 FSM2(异步复位)4、简单 FSM2(同步复位)5、简单的状态转换36、简单的one-hot状态转换37、简单 FSM3(异步复位)8、简单 FSM3(同步复位)9、设计摩尔状态机1、简单 FSM1(异步复位)实现下图所示的摩尔状态机,复位为异步复位。代码实现:module top_module( input clk, input areset, // Asynchronous reset to

2021-10-07 15:58:14 1315

原创 HDLBits第十三章练习及答案

时序逻辑4:更多电路1、Rule 901、Rule 90各单元的下一状态是此时当前单元相邻两位的异或。在这个电路中,创建一个512单元系统(q(511:0)),并在每个时钟周期中前进一个时间步长。加载(load)表明系统的状态应该加载data[511:0]至q中,假设边界(q[0]和q[512])都为零。LeftCenterRightCenter’s next state1110110110101001011111

2021-10-07 14:01:19 725

空空如也

空空如也

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

TA关注的人

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