0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

电子发烧友网>嵌入式技术>编程语言及工具>

编程语言及工具

电子发烧友网编程语言及工具栏目提供嵌入式设计所需的嵌入式编程语言技术和开发工具以及最新设计相关内容,是嵌入式工程师喜欢的网站。
配置芯片寄存器的SPI通信协议的verilog实现

配置芯片寄存器的SPI通信协议的verilog实现

最近正在调试一个芯片的评估板,其中配置寄存器使用的是SPI通信协议。其实很多芯片寄存器的配置都用到了SPI通信协议,我们今天就需要实现这个SPI通信协议。...

2023-06-16 标签:寄存器状态机SPI通信Verilog语言MSB 3048

C++20 modules基础知识入门

C++20 modules基础知识入门

以前一直有了解C++20的新特性,但是因为编译器对此支持的比较少,所以很少实践。...

2023-06-15 标签:C++语言C++语言Modules 1608

对话式LLM用于硬件设计

对话式LLM用于硬件设计

通常,开发任何类型的硬件(包括芯片,作为电子设备大脑的微小电子元件),都是从用正常语言描述硬件应该做什么开始的。...

2023-06-15 标签:HDL语言OpenAIChatGPTLLM 1176

C程序中常见的与内存相关的错误及其解决办法

C程序中常见的与内存相关的错误及其解决办法

对C语言入门程序员来说,管理和使用虚拟存储器可能是个困难的,容易出错的任务。...

2023-06-14 标签:存储器C语言虚拟机 1776

代码评审一般都有哪些军规呢?

代码评审一般都有哪些军规呢?

其实,写代码的时候,没有必要写太多的注释,因为好的方法名、变量名,就是最好的注释。...

2023-06-14 标签:SQLJAVA语言CSSXSScsrf 1044

Systemverilog中的Driving Strength讲解

Systemverilog中的Driving Strength讲解

在systemverilog中,net用于对电路中连线进行建模,driving strength(驱动强度)可以让net变量值的建模更加精确。...

2023-06-14 标签:驱动器仿真器Verilog语言 2345

c语言设计模式--状态模式(状态机)

c语言设计模式--状态模式(状态机)

状态模式(状态机)是嵌入式开发中最重要、最核心的设计模式之一,毫不夸张的说,是否熟练掌握状态模式,很大程度上直接决定了嵌入式工程师的代码掌控能力。...

2023-06-14 标签:嵌入式系统C语言状态机 3047

C语言设计模式—简单工厂模式

先来看这样一个需求:这天,你的老大跟你说:"小李,公司的物料不够用了,你去嘉立创商城买一些 0805 电容回来,然后去捷多邦买点 0603 电容回来"。"好的",于是你回到工位上准...

2023-06-14 标签:C语言 973

C语言面向对象的艺术

所谓封装,通俗地说,就是一个姑娘化了妆,只给你看她想让你看的那一面,至于里面是否刮了骨、垫了东西,不给你看。说到封装就得说隐藏,这是对兄弟概念;其实我理解隐藏是更深的封装...

2023-06-14 标签:封装技术C语言C++语言 463

探讨Spring框架中的属性注入技术

探讨Spring框架中的属性注入技术

在本文中,我们深入探讨了 Spring 框架中的属性注入技术,包括 setter 注入、构造器注入、注解式属性注入,以及使用 SpEL 表达式进行属性注入。...

2023-06-14 标签:存储器JAVA语言XML技术YAML 1334

聊聊形式验证中的SVA

聊聊形式验证中的SVA

SVA,即SystemVerilog Assertion,在simulation和Formal都有极为广泛的应用,这里介绍一些基本的概念和常用的语法。...

2023-06-14 标签:SVAVerilog语言DUT 3353

c语言|简单的状态机

不管做什么或者实现什么功能,必定会有实现需求的步骤,简单理解就是在某个状态下做某事,这就很符合C语言面向过程的特点,个人认为面向对象其实是面向过程的封装,封装的好处自然就...

2023-06-14 标签:单片机C语言状态机C语言单封装单片机状态机 1233

一个简单的RTL同步FIFO设计

FIFO 是FPGA设计中最有用的模块之一。FIFO 在模块之间提供简单的握手和同步机制,是设计人员将数据从一个模块传输到另一个模块的常用选择。...

2023-06-14 标签:FPGA设计寄存器VHDL语言RTLFIFO存储 720

怎么快速把汇编代码和C语言代码对应起来呢?

分析软件缺陷,有时候需要把ELF文件反汇编为汇编代码,然后分析汇编代码,需要把汇编代码和C语言代码对应起来。...

2023-06-12 标签:C语言ELF文件 3742

数字电路与单片机C编程杂谈

数字电路与单片机C编程杂谈

计算机只能识别0和1,单片机作为计算机的一种,它也只能识别0和1。0和1是用来描述两种状态的,比如,有和无,大和小,胖和瘦,高和矮。...

