蓝桥杯七届单片机开发组决赛试题

合集下载

蓝桥杯决赛编程题汇总(含答案)

蓝桥杯决赛编程题汇总(含答案)

一.结果填空题。

1.求最大公约数//辗转相除,求两个数的最大公约数public static int gcd(int n,int m){ if(n == 0) return m;return gcd(m%n,n);}//最小公倍数 = n*m/gcd(n,m)public static int gbs(int n,int m){ return n*m/gcd(n, m);}2.a 的n 次幂public static int f(int a,int n){ int x = 1;for(int i=0;i<n;i++) x = x*a;return x;}// a%p b%p == (a+b)%p = (a%p+b%p)// (a*b)%p = ((a%p)*(b%p))%p// a 的 n 次幂对 p取模public static int f2(int a,int n,int p){ int x = 1;for(int i=0;i<n;i++) x = (x*a)%p;return x;}3.第n个素数。

素数是不能在进行等分的整数,比如 7,11。

而9不是素数,因为它可以平分为3等分,一般认为最小的素数是2,接着是3,5,。

请问,第100002(十万零二)个素数是多少。

请注意:2是第一个素数,3是第二个素数,一次类推筛法:public static void getSuShu(int n){int N = 1000*1000*10;byte[] a = new byte[N];for (int i = 2; i < N/2; i++) {if(a[i] == 1)continue;//和数没有资格参加筛法for (int k = 2; k < N/i; k++) {if(i*k<N) a[i*k] = 1;}}int m = 0;for (int i = 2; i < N; i++) {if(a[i] == 0){m++;if(m == n)System.out.println("=="+i+" ");}}System.out.println("m == "+m);}4.在n个球中,任意去除m个(不放回),有多少种取法?算法实现:public class Test_01{// 在n个球中,任意去除m个(不放回),有多少种取法?public static int test_01(int n , int m ){ // 出口设计。

蓝桥杯大题总结(历届比赛共40多大题)

蓝桥杯大题总结(历届比赛共40多大题)

常用算法题目1.算法是这样的,如果给定N个不同字符,将这N个字符全排列,最终的结果将会是N!种。

如:给定A、B、C三个不同的字符,则结果为:ABC、ACB、BAC、BCA、CAB、CBA一共3!=3*2=6种情况。

public class AllPermutation{public static void main(String[] args){//使用递归完成全排列char[] source=new char[]{'A','B','C'};char[] result=new char[source.length];allPermutation(0,source,result);}/**** @param index当前考虑的数的下标(从0开始)* @param source* @param result*/public static void allPermutation(int index,char[] source,char[] result){//当源数据中只有一个字符时,将该字符加入结果数组,并输出if(source.length==1){result[index]=source[0];show(result);return ;}for(int i=0;i<result.length-index;i++){result[index]=source[i];char[] newSource=getNewSource(source,source[i]);allPermutation(index+1, newSource,result);}}public static void show(char[] result){System.out.println(result);}/*** 生成去掉指定字符的新源数据数组* @param source 原来的源数据数组* @param c 指定去掉的字符* @return*/public static char[] getNewSource(char[] source,char c){ char[] newSource=new char[source.length-1];for(int i=0,j=0;i<source.length;i++){if(source[i]!=c){newSource[j]=source[i];j++;}}return newSource;}}2.串的简单处理串的处理在实际的开发工作中,对字符串的处理是最常见的编程任务。

蓝桥杯c++本科决赛真题

蓝桥杯c++本科决赛真题

蓝桥杯决赛共五道题一:【结果填空】(满分5分)1949年的国庆节(10月1日)是星期六。

今年(2012)的国庆节是星期一。

那么,从建国到现在,有几次国庆节正好是星期日呢?只要答案,不限手段!可以用windows日历,windows计算器,Excel公式,。

当然,也可以编程!二:【代码填空】(满分16分)某工业监控设备不断发回采样数据。

每个数据是一个整数(0到1000之间)。

各个数据间用空白字符(空格,TAB或回车换行)分隔。

这些数据以文本形式被存储在文件中。

因为大多数时候,相邻的采样间隔数据是相同的,可以利用这个特征做数据的压缩存储。

其方法是:对n(n>1)个连续相同的数字只记录n和该数字本身;对m(m>0)个连续不重复的数字,则记录m*-1 和这些数字本身(之所以用负数,是为了与第一种情况区分,便于解压缩)。

例如:采样数字:12 34 34 25 25 25 25 11 15 17 28 14 22 22 22 13则根据上述规则变化后:-1 12 2 34 4 25 -5 11 15 17 28 14 3 22 -1 13下面的程序实现了这个功能。

请仔细阅读分析代码,填写空白的部分。

void pop(int s, int* buf, int c, FILE* fp){int i;if(s){fprintf(fp, "%d %d ", c, *buf);}else{fprintf(fp, "%d ", -c);for(i=0; i<c; i++){fprintf(fp, "%d ", buf[i]);}}}void dopack(FILE* r, FILE* w){int buf[BUF_N];int pos = 0; // 下一个数字在buf中将要存放的位置int c = 0; // 当前段已读入的整数个数int pst;int cst;while(fscanf(r, "%d", buf+pos)==1){if(c==0){c = pos = 1;continue;}if(c==1){pst = buf[0] == buf[1];pos = pos + 1 - pst;c = 2;continue;}cst = buf[pos-1] == buf[pos];if(pst && !cst){pop(pst, buf, c, w);buf[0] = buf[1];c = pos = 1;pst = cst;}else if(!pst && cst || pos == BUF_N-1){pop(pst, buf, c-1, w);buf[0] = buf[pos-1];c = 2;if(!cst){buf[1] = buf[pos];pos = 2;}else{pos = 1;pst = ______________; // 填空1}}else{c++;if(!pst) pos++;}} // whileif(c>0) _____________________________; // 填空2 }void main(){FILE* rfp;FILE* wfp;if((rfp=fopen(RFILE, "r")) == NULL){printf("can not open %s!\n", RFILE);exit(1);}if((wfp=fopen(WFILE, "w")) == NULL){printf("can not open %s!\n", WFILE);fclose(rfp);exit(2);}dopack(rfp, wfp);fclose(wfp);fclose(rfp);}【注意】只填写缺少的部分,不要抄写已有的代码。

第七届蓝桥杯省赛a组试题及答案

第七届蓝桥杯省赛a组试题及答案

第七届蓝桥杯省赛a组试题及答案第七届蓝桥杯省赛A组试题及答案1. 选择题- 1.1 以下哪个选项是Java中的数据类型?A. BooleanB. StringC. IntegerD. All of the above- 答案:D- 1.2 在C++中,用于定义一个类的方法是什么关键字?A. classB. structC. functionD. method- 答案:A2. 填空题- 2.1 在Python中,用于定义函数的关键字是____。

- 答案:def- 2.2 在JavaScript中,用于声明变量的关键字是____。

- 答案:var3. 编程题- 3.1 编写一个函数,计算并返回从1到n的整数之和。

- 答案:```pythondef sum_n(n):return sum(range(1, n+1))```- 3.2 编写一个程序,实现一个简单的计算器,可以进行加、减、乘、除操作。

- 答案:```pythondef calculator(a, b, operation):if operation == '+':return a + belif operation == '-':return a - belif operation == '*':return a * belif operation == '/':return a / b if b != 0 else 'Error: Division by zero'```4. 简答题- 4.1 解释什么是面向对象编程(OOP)?- 答案:面向对象编程(OOP)是一种编程范式,它使用“对象”来设计应用程序和程序。

对象是现实世界中事物的抽象,它们具有属性(数据)和方法(功能)。

- 4.2 描述一下什么是递归函数?- 答案:递归函数是一个调用自身的函数,它允许函数在执行过程中调用自己。

第七届蓝桥杯嵌入式比赛决赛赛题

第七届蓝桥杯嵌入式比赛决赛赛题

密 封 线----------------------------------------------------------------------------- 2016年“蓝桥杯” 第七届全国软件和信息技术专业人才大赛个人赛(电子类)决赛嵌入式设计与开发项目“温湿度监控设备”设计任务书功能简述“温湿度监控设备”通过采集传感器输出电压信号和信号频率得到环境温湿度数据,并能够根据设定的温湿度阈值执行相应动作,系统框图如图1所示:图1 系统框图CT117E 考试板电路原理图与使用说明、I2C 总线驱动、LCD 驱动程序及本题涉及到的芯片资料可参考计算机上的电子文档。

电路原理图、程序流程图及相关工程文件请以考生准考证命名,并保存在指定文件夹中(文件夹名为考生准考证号,文件夹保存在监考员指定位置)。

设计任务及要求1.温度测量功能通过竞赛板上电位器R37输出电压模拟温度传感器输出信号,温度测量范围为-20℃~60℃,电压温度关系为如下式所示:T = k*V R37 + b,其中T代表环境温度,V R37为电位器输出信号,k、b 为常数,0V 时对应温度为-20℃,3.3V对应60℃。

2.湿度测量功能通过竞赛板PA7引脚检测输入信号频率,相对湿度测量范围为10%~90%,频率湿度关系如下式所示:H = m*F + n,其中H代表环境湿度,F为传感器输入到设备信号频率,m、n 为常数,1KHz对应相对湿度为10%,10KHz对应90%。

3.测试信号通过竞赛板PA1引脚输出频率1KHz到10KHz方波,模拟湿度传感器输出信号。

4.参数设置与数据记录功能可以通过按键设定温、湿度上限和数据采样间隔,温湿度数据记录间隔可设置为1 - 5秒,要求至少保存60组数据,数据不需要写入FLASH或E2PROM存储器。

5.RTC功能通过单片机片内RTC设计实现实时时钟功能。

6.按键功能定义设备上电后,通过LCD显示实时温、湿度数据和数据记录次数,显示格式如图2所示:图2. LCD显示界面参考图(实时数据显示)B1按键:“功能”按键,按下后进入功能设定界面(如图3所示),再次按下B1按键时退出设置界面,保存用户设定的结果到E2PROM,并返回图2所示的实时数据显示界面。

蓝桥杯考试题及答案

蓝桥杯考试题及答案

蓝桥杯考试题及答案一、单项选择题(每题2分,共10题)1. 以下哪个不是计算机编程语言?A. PythonB. JavaC. C++D. English答案:D2. 在HTML中,用于定义最重要的标题的标签是?A. `<h1>`B. `<h6>`C. `<head>`D. `<body>`答案:A3. 在数据库中,用于删除表中数据的SQL命令是?A. DELETEB. DROPC. INSERTD. UPDATE答案:A4. 哪种数据结构允许在两端进行插入和删除操作?A. 栈B. 队列C. 链表D. 数组答案:C5. 在计算机科学中,二进制数“1010”转换为十进制数是多少?A. 8B. 10C. 12D. 14答案:B6. 以下哪个选项不是面向对象编程的特性?A. 封装B. 继承C. 多态D. 过程化答案:D7. 在JavaScript中,用于定义函数的关键字是?A. functionB. varC. letD. const答案:A8. 在Unix/Linux系统中,查看当前目录下的文件和文件夹的命令是?A. lsB. pwdC. cdD. mkdir答案:A9. 以下哪个算法不是排序算法?A. 快速排序B. 归并排序C. 深度优先搜索D. 堆排序答案:C10. 在计算机图形学中,3D图形渲染中常用的坐标系统是?A. 笛卡尔坐标系B. 极坐标系C. 柱面坐标系D. 球面坐标系答案:A二、填空题(每题2分,共5题)1. 在Python中,用于创建空列表的语法是____。

答案:[]2. 在HTML中,用于创建超链接的标签是____。

答案:<a>3. SQL查询语句中,用于选择所有列的关键字是____。

答案:*4. 在计算机科学中,一个算法的时间复杂度通常用____表示。

答案:大O符号5. 在JavaScript中,用于获取元素的CSS样式的属性是____。

蓝桥杯软件开发大赛试题

蓝桥杯软件开发大赛试题全文共四篇示例,供读者参考第一篇示例:蓝桥杯软件开发大赛是一项举办多年的IT技术比赛,旨在激发青少年对软件开发的兴趣,培养他们的编程能力和创新思维。

每年举办的蓝桥杯软件开发大赛都吸引了众多热爱编程的学生参与,展示他们的才华和技能。

本文将介绍蓝桥杯软件开发大赛的试题设置和一些参赛注意事项,希望对准备参加比赛的同学有所帮助。

蓝桥杯软件开发大赛的试题种类多样,涉及算法设计、数据结构、数据库应用、Web开发、移动应用等多个领域。

比赛分为初赛和决赛两个阶段,初赛主要是在线笔试,考察学生的编程基础和思维能力;决赛则是现场编程比赛,要求参赛选手根据赛题要求设计和实现一个完整的软件项目。

在蓝桥杯软件开发大赛的初赛中,通常会涉及一些常见的编程题目,比如求最大公约数、字符串匹配、图遍历等。

参赛选手需要在规定的时间内完成这些题目,通过分析问题、设计解决方案、编写代码,并最终得到正确的结果。

初赛中还会有一些开放性的编程题目,要求参赛选手自行设计算法和数据结构,解决现实生活中的问题,展现自己的创新能力和实践能力。

而蓝桥杯软件开发大赛的决赛阶段则更加具有挑战性,参赛选手需要在有限的时间内完成一个完整的软件项目,包括需求分析、系统设计、代码实现、测试调试等环节。

在决赛中,参赛选手还需要展示出团队协作和沟通能力,完成一个协作开发的软件项目,从而全面展现出自己的技术水平和综合素质。

在参加蓝桥杯软件开发大赛时,选手需要注意一些事项。

要认真准备,掌握扎实的编程基础和工程实践能力,熟悉各种编程语言和开发工具。

要多练习,解决更多的编程题目,提升自己的编程技能和解决问题的能力。

要注意团队合作,能够有效沟通和协作,充分发挥每个团队成员的优势,共同完成比赛任务。

蓝桥杯软件开发大赛是一个很好的展示自己技能、学习交流的平台,能够锻炼参赛选手的编程能力和团队协作能力。

希望更多的学生能够参加这样的比赛,挑战自我,不断提高,追求卓越。

第七届蓝桥杯大赛单片机设计与开发项目模拟题

密 封 线-----------------------------------------------------------------------------全国软件和信息技术专业人才大赛模拟题单片机设计与开发科目“温度记录器”设计任务书功能简述设备按照用户通过按键设定的时间间隔自动采集并存储温度数据,并具有采集完成提醒、数码管显示等功能,系统硬件部分主要由按键电路、电源供电电路、RTC 时钟、传感器电路和显示电路组成。

系统框图如图1所示:图1. 系统框图单总线驱动程序、DS1302芯片驱动程序、CT107D 单片机考试平台电路原理图以及本题所涉及到的芯片数据手册,可参考计算机上的电子文档。

程序流程图及相关工程文件请以考生号命名,并保存在计算机上的考生文件夹中(文件夹名为考生准考证号,文件夹位于 Windows 桌面上)。

设计任务及要求1.数码管显示1.1设备上电后,自动进入参数设置界面(图1)此时,通过按键S4切换4个温度图1. 参数设置界面(上电默认)按下按键S5,确认采集间隔时间,并退出参数设置界面(图1),进入时钟显示界图2. 时钟显示界面要求:时钟显示界面(图2)下,提示符1、2以1秒为间隔闪烁1.2 当设备按照用户设定的采集间隔采集到10个数据后,指示灯L1闪烁提示本次温度采集已经完成,此时进入数码管温度采集显示界面(图3):图3. 温度采集显示界面此时,按下S6,L1熄灭,按照时间先后顺序,切换显示设备内存储的温度数据;按下S7按键进入参数设置界面(图1),待用户输入温度采集间隔之后,可以进行下一次的温度采集工作。

说明:索引指的是当前显示的温度按照采集时间先后顺序的编号(00-09)。

2.温度检测功能使用DS18B20温度传感器完成温度测量功能。

3.RTC使用DS1302时钟芯片完成RTC的相关功能。

4.设备工作模式说明(1)默认RTC时间:23时59分50秒;(2)默认温度数据采集间隔为1秒;(3)设备处在不同的显示界面下,与该界面无关的按键操作无效;(4)温度数据最大存储容量:10个5.电路原理图设计使用基本阻容元器件、集成运算放大器设计硬件电路,完成如下功能:已知某种类型的传感器输出4-20mA电流信号,设计电路将电流信号转换为0V-5V的电压信号。

第七届蓝桥杯省赛c语言试题及答案

第七届蓝桥杯省赛c语言试题及答案第七届蓝桥杯省赛C语言试题及答案1. 题目一:计算圆的面积要求:编写一个程序,输入圆的半径,计算并输出圆的面积。

答案:```c#include <stdio.h>#define PI 3.14159int main() {float radius, area;printf("请输入圆的半径: ");scanf("%f", &radius);area = PI * radius * radius;printf("圆的面积是: %.2f\n", area);return 0;}```2. 题目二:字符串反转要求:编写一个函数,实现字符串的反转。

答案:```c#include <stdio.h>#include <string.h>void reverseString(char *str) {int i, j;char temp;for(i = 0, j = strlen(str) - 1; i < j; i++, j--) {temp = str[i];str[i] = str[j];str[j] = temp;}}int main() {char str[100];printf("请输入一个字符串: ");scanf("%s", str);reverseString(str);printf("反转后的字符串是: %s\n", str);return 0;}```3. 题目三:寻找最大值要求:编写一个程序,输入10个整数,找出并输出其中的最大值。

答案:```c#include <stdio.h>int main() {int numbers[10], max;printf("请输入10个整数:\n");for(int i = 0; i < 10; i++) {scanf("%d", &numbers[i]);}max = numbers[0];for(int i = 1; i < 10; i++) {if(numbers[i] > max) {max = numbers[i];}}printf("最大值是: %d\n", max);return 0;}```4. 题目四:计算阶乘要求:编写一个函数,计算并返回一个整数的阶乘。

第七届蓝桥杯CCB组题解优选稿

第七届蓝桥杯C C B组题解集团文件版本号:(M928-T898-M248-WU2669-I2896-DQ586-M1988)第一题煤球数目有一堆煤球,堆成三角棱锥形。

具体:第一层放1个,第二层3个(排列成三角形),第三层6个(排列成三角形),第四层10个(排列成三角形),....如果一共有100层,共有多少个煤球?请填表示煤球总数目的数字。

注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。

这道题坑死了,第一次看堆成三角棱锥形,草稿本画半天都没画出个三角棱锥。

后来单独看每句话才知道每层一个三角形叠起来就是三角棱锥。

我去。

看懂题目这个题目就很简单了,每层的个数是上层的个数加上层数,意思就是An = An-1 + n,然而题目是求的前100层一共多少煤球。

所以是Sn.代码双重for循环就出来了。

答案是:1717001.#include<stdio.h>2.3.i nt main()4.{5.i nt a[101]={0};6.f or(int i=1;i<101;i++)7.a[i]=a[i-1]+i;8.i nt ans=0;9.f or(int j=1;j<101;j++)10.ans+=a[j];11.printf("%d\n",ans);12.return0;13.}第二题:生日蜡烛某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。

现在算起来,他一共吹熄了236根蜡烛。

请问,他从多少岁开始过生日party的?请填写他开始过生日party的年龄数。

注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。

呵呵,水题,但是出题人不严谨啊!!!怎么就不能考虑万一他今年236岁呢....好了不说了强迫症犯了。

蓝桥杯这种不像acm的题目的,能暴力直接暴力。

不用想太多。

直接从1~236 枚举 start, end 分别表示他开始过生日的年龄和今年的年龄,然后计算之间吹蜡烛的总和如果等于236就输出start ,end. 答案是:261.#include<stdio.h>2.3.i nt main()4.{5.i nt start,end;6.f or(start=1;start<236;start++)7.{8.9.f or(end=start;end<236;end++)10.{11.12.int sum=0;13.for(int i=start;i<=end;i++)14.sum+=i;15.if(sum==236)16.{17.18.printf("start:%dend:%d\n",start,end);19.}20.21.}22.23.}24.25.return0;26.}第三题:凑算式B DEFA + — + -——— = 10C GHI(如果显示有问题,可以参见【图1.jpg】)这个算式中A~I代表1~9的数字,不同的字母代表不同的数字。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

图 8. 事件类型查询界面-事件类型
13-50-12

分隔符

分隔符

图 9. 事件类型查询界面-发生时间 6. 说明
6.1 最近一次电压波动发生时间和类型、电压上限 VH 、电压下线 VL 保存 在 E2PROM 中,设备重新上电后,能够从储存器中获取参数和数据。 6.2 建立一个准考证号命名的 TXT 文档,写出作品设定的单片机内部震荡 器频率保存在考生文件夹中。 7. 电路原理图设计 设计接口电路,能够将 200Hz-20KHz、峰峰值 10mV 的正弦信号放大 100 倍, 并将其转换为同频率的矩形波,设计电路原理图并在原理图上说明设计思想和 电路工作原理。
矩阵键盘
图 1. 系统框图
I2C 总线、DS1302 时钟芯片时序控制程序、CT107D 单片机考试平台电路原 理图以及本题涉及到的芯片数据手册,可参考计算机上的电子文档。原理图文 件、程序流程图及相关工程文件请以考生号命名,并保存在计算机上的考生文 件夹中(文件夹名为考生准考证号,文件夹位于 Windows 桌面上)。
项目名称 电路设计
得分 评卷人
一、电路原理图设计 根据设计任务要求,使用 Protel 99se 或 Altium Designer Summer09 软件
设计电路原理图,标明元器件参数,说明电路工作原理。原理图文件保存在考 生文件夹中(文件夹以考生的准考证号命名)。
项目名称 程序设计
得分 评卷人
第七届蓝桥杯单片机设计与开发组总决赛试题
“电压、频率采集设备任务书” 功能简述
“电压、频率采集设备”能够实现测量信号频率和电压,修改、储存工作参 数,记录、查询事件等功能,系统由按键单元、ADC 采集单元、显示单元、储 存单元组成,系统框图如图 1 所示:
数码管显示
电压测量 频率测量
单片机
E2PROM 实时时钟
二、程序编写及流程图绘制 1. 画出流程图,并保存在考生文件夹中 2. 按照设计要求完成程序设计任务,并将工程文件保存在考生文件夹中。
项目名称 硬件调试
得分 评卷人
三、软、硬件调试 将编译通过的程序下载到单片机芯片中,进行软、硬件统调。 1. 频率测量功能; 2. 电压测量功能; 3. 电压波动捕捉与记录功能; 4. 显示及界面切换功能; 5. 按键输入控制功能; 6. 实时时钟功能;
任务设计及要求 1. 频率信号测量 使用竞赛板 NE555 方波信号发生器产生用于频率测量功能测试的方波
信号,信号频率范围为 500Hz -- 20KHz,电位器 RB3 调节信号频率,可使用“跳 线帽”将单片机 P34 引脚与方波信号发生器输出引脚 NET_SIG 短接。
2. 电压信号测量 使用竞赛板上 RB2 电位器输出测试电压信号,信号输出范围 0V-5V。
VH 电压上限 2000mV(默认值)
VL 电压下限 1000mV(默认值)
图 5. 电压阈值设定界面
上小限时VH
S4
下限 VL
S4
电压阈值调整状态下,“加、减”按键可令当前选择调整的阈值增加或减少 500mV。
5.4 按键 S5 定义为“频率测量”按键,按下后,启动频率测量功能, 设备采集输入 P34 引脚的信号频率,数码管切换到“频率测量”显示界面, “频率测量”功能下,按下 S4 定义为“周期/频率”按键,可以进行频率和 周期数据的切换显示,显示界面如图 6、7 所示:
择的时间单位,再次按下按键 S7 返回到时钟显示界面,完成时钟配置功能。
小时ห้องสมุดไป่ตู้
S4
分钟
S4
S4
秒钟
时钟调整状态下,“加、减”按键可令当前选择调整的时间增加或减少 1 个 单位。
5.3 按键 S6 定义为“电压测量”按键,按下后,启动电压测量功能, 数码管显示格式如图 4 所示:
-1-81500
界面编号:1
熄灭
信号电压:1500mV
图 4. 电压测量界面 电压测量界面下,S4 功能按键为电压阈值调整按键,按下 S4,循环选择电
压上限、下线,对应的显示单元 1 秒间隔亮灭,通过“加、减”按键调整电压 阈值,再次按下 S6 返回到电压测量界面,完成电压阈值配置功能并将新的参数
写入 E2PROM。
20001000
-2-01000
界面编号:2
信号频率:1KHz
图 6. 频率显示界面-频率
-2-01000
界面编号:2
信号频率:1us
图 7. 频率显示界面-周期 5.5 按键 S9 定义为“查询按键”,按下后,显示最近一次电压波动发 生的时间和波动类型,显示格式如图 8、9 所示:
88888800
熄灭
事件类型:00
5.2 按键 S7 定义为“时钟”按键,按下后,数码管显示当前时钟信 息,显示界面如图 3 所示:
12-00-02

分隔符

分隔符

图 3. 时间显示界面
在时钟显示界面下,S4 功能按键为时钟调整按键,按下 S4,循环切换选择
时、分、秒,对应的显示单元 1 秒间隔亮灭,通过“加、减”按键调整当前选
上图例,电压连续变化过程中,在 T1 和 T2 时刻会触发事件记录功能。 5. 显示与按键控制
5.1 4x4 矩阵键盘按键功能定义图 2 所示:
S7 S11 S15 S19 S6 S10 S14 S18 S5 S9 S13 S17 S4 S8 S12 S16
时钟 加 电压 减 频率 查询 功能 空
图 2. 按键功能定义
3. 实时时钟功能 读取 DS1302 实时时钟芯片,并通过数码管显示时间数据,设备上电后
初始化时间配置为 23 时 59 分 55 秒。 4. 记录与输出功能 根据给定硬件的性能参数,设计合理的采样周期,当电压低于电压下
线 VL 或高于电压上线 VH 时,将事件类型和发生时间保存到 E2PROM 中。设备中 只需要保存最近一次发生的电压波动情况,数据储存格式可自定义。
相关文档
最新文档