【倒计时 2 天】SOFAMeetup#7 合肥站-SOFA 微服务架构技术生态与实践

CSS 弹性盒布局:flex-wrap 换行与多行交叉轴对齐 默认情况下,弹性容器(flex container)会把所有子项(flex item)挤在一行里,哪怕空间不够也只会压缩子项,而不会换行。浏览器会依次把子项放进当前行,当剩余空间不足以容纳下一个子项的基础尺寸时,就开启新的一行。一旦允许换行,容器里就会出现多条「弹性行(flex line)」,此时交叉轴对齐的行为也会从「单行对齐」变成「多行对齐」,是默认值:当子项没有设置固定高度时,行会被拉伸,子项随之变高,看起来像是「撑满了容器」。上面这段代码中,每个子项固定 200px 宽,容器宽度决定每行能放几个。 阅读详情

主题:SOFA 微服务架构技术生态与实践

时间:2021 年 07 月 24 日(周六)13:00-18:00

活动地点:合肥高新区创新产业园 D8 栋一楼集思空间

报名方式:

1、点击“阅读原文”,即可报名。

2、扫描下方海报上的二维码,即可报名。

【重要提醒】距离 SOFAMeetup#7 合肥站-SOFA 微服务架构技术生态与实践开始仅剩 2 天,大家抓紧时间报名来现场呀~

活动简介:微服务是一种用于构建应用的架构方案,从 2005 Peter Rodgers 博士提出的 Micro-Web-Service,到 2014 年 Martin Fowler 与 James Lewis 共同提出 Micro service,定义了微服务架构风格;从开始简单的服务注册发现,到熔断、限流、降级等服务治理策略,并逐渐配备完整服务工具和平台,再到现在依托 Service Mesh ,将服务通用组件下沉到平台层实现,解耦通用组件和业务逻辑。

微服务架构通过服务化拆分来解耦领域业务和简化系统复杂性的,但是随之而来的是引入了微服务本身的复杂度;需要解决包括服务治理、监控、容错处理、一致性等其他分布式系统面临的问题。

本次主题将从网关到注册中心,从链路到监控,再到 Service Mesh 的大规模落地实践,聊一聊微服务技术生态与实践。

报名方式:

1、扫描海报二维码,立即报名;

2、点击阅读原文,即可报名;

在活动现场不仅仅可以和讲师面对面交流

还有精美礼品发放,快来现场吧~

点击阅读原文立刻报名

避坑指南:CST粒子工作室Track Solver常见的5个参数设置错误 本文深入剖析了CST粒子工作室中Track Solver在电子枪仿真时常见的5个关键参数设置错误,包括空间电荷模型选择、发射源定义、材料边界处理、监视器配置及求解器稳定性设置。通过对比错误与正确做法,帮助用户避开陷阱,确保粒子追踪仿真的物理准确性与数值稳定性,从而获得更精准的电子枪仿真结果。 阅读详情

相关推荐

TIMER-XL:突破长上下文限制的Transformer时序预测新范式

本文深入解析了清华大学提出的TIMER-XL模型,这是一种突破长上下文限制的Transformer时序预测新范式。它采用Decoder-only架构与补丁级生成技术,并创新性地引入TimeAttention机制,有效解决了传统模型在处理海量历史数据时面临的“上下文瓶颈”问题,显著提升了长序列预测的精度与稳定性。

weixin_28340315的博客 445

【倒计时 3 天】SOFAMeetup#7 合肥站-SOFA 微服务架构技术生态与实践

主题:SOFA 微服务架构技术生态与实践时间:2021 年 07 月 24 日(周六)13:00-18:00活动地点:合肥高新区创新产业园 D8 栋一楼集思空间报名方式:1、点击“阅读原文...

金融级分布式架构 158

AI大模型开发——transformer模型超全完整版(0基础可懂)

为了更深入的了解transformer模型,我们首先从transformer的诞生聊起吧。transformer在2017年由Vaswani等人首次提出,它摒弃了之前流行的循环神经网络和卷积神经网络的架构,引入了自注意力机制( Self-Attention),显著提高了处理序列数据的能力和效率。transformer模型的这种设计使其在处理长距离依赖问题时, 相比于传统的循环神经网络和长短期记忆网络(LSTM)表现得更加出色,至此, 开启了NLP技术的新篇章。

m0_74922316的博客 2120

CSS 盒子模型与背景渐变、文字渐变实战