2023-06-12 标签:单片机计数器C语言BCD码 1865

如何从Linux内核角度探秘Java NIO文件并读写本质呢?

如何从Linux内核角度探秘Java NIO文件并读写本质呢?

又在此基础之上介绍了针对 socket 文件的相关操作及其对应在内核中的处理流程:...

2023-06-12 标签:JAVASocketdmaLINUX内核dmaJAVALINUX内核Socketvfs 1962

怎么解决C语言中的内存泄漏问题呢?

怎么解决C语言中的内存泄漏问题呢?

只有在堆内存里面才会发生内存泄漏的问题,在栈内存中不会发生内存泄漏。因为栈内存在自动分配空间之后,还会自动释放空间。...

2023-06-11 标签:C语言 768

详解C语言程序内存分区

详解C语言程序内存分区

每一个C语言源程序,都将最终经过这一处理而得到相应的目标文件。...

2023-06-11 标签:Linux系统C语言虚拟机C语言Linux系统类加载器虚拟机 1963

西门子PLC指针类型与间接寻址教程

在西门子S7-300和S7-400的编程中经常需要调用一些系统功能或功能块,在输入参数时经常碰到有指针类型的参数,那么你对指针类型了解吗?...

2023-06-11 标签:plc存储器C语言S7-300C语言plcS7-300S7-400存储器 6578

C语言-宏定义中使用do{...} while(0)到底图个啥

在 Linux 内核中,经常会看到do{} while(0)这样的语句,许多人开始都会疑惑,认为do{} while(0)毫无意义,因为它只会执行一次,加不加do{} while(0)效果是完全一样的,其实do {}while(0)的用法主要用于宏...

2023-06-11 标签:C语言LINUX内核 1622

zircon微内核启动代码分析

zircon微内核启动代码分析

Zircon微内核的代码是用C++写的,C++和C的基础语法差不多,C++新加入了一些面向对象的东西...

2023-06-11 标签:计数器虚拟机C++语言ChatGPT 3789

介绍下volatile的底层原理

介绍下volatile的底层原理

线程安全的三大特性,原子性、可见性、有序性,这三大特性与我们之前整理的内容息息相关。本篇重点介绍下volatile的底层原理,帮助我们更好的理解java并发包。...

2023-06-09 标签:寄存器JAVA语言JAVA语言volatile寄存器 1428

synchronized的原理与四种用法介绍

synchronized的原理与四种用法介绍

JDK提供的锁分两种,一种是JVM实现的synchronized,是java的关键字,因此在这个关键字作用对象的范围内都是可以保证原子性的,主要是依赖特殊的CPU指令。另一种是JDK提供的代码层面的锁Lock。...

2023-06-09 标签:JAVA语言JVM虚拟机CAS 1765

java虚拟机与计算机内存是如何协同工作的

java虚拟机与计算机内存是如何协同工作的

为了屏蔽各种硬件和操作系统的内存访问差异,以实现让java程序在各种平台下都能达到一致的并发效果,java虚拟机规范中定义了java内存模型,简称JMM。...

2023-06-09 标签:处理器寄存器JAVA虚拟机 1301

Java并发包之CAS介绍

Java并发包之CAS介绍

首先,用1000个客户端进程来模拟并发,并使用信号量Semaphore 控制同时100个线程并发执行,采用同步器CountDownLatch 确保并发线程总数执行完成。...

2023-06-09 标签:JAVA计数器CASVaR同步器 1066

带你了解SystemVerilog中的关联数组

带你了解SystemVerilog中的关联数组

在SystemVerilog中,我们知道可以使用动态数组实现数组元素个数的动态分配,即随用随分...

2023-06-09 标签:仿真器VerilogC语言 8837

深入浅出OkHttp源码解析及应用实践

深入浅出OkHttp源码解析及应用实践

OkHttp 在 Java 和 Android 世界中被广泛使用,深入学习源代码有助于掌握软件特性和提高编程水平。...

2023-06-08 标签:编码器JAVA语言HTTP协议调度器 1040

如何用C++实现一个线程池呢?

如何用C++实现一个线程池呢?

C++线程池是一种多线程管理模型,把线程分成任务执行和线程调度两部分。...

2023-06-08 标签:线程池C++语言C++语言Thread编程线程池 2288

详解C/C++结构体、联合体和枚举的区别与内存对齐

详解C/C++结构体、联合体和枚举的区别与内存对齐

C语言中构造类型一共有4种,它们分别是数组、结构体(struct)、共用体(union)、枚举类型(enum)。...

2023-06-08 标签:C语言编译器C++语言 6390

多态性实现原理及其在面向对象编程中的应用

在面向对象的编程中,多态性是一个非常重要的概念。...

2023-06-08 标签:编译器C++语言 1219

编辑推荐厂商产品技术软件/工具OS/语言教程专题