哪家做网站便宜西安网络seo公司
目录
一、实验目的
二、实验环境
三、实验内容
四、实验记录及处理
五、实验小结
六、成果文件提取链接
一、实验目的
熟悉和掌握A/D转换及4位数码管、摇杆、蜂鸣器的联合工作方式
二、实验环境
Win10+ESP32实验开发板
三、实验内容
1、用摇杆传感器改变接口电压;
2、在4位数码管上显示变化的电压,数值显示要求保留3位小数;
3、当电压值小于2V,有报警提示。
四、实验记录及处理
- 器件连接
 
带报警功能的数字电压表设计:
|   设备名称  |   设备管脚  |   ESP32管脚  | 
|   四位数码管  |   SCLK=16; RCLK=4; DIO=0;  |   SCLK=16; RCLK=4; DIO=0;  | 
|   摇杆  |   #define RSx 25  |   #define RSx 25  | 
|   LED小灯  |   #define LEDD 27  |   #define LEDD 27  | 
- 实物连接图(拍照,控制图片大小,能看清即可)及程序运行结果描述
 
实物连接好的图片如下:

操作摇杆,端口数据输出显示器与数码管上显示的电压数值一致,

数码管上的数字会随摇杆x轴的移动而变化:x值增大,电压值也会相应增大;x值减小,电压值也会相应减小

其中当数码管上电压值小于2V时,有报警提示,连接的小灯会亮起。

3、程序控制代码
//部分代码如下,完整代码请查看附件
void LED4_Display(void){unsigned char *led_table;unsigned char i;//第一位led_table=LED_0F1+LED[0];i=*led_table;LED_OUT(i);LED_OUT(0x08);digitalWrite(RCLK,LOW);digitalWrite(RCLK,HIGH);delay(5);//第二位led_table=LED_0F+LED[1];i=*led_table;LED_OUT(i);LED_OUT(0x04);digitalWrite(RCLK,LOW);digitalWrite(RCLK,HIGH);delay(5);//第三位led_table=LED_0F+LED[2];i=*led_table;LED_OUT(i);LED_OUT(0x02);digitalWrite(RCLK,LOW);digitalWrite(RCLK,HIGH);delay(5);//第四位led_table=LED_0F+LED[3];i=*led_table;LED_OUT(i);LED_OUT(0x01);digitalWrite(RCLK,LOW);digitalWrite(RCLK,HIGH);delay(5);}void LED_OUT(unsigned char X) {unsigned char i;for (i = 8; i >= 1; i--) {if (X & 0x80) { // 取出最高位digitalWrite(DIO, HIGH);} else {digitalWrite(DIO, LOW);}X <<= 1;  // 左移一位,让次高位来到最高位digitalWrite(SCLK, LOW);  // SCK是上升沿的时候要把数据写入digitalWrite(SCLK, HIGH);}
}
 
五、实验小结
掌握了四位数码管的连接方式,学会了如何通过编程控制数码管显示数字,并实现了保留三位小数的电压值显示。定义一个带小数点的数字字模数组,第一位需要小数表示,显示第1位数+小数点led_table = LED_0F1 + LED[0]
六、成果文件提取链接
链接:https://pan.baidu.com/s/1MyEzwT20xN4kDZvbtYzbZg?pwd=n01n 
 提取码:n01n 