content(内容区):文字、图片等实际内容占据的区域padding(内边距):内容与边框之间的空白border(边框):盒子的边界margin(外边距):盒子与其他盒子之间的间距fill:#333;important;important;fill:none;color:#333;color:#333;important;fill:none;fill:#333;height:1em;margin 外边距border 边框padding 内边距content 内容区。

2601_96876853的博客 240

EBS开发_创建AP付款

--以下代码于20181002在Tony环境测试通过 /* BEGIN   --mo_global.init('SQLAP');   apps.fnd_global.apps_initialize(user_id => 1110, resp_id => 50597, resp_appl_id => 20003);   --mo_global.set_policy_context(...

蜗牛先生快跑的博客 4767

Android16 动态隐藏systemUI右侧音量条

本文介绍了如何屏蔽SystemUI系统音量条并显示自定义音量控制条的实现方法。主要通过两个步骤:1)在编译脚本中定义控制属性persist.rp.show.volume.dialog=off来隐藏系统音量条;2)修改SystemUI源码中的VolumeDialogImpl.java文件,在showH方法中根据属性值判断是否显示系统音量条。当属性值为off时直接return,从而屏蔽系统音量条的显示,实现自定义音量控制条的替代显示。该方法通过系统属性控制显示状态,具有灵活可控的特点。

tzj1058756809的博客 779

CSS 弹性盒布局:子项目 flex 伸缩与 gap 间隙详解

flex-grow决定剩余空间如何分配,决定空间不足时如何压缩,flex-basis决定伸缩基准;日常优先使用flex简写,理解flex: 1与flex: auto的差异;项目间距优先使用gap,避免margin带来的首尾处理问题;注意与这两个高频细节。

2601_96876853的博客 340

【OpenClaw从入门到精通】第12篇:OpenClaw 2026子代理实战全攻略:用ACP架构搭建多智能体协作网络(附完整代码)

本文聚焦OpenClaw 2026.3.2版本默认启用的ACP(Agent Communication Protocol)子代理机制,从核心概念、底层原理到企业级实操全流程拆解。先解析子代理的定义、ACP协议通信原理及主从代理分工逻辑,再提供环境准备的详细步骤(版本验证、配置调整、技能安装);随后通过三个递进式虚拟案例(客服分流、智能文档处理、企业级招聘全流程),提供可直接运行的完整代码、执行结果及技术要点解析;最后补充子代理管理运维、性能优化与避坑指南。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 2382

CSS 定位布局:相对定位与绝对定位详解

父元素 relative + 子元素 absolute」是 CSS 中最常用的定位组合,几乎所有的角标、下拉菜单、tooltip 都基于它实现。它决定了元素在页面中的定位方式,也是实现悬浮按钮、下拉菜单、遮罩层、角标等常见 UI 效果的核心手段。的偏移只是视觉位移,不会改变元素在文档流中的占位,因此不会引起其他元素重排。在视觉上向右移动 30px、向下移动 20px,但它原本占据的空间依然保留,后面的元素不会补上来。再大也无法跳出父元素的层级。,不再占据原来的空间,其他元素会像它不存在一样重新排列。

2601_96876853的博客 263

opencv 双目摄像头拍照(分别左右镜头拍照)

准备一个usb线的双目同步摄像头: 运行环境是vc2015,opencv3.1。 将左右两个摄像头拍到的图片分别保存起来。 1)适用条件 双目同步摄像头(两个镜头,共用一个设备ID) 使用语言:C++ 、opencv库 摄像头 分辨率2560*960 或以上。 源程序: #include"stdafx.h" #include<iostream&g...

黎国溥 1万+

SAP 权限配置(复合角色)

复合角色创建步骤:业务场景:通常单一角色权限颗粒度划分比较细,当需要分配单一角色权限A、B(多个单一角色)给某账号用户Y时,可以先建立一个复合角色C,将A、B绑定到复合角色C中,再将角色C分配给账号Y即完成权限配置。 业务模拟: 1、PFCG创建复合角色: 2、在角色页面添加子角色 在角色分页内添加子角色,点击“菜单”分页中的“读菜单”即可导入子角色中的菜单: 3、将用户分配给...

willieyuan的博客 7087

CSS 轮播图:让内容盒子垂直居中的几种做法

做轮播图时,最常见的结构是「外层容器固定高度 + 内层内容盒子(图片、标题、按钮组)」。轮播图内容盒子的垂直居中,本质是「容器有高度 + 子元素有居中规则」。轮播容器用 Flex,内层盒子自动在两个方向居中,代码最少、兼容性最好(现代浏览器全支持)。下面按「从简单到通用」的顺序,给出几种在轮播图中真正好用的垂直居中方案。,水平居中了,但垂直方向总是贴着顶部,或者被拉伸变形。,这是不依赖 Flex/Grid 的经典写法。新项目不建议使用,仅在维护老代码时能看懂即可。是 Flex 两个属性的简写,写法更短。

2601_96876853的博客 366

【Web Development】02 CSS

CSS(层叠样式表 Cascading Style Sheets)。CSS 全称 Cascading Style Sheets 层叠样式表CSS 语法基础:颜色写法:直接写在 HTML 标签的属性里面。 特点:只作用于当前这一个标签。在 HTML 文档的标签中放置标签,内部写 CSS 规则。 特点:仅对当前这一个 HTML 页面生效。把全部 CSS 写在独立文件;在 HTML 用标签引入。 HTML 部分: mystyle.css 文件: 特点:多个网页可以共用同一个 css 文件,大型项目

lxylxylxy的博客 216

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

深度学习工具包 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&#39;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(&#39;DeepLearnToolbox&#39;));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(&#39;state&#39;,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&#39;); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand(&#39;state&#39;,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 = &#39;sigm&#39;;%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, &#39;Too big error&#39;);```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(&#39;state&#39;,0)sae = saesetup([784 100]);sae.ae{1}.activation_function = &#39;sigm&#39;;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)&#39;)% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = &#39;sigm&#39;;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, &#39;Too big error&#39;);```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x&#39;,28,28,60000))/255;test_x = double(reshape(test_x&#39;,28,28,10000))/255;train_y = double(train_y&#39;);test_y = double(test_y&#39;);%% 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&#39;ll get around 1.2% errorrand(&#39;state&#39;,0)cnn.layers = { struct(&#39;type&#39;, &#39;i&#39;) %input layer struct(&#39;type&#39;, &#39;c&#39;, &#39;outputmaps&#39;, 6, &#39;kernelsize&#39;, 5) %convolution layer struct(&#39;type&#39;, &#39;s&#39;, &#39;scale&#39;, 2) %sub sampling layer struct(&#39;type&#39;, &#39;c&#39;, &#39;outputmaps&#39;, 12, &#39;kernelsize&#39;, 5) %convolution layer struct(&#39;type&#39;, &#39;s&#39;, &#39;scale&#39;, 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, &#39;Too big error&#39;);```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(&#39;state&#39;,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, &#39;Too big error&#39;);%% ex2 neural net with L2 weight decayrand(&#39;state&#39;,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, &#39;Too big error&#39;);%% ex3 neural net with dropoutrand(&#39;state&#39;,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, &#39;Too big error&#39;);%% ex4 neural net with sigmoid activation functionrand(&#39;state&#39;,0)nn = nnsetup([784 100 10]);nn.activation_function = &#39;sigm&#39;; % 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, &#39;Too big error&#39;);%% ex5 plotting functionalityrand(&#39;state&#39;,0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = &#39;softmax&#39;; % 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, &#39;Too big error&#39;);%% 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(&#39;state&#39;,0)nn = nnsetup([784 20 10]); nn.output = &#39;softmax&#39;; % 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, &#39;Too big error&#39;);```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

CSS2DObject 名称标签最小示例

在三维场景中实现随模型移动的名称标签,纯 DOM + CSS2DObject 方案兼具低实现成本、高样式与交互灵活性及良好性能。通过 document.createElement 组装带图标和文字的标签,利用 CSS2DObject 挂载并跟随模型,配合命名约定与 removeLabel 精准管理生命周期,支持点击、悬停、省略号等原生行为,避免内存泄漏,是中等规模标签场景的理想选择。

weixin_44242600的博客 286

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

CSS 三种引入方式与选择器全解

div p。

2401_89953644的博客 227

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

CSS 仿写页面

拿到设计稿先别写代码。这篇文章先讲「怎么把一张图拆成 DOM 结构」,再把颜色表示、五种尺寸单位、background的六个子属性、文字排版属性逐个落地,最后说明opacity和rgba到底差在哪。

2401_89953644的博客 197

css注意事项一

button {}踩坑场景:你写的分页按钮 hover 变色不生效,大概率是别的选择器优先级更高,把你的样式覆盖了。规避:不要随便写!important,实在要提升优先级,叠加 class,比如。不要东写一条宽、下面突然写颜色、再回头写 padding,乱序后期改样式头大。

2603_96589670的博客 420

CSS 元素类型、盒模型与 Flex 布局

想让单独设置的某条边生效,必须写在通用。

2401_89953644的博客 600

使用HTML+CSS+JavaScript实现文件上传弹窗

使用HTML+CSS+JavaScript实现文件上传弹窗

bjzhang75的博客 230

【CSS实战范例】悬停炫光

这同时解决了「两端提前露头」:扫光层必须比图形大,否则光带两端会在图形内部被裁断,看起来像扫到一半就断了。,方向才会严格是 45°。这也是扫光层必须做成正方形的第二个原因——不只是为了覆盖,更是为了方向。扫光层直接不渲染,外发光也去掉,只留 8% 的亮度变化——反馈还在,但没有任何位移。后,光带推进到两端时正方形的四条边都还在字形之外,两种宽高比实测都没有截断。把「发光」和「扫光」分给两个不同元素,是后面很多问题的解法,第八节会展开。光带是跨越整个扫光层的一条斜带,所以扫光层在这个方向上的跨度必须不小于。

朝阳39的博客 328

CSS 背景复合写法与视差滚动实战

视差滚动(Parallax Scrolling)指的是:页面滚动时,背景的移动速度与前景内容不同,从而产生纵深感。注意背景色只能写在最后一层,且多背景层时建议每层单独换行,便于阅读。属性既支持拆分成多个子属性单独设置,也支持用一行复合写法一次性声明。掌握这行写法,再注意移动端降级与性能控制,就能在大多数项目中稳定使用视差滚动效果。在网页视觉设计中,背景往往是最容易被忽视、却最能拉开质感差距的一环。复合写法的语法讲起,逐步过渡到视差滚动的实现原理与完整案例。,就能用极少的代码实现经典的视差滚动效果。

2601_96876853的博客 499

CSS 弹性盒布局:改变主轴方向 flex-direction

默认情况下,主轴是水平方向,项目从左到右排列。用于指定弹性容器(flex container)中主轴的方向,从而决定弹性项目的排列方向。是 Flexbox 中最基础也最常用的属性之一,理解它对于掌握弹性布局至关重要。主轴变为垂直方向,项目从上到下排列。理解主轴与交叉轴的关系,是灵活运用 Flexbox 的基础。主轴仍为水平方向,但项目从右到左排列,起始位置在右侧。是默认值,主轴为水平方向,项目从左到右依次排列。主轴为垂直方向,项目从下到上排列。,即可看到项目排列方向的变化。/* 修改这里观察效果 */

