http://www.uml.org.cn/oobject/200509075.htm
| 如何写好最外围用例 |
| 来源:www.zhangxun.com 作者:张恂 |
|
墨衍会员
·
AI 创作全网分发
墨衍智能分发
本文由作者通过墨衍一键同步至各平台
1分发平台
200+累计阅读
270平均单平台
已同步平台
优快云
微信公众号
微博
知乎
掘金
百家号
博客园
抖音
小红书
你的文章也可以这样分发
墨衍会员 ¥399起/年,写一次发全网
我也要 →
码龄26年
http://www.uml.org.cn/oobject/200509075.htm
| 如何写好最外围用例 |
| 来源:www.zhangxun.com 作者:张恂 |
|
全面掌握单片机外围电路设计
单片机外围电路的设计是实现嵌入式系统功能的关键步骤。在开始设计之前,我们首先需要理解外围电路的作用,它包括电源管理、复位、晶振、I/O接口、驱动与保护、调试接口、以及PCB封装布局等多个方面。设计外围电路时,我们会首先确定单片机的类型与规格,根据其核心处理器的能力和所需外设的要求,来选择合适的电源管理方案和复位逻辑。接下来,我们会根据外围设备的特性设计晶振电路,确保系统能够稳定运行。在扩展输入/输出接口时,我们通常会考虑设备的电气特性和接口保护,以保证长期的稳定性和数据的准确性。
编写测试用例标准
引言 背景 为保证测试用例对需求的覆盖率,即对一个系统从整体功能到单个功能,都尽可能的高的覆盖。而单个功能点主要强调的是不同的输入及其组合所带来的各种输入动作,系统是否都做了处理; 测试用例设计首先要明确该系统存在多少功能点,要通...
单片机外围电路设计实战与经验分享
单片机(Microcontroller Unit, MCU)是一种将中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)、各种输入/输出接口以及其他一些辅助电路都集成到一块硅片上的微型计算机系统。根据应用领域和功能的不同,单片机可以分为通用型和专用型两大类。
非常有用的User case用例描述模板
Table 6.0 Use Case # DATAENTRYPROJECTCUST-1009
Win11内核隔离无法打开的解决方案详解
内核隔离问题的解决需遵循"先硬件后软件"的排查原则,90%以上的案例可通过驱动清理或外设断开解决。对于必须禁用该功能的用户,建议定期使用Windows Defender进行全盘扫描,并保持系统更新至最新版本。技术决策需在安全性和兼容性之间取得平衡,本文提供的多维解决方案可帮助用户构建更稳定的Windows 11使用环境。
2025-E题国一-简易自行瞄准装置:基于嘉立创地猛星/天猛星与K230的视觉巡线云台系统设计
本文详细介绍了2025年全国大学生电子设计竞赛E题一等奖作品——基于嘉立创地猛星/天猛星与K230的视觉巡线云台系统设计。该系统通过地猛星主控实现小车巡线,天猛星主控驱动云台,结合K230开发板的视觉识别能力,构建了一套完整的视觉巡线云台系统,实现了自动巡线与精准瞄准功能。文章深入剖析了硬件选型、双闭环PID控制算法、视觉识别与目标跟踪等核心技术,并分享了系统调试与避坑经验。
需求用例分析之二:级别设置
在《编写有效用例》(阿莱斯特-科伯恩著,下面用科伯恩用例来指代)一书中,赋予了用例不同的级别,科伯恩形象的设定了例如以下级别:海平面、云朵、风筝、蛤等等。 科伯恩建议用例级别分为多个个目标层次:概要、用户目标、子功能,书写需求用例时,仅仅能选择其一,以下对其详细说明: 概要:包含多个用户目标,它有“显示相关目标的生命周期顺序”和“为低层用例提供一个文件夹表”的功能,概要用...
ESP32脑机接口开发板:EEG信号采集与应用开发指南
脑机接口(BCI)技术通过采集脑电图(EEG)信号实现人机交互,其核心在于高精度生物电信号采集与实时处理。基于ESP32微控制器的开发平台结合专业级ADS1299 ADC芯片,可构建8通道EEG信号采集系统,支持250SPS采样率与可编程增益。这种嵌入式解决方案在科研教育领域具有显著优势,既能满足信号质量要求,又大幅降低开发门槛。典型应用包括实时脑电波可视化、注意力检测等BCI场景,通过Python生态工具链(如BrainFlow、LSL)可快速实现数据处理。开发时需注意电极阻抗控制(<10kΩ)和50/6
没头没尾--项目开发笔记:如何编写最外层用例?!
标题:没头没尾--项目开发笔记:如何编写最外层用例?!关键词:结构式的开发,用例驱动开发 02月14号:街上到处都是拿着鲜花的小丫头,比过年都热闹!! 项目将要进入最后的实施阶段,各个子系统也开始了扫尾工作。由于项目中出现的问题很多都是由于设计中的原因,与项目小组的成员进行讨论的时候有时候还是会不自觉的回到项目最初我们有什么工作没有做好,从而从项目中得到更多的经验。 如何编
蓝桥杯单片机学习13——NE555方波发生器&频率测量
NE555详解、引脚图介绍、原理图及工作原理讲解、方波产生的原理、定时器测量频率的原理及使用方法、代码实现
【硬件开发】振铃
如果是开关管的振铃,那么桥臂的SW处产生的振铃会窜入驱动电路,造成的结果就是驱动电路和上桥臂下桥臂之间的SW节点都会有振铃现象。如果是驱动电路的振铃,那么MCU的输出引脚还是正常的PWM,但是到了MOS管两侧就变成带有振铃的PWM波形了。开关振铃产生的原因是MOS管上面的寄生电感当开关管打开时为了保持电流不变感应出的电压会对电源和地产生冲击。开关管的驱动线上的寄生电容和寄生电感导致的振铃为驱动电路振铃。开关管上的寄生电容和寄生电感导致的振铃为开关节点振铃。、电感等元件的存在,导致电路中的电压和。
闭合线段找最外围线段 思路+代码实现
求闭合区域的最外围的线段思路 1.找起始点:获取所有的点,找到最左下点(A)点。很关键的点 2.找起始边:首先用邻接链表存储所有点边之间的关系。找到第一条最外围的线段,根据极角来找最外围的线段,注意A是最左下角,所以上面所有连接它的线段和水平角度不会超过180度。以x轴正方向作为向量(1,0),其他向量和它做角度差,用点积求角度。可以找出AB线段。 3.找所有外边:通过角度差找最外边。如已经知道第一条外边AB边了,现在对B连接的BJ、BG、BC判断哪一条是接下来的边。通过向量叉积和点积方法,.
【Proteus仿真】74HC595+74LS154驱动显示16X16点阵
【Proteus仿真】74HC595+74LS154驱动显示16X16点阵
【日常·闲谈】芯片外围电路如何设计?
听从你心,无问西东。 开了一个新系列,很多时候想分享一些很有趣的内容,但又不想为此花大量的时间去做语言梳理和技术资料查找,久而久之就想不起来要写这个博客了。于是就想到了用闲谈的方法,把这些内容分享出来,虽然不是那么的严谨,但都是自己的一些经验,仅供参考~ 有一部分是别人问我的问题,有一些可以算是我自问自答吧。 —————————————————————————————————————————— 关于这个博文的标题:芯片外围电路如何设计? 这其实是一个很宽泛的问题,轻易没法回答,芯片的种类那么多,数字芯片、模
少儿学编程系列--使用递归画出龙形曲线DragonCurve
龙形曲线(Dragon Curve) 龙形曲线(Dragon Curve)又叫分形龙,是一种自相似碎形曲线的统称,因形似龙的蜿蜒盘曲而得名 使用黄金比例画龙形曲线 根据黄金比例画一条龙曲线。每次递归,第一步向左转32.89度,移动0.74倍原距离;第二个递归步骤向右转46.99度,移动原来距离的0.55倍。请查看这个网页(https://larryriddle.agnesscott.org/ifs/heighway/goldenDragon.htm)了解关于龙形黄线数学的细节 龙形曲线效果 .
华南理工大学-大学物理实验-绪论作业
3.用公式测量某圆柱体铝的密度,测得直径=2.0420.003(cm),高=4.1260.004(cm),质量=36.4880.006(g)。计算铝的密度和测量的标准差,并以测量结果表达式表示之。(要求判别和剔除异常数据)(30分)(了解图解法的注意事项,大学物理实验众多实验数据处理采用这种方法,如PN结温度特性研究,光电效应与普朗克常数的测定,霍尔效应测磁场等等,注意规范作图)实验测得温度与对应的金属丝的长度的数据如下表所示。(了解异常数据的判断方法及具体判断过程,30分的题目n(*≧▽≦*)n)
【外围电路】0.介绍
芯片需要外围电路的核心原因在于其功能实现、性能优化和应用适配性需求,这涉及到电子系统设计的底层逻辑和工程实践原则。
汉书HE8,好用的汇编代码编写工具
汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大
求矩阵最外围元素的最大值、最小值
给定一个n(n>=2)行10列的整数矩阵a,函数maxMin()计算 矩阵最外围元素(指第一行、最后一行的元素,以及第一列、最后一列的元素)的最大值和最小值,并将最大值存入变量mX,最小值存入变量mN。maxMin()的第一个参数是二维整数数组a,第二个参数是a的行数n(n<=10)。 例如,main()函数中a的数据描述了一个3行10列的矩阵,该矩 阵最外围元素的最大值、最小值分别是...
深度学习工具包 DeepLearningToolbox
深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[](https://bitdeli.com/free "Bitdeli Badge")
Camera2Demo
在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作
绿联外围设备_什么是外围设备(外围设备的类型和列表)?
绿联外围设备A Peripheral Device is a computer device or part which is connected to the computer with different connection types. A peripheral device is not a core device for a computer which means a compute...
jre9下载 jdk9
(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】
ADC外围电路的设计
ADC 外围电路的设计 模拟电路的设计 数字外围电路的设计 电源和接地的设计 信号隔离的设计 在使用 ADC 芯片时,由于 ADC 的型号多样化,其性能各有局限性,所以为了使 ADC 能够适 应现场需要以及满足后继电路的要求,必需对 ADC 的外围电路进行设计。 ADC 外围电路的 设计通
外围设备概述
一、外围设备 1.外围设备的一般功能 外围设备的一般功能 外围设备的功能是在计算机和其他机器之间,以及计算机与用户之间提供联系。由于外围设备的地位越来越重要,主要介绍以下内容:硬磁盘、可移动磁盘、磁带和光盘。 外围设备的功能是在计算机和其他机器之间,以及计算机与用户之间提供联系。 外围设备(磁盘)基本组成 (1)存储介质,它具有保存信息的物理特征。例如磁盘就是一个存储介质的例子,它是用记录在盘上的磁化元表示信息。 (2)驱动装置,它用于移动存储介质。例如,磁盘设备中,驱动装置用于转动磁盘并进行
那些SAP项目里的主流外围系统
做过大公司SAP项目的同行们都知道,很多大公司尤其是哪些世界500强的跨国企业的IT系统很多。即使企业实施了SAP ERP系统并将其作为核心战略平台,也不能将那些IT系统全部替换掉。因此这造成了在核心的SAP系统以外,还有很多外围系统并存,并且部分的外围系统与SAP系统有接口的情况。
引用外围类的对象
如果你需要对外围类对象的引用,可以通过在此外围类名称后面跟一个句点和 this 关键字 来获得。例如在类 Sequence.SSelector 中,通过 Sequence.this,任何方法都能够获取 那个保存的指向外围类 Sequence 的引用。而作为结果获取的这个引用自动就是类型正确 的。(它在编译期被获知并检查过,所以没有运行期的开销。) 有时候你会对某个对象说,我要生成你
2296

被折叠的 条评论
为什么被折叠?



