战舰 原子cubeide fatfs
fatfs常用接口函数说明
FATFS是一个为小型嵌入式系统设计的通用FAT(File Allocation Table)文件系统模块。FatFs 的编写遵循ANSI C,并且完全与磁盘I/O层分开。因此,它独立(不依赖)于硬件架构。它可以被嵌入到低成本的微控制器中,如AVR, 8051, PIC, ARM, Z80, 68K ......
[转帖]日常Bug排查-读从库没有原子性?
https://zhuanlan.zhihu.com/p/658508920 3 人赞同了该文章 日常Bug排查系列都是一些简单Bug排查。问题虽小,但经常遇到,了解这些问题,会让我们少走点弯路,提升效率。说不定有些问题你遇到过哦:) Bug现场 业务开发同学突然问了笔者一个问题,从库读会不会没有原 ......
redis中如何保证原子性操作
需求:两个客户端同时对[key1]执行自增操作,不会相互影响 操作:下面两个客户端并发操作会导致[key1]输出结果与预期不一致 [客户端一]读取[key1],值为[1] [客户端二]读取[key1],值为[1] [客户端一]将[key1]自增1,值为[2] [客户端二]将[key1]自增1,值为[ ......
原子习惯(Atomic Habits)读后总结
自我认知 > 习惯 对自身的评价和期望,决定你现有的习惯 & 期望的习惯。 习惯的机制 指差确认纠正行为偏差 详细计划(触发执行意向)提升习惯达成率 习惯堆叠 利用狄德罗效应,让一个好习惯带来一堆好习惯。让奖赏刺激下一个好习惯的提示~ 环境更容易引导习惯 建立自制力不如构建更好的环境 诱惑捆绑 利用 ......
正点原子Lora配置
将LoRa和USB-TTL相连,连线如下:注意MD0为1(连接到USB-TTL的3.3V或5V),GND一定要和USB-TTL相连 打开正点原子提供的串口调试助手 ......
CUDA原子操作
这节主要涉及到一个多线程情况下存在的数据竞争问题 -- 多个线程同时访问共享数据时,由于没有正确的同步机制,导致数据出现不一致的情况。 C/C++ 多线程中,可以通过互斥锁(mutex)、原子操作(atomic,C++11 也提供了原子操作库,如std::atomic,用于实现原子加法、原子赋值等操 ......
FatFS移植
1. 修改diskio.c /* */ /* Low level disk I/O module SKELETON for FatFs (C)ChaN, 2019 */ /* */ /* If a working storage control module is available, it sho ......
STM32CubeIDE新建项目的一些注意事项
1. 生成代码后的warning: “No explicit project encoding” Project->Properties->Resource->Text file encoding->Other 2. 滴答定时器的中断 在stm32xxxx_it.c中添加:HAL_SYSTICK_I ......
原子替换和累积补丁 【ChatGPT】
https://www.kernel.org/doc/html/v6.6/livepatch/cumulative-patches.html 原子替换和累积补丁 在 livepatch 之间可能存在依赖关系。如果多个补丁需要对相同的函数进行不同的更改,那么我们需要定义补丁安装的顺序。并且来自任何更新 ......
FPGA驱动RGB888屏幕——基于正点原子达芬奇FPGA开发板
RGB888简介 重要提示:由于我没有RGB888屏幕,所以代码未经验证,但是我将其在HDMI中使用了,证明代码还是有一定的正确性 一个像素点由三种颜色控制,每个颜色8bit,共24bit,三个字节,这就是RGB888。同样的还有RGB565等。 LCD屏幕介绍 1、HSYNC(水平同步信号、行同步 ......
stm32 cubeide调试问题汇总
stm32 cubeide调试问题汇总 1. STM32 CubeIDE无法进行调试 报以下错误 Target is not responding, retrying... Target is not responding, retrying... Target is not responding, ......
本地原子操作的语义和行为 【ChatGPT】
https://www.kernel.org/doc/html/v6.6/core-api/local_ops.html 这篇文档介绍了本地原子操作的语义和行为,以及如何在任何给定的架构中实现它们,并展示了它们如何被正确地使用。它还强调了在读取这些本地变量时必须采取的预防措施,特别是当内存写入的顺序 ......
原子类
不可分割 ⼀个操作是不可中断的,即便是多线程的情况下也可以保证 java.util.concurrent.atomic 原⼦类的作⽤和锁类似,是为了保证并发情况下的线程安全。不过原⼦类相对于锁有⼀点的优势 粒度更细:原⼦变量可以把竞争范围缩⼩到变量级别,这是我们可以获得的最细的粒度的情况了,通常锁的 ......
石原子科技荣登「2024 中国企业服务云图」,引领数据价值在线化革命,助力企业省心省钱更安全
近日,2023 年中国 SaaS 大会在美丽的苏州太湖隆重召开。本次大会由吴中区人民政府、苏州市工信局指导,崔牛会主办,苏州太湖国家旅游度假区管委会协办。会上,知名B2B企业服务平台崔牛会联合火山引擎正式发布了「2024 中国企业服务云图」,其中,国产数据库新锐厂商石原子科技凭借在一体化HTAP数据 ......
golang 原子操作
在 golang 中,有原子包,能够实现原子操作,在我分析和猜想下,感觉解开了谜团 具体用法不说了,网上一大堆什么 cas,add,load,store 等,主要是底层实现 arm 架构 在 amd 架构下,通过汇编指令加锁来实现 代码在src/runtime/internal/atomic/ato ......
Redis原子操作
Redis命令的原子操作 redis虽然是单线程,但是一个客户端发送的一组命令却不是原子操作。 redis自带的原子操作命令有incr {key}、decr {key}等,但是更为复杂的命令,比如先获取值,然后乘以2,最后置为新值这三步操作,有可能中间会有其他客户端的命令插入导致值已经变化,出现并发 ......
原子重力仪隔振的意义
原子重力仪隔振技术在科学研究和实验中具有重要的意义。隔振技术的主要目的是降低外界振动对原子重力仪精密测量的影响,从而提高实验的准确性和可重复性。以下是原子重力仪隔振的几个关键意义: 首先,隔振技术有助于消除地面振动对原子重力仪实验的干扰。由于原子重力仪对微小的重力变化非常敏感,任何来自地面振动的微小 ......
超音速亚原子 Java 框架来了,0.0015 秒内启动一个应用,太快了。。
来源:juejin.cn/post/7023317351563001886 1、概述 SpringBoot框架不用多介绍,Java程序员想必都知道。相对来说熟悉Quarkus的人可能会少一些。Quarkus首页放出的标语:超音速亚原子的Java(Supersonic Subatomic Java)。 ......
JUC并发编程学习笔记(十九)原子引用
原子引用 带版本号的原子操作! 解决ABA问题,引入原子引用(乐观锁思想) AtomicStampedReference类解决ABA问题 package org.example.cas; import java.util.concurrent.TimeUnit; import java.util.c ......
石原子科技亮相2023成都市信息领域新产品发布会
2023年11月13日至15日,由成都市互联网信息办公室、四川天府新区管委会、成都市经信局市新经济委、成都市农业农村局指导的以“信息创造价值 创新引领未来”为主题的成都市信息领域新产品发布会在科创生态岛1号馆举行。围绕人工智能、区块链、数字化绿色化、数字乡村等多项国家级试点,通过“会+展”的模式,搭 ......
STM32CubeIDE 安装个别设置
STM32CubeIDE 安装个别设置 小技巧设置 防止中文乱码,没有GBK,手动输入 修改字体 CubeMX设置 提高编译速度,使用电脑内核 提高IDE的打开速度 写代码时有用 CubeMX设置 芯片支持安装包,安装最新的即可 ......
CubeIDE 主题美化与颜色设置
一、主题美化 搜索引擎里很多,这里不必多说。 二、颜色设置 2.1、关于控制台 菜单栏里:window→preference→输入“console”并回车,然后按照下图指示来: 2.2、关于代码编辑区 ......
HAL+CubeIDE,输入输出重定向
①将以下代码段复制到usart.c里; /*******************************************************************************************/ // 重定向方法 int _read(int file, char *p ......
STM32F103RCT6搭配“ST_LINK V2 √RoHS 'A 2023 04'”在CubeIDE中下载运行总结
一、请参考本站大佬文章进行接线: ST_LINK V2接口和连接方式 二、步骤: 到此,大功告成。 小手点赞,水逆退散!!! ......
创新不是一蹴而就的——以原子弹为例
创新不是一蹴而就的 19世纪末,科学家首先开始质疑原子的坚不可摧性, 1917年卢瑟福首次将其分裂。 查德威克在1932年发现了中子, 后来费米用中子将铀分裂成钡和氪 哈恩计算出两个原子的排斥力比之前描述的要大得多,并预测了链式反应。 约里奥-居里产生了连锁反应,并于1939年在《自然》杂志上发表了 ......
《Java 并发编程的艺术》实验02-2 JUC 原子操作类的使用
JUC 原子操作类的使用 实验目的 掌握Java原子类的使用方法,了解原子类在多线程环境下的特点和使用场景。 实验过程 导入Java原子类的库 创建AtomicInteger对象 使用原子方法对count进行操作 实验参考代码 public class AtomicExample { public ......
Redis集群模式incr保证原子性的原理
1.主要是redis的key会解析到固定的主机上,比如集群上有host1,host2,host3;然后key1可能会解析后发现是要发到host2上,则在host2正常的情况下(有点像kafka rebalance;consumer处理哪些分区),key1会一直在host2上进行操作; 因此在redi ......
stm32cubeide+bootloader跳转的方法和坑点
网上介绍方法很多,跳转原理可以看这一篇 基于STM32的简易Bootloader实现 - JiuLiBlog - 博客园 (cnblogs.com) 大概步骤为:先判断栈顶地址是否合法,再关闭总中断和systick中断,再设置跳转地址、再加载栈顶地址,然后就可以跳转了,跳转后的应用程序需要先设置栈顶 ......
redis的哪些命令具有原子性?
redis的哪些命令具有原子性? Redis 提供的命令大部分都是原子操作,也就是说,在单线程模型下,Redis 执行单条命令时,不会被其他命令插入,即命令在执行期间不会被其他命令打断,这就保证了它的原子性。 以下是一些 Redis 基本的原子操作命令: 1. SET key value:将字符串值 ......
关于CAS等原子操作,说点别人没说的
Java中提供了原子操作,可以简单看一下AtomicInteger类中的一个典型的原子操作incrementAndGet(),表示对原子整数变量进行加操作,并返回新的值。实现如下: public class AtomicInteger extends Number implements java.i ......