2601_96876853的博客 463

CSS 盒子模型尺寸计算与 box-sizing 详解

box-sizing决定了widthheight只算内容区,border-box算到边框外沿。理解两者的换算关系,就能准确预测元素的实际占位,避免布局溢出与对齐错位。实践中推荐全局设置,让尺寸声明与视觉结果保持一致。

2601_96876853的博客 316

CSS display 模式转换详解

display属性是 CSS 布局的基石。掌握blockinlineflexgrid等常见取值,并理解它们之间的转换规则,能够帮助我们更灵活地控制页面结构。在实际开发中,建议优先使用flex和grid完成布局,仅在必要时才通过display转换处理细节问题。

2601_96876853的博客 338

【实战】STM32时钟跑飞、延时慢9倍?嵌入式设备CSS+SysTick+MCO三道防线实操(附HAL代码)

HSE失效不是小概率的"倒霉事",而是户外设备、震动环境、低成本晶振批次里必然会遇到的故障模式。CSS负责发现并保命,SysTick负责让时间基准不随频率漂移,MCO负责让整个过程可观测——三者配齐,STM32的时钟可靠性才从"祈祷晶振别坏"变成"坏了也能降级运行"。落地时记住两个位(CSSON、CSSC)和一个公式(SysTick重装值=fSYSCLK/1000-1,HAL口径),剩下的就是上板验证。

czl00czl的博客 253
上一篇: 【倒计时 3 天】SOFAMeetup#7 合肥站-SOFA 微服务架构技术生态与实践
下一篇: 【直播来啦】SOFAMeetup#7 合肥站-SOFA 微服务架构技术生态与实践
SOFAStack
博客等级 码龄7年 747粉丝 389原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值