• C语言函数在硬件中的执行原理

    众所周知,C语言的应用程序总是以「main」函数作为程序入口地址,那到底什么是函数呢? 程序的执行其实本质上是CPU对指令的处理,那么一个C函数的本质其实也相当于一组协同工作的指令,而这组指令能够通过相互之间的配合实现特定的功能(Function)。例如从SPI缓冲区中提取数据,配置定时器的延时时间,或者从内存读取数据并写入DAC的寄存器中。 一个函数能完成的功能往往不止一个,比如某个函数能够实现通过串口传输一个字节的数据,然后检查状态位直到接收到一个字节,最后把接收到的所有数据组合起来做实际的计算。

    2023-05-15 digiproto

  • 浅谈Eclipse GEF

    相信学过编程的同学都会用过Eclipse,Eclipse作为一个集成开发环境(IDE),给我们带来了不错的开发体验(虽然我知道大家都用IDEA了),但是Eclipse的作用却不仅限于此。 Eclipse本身是一个框架平台,由于众多插件的支持,使得Eclipse拥有较佳的灵活性,所以许多软件开发商以Eclipse为框架开发自己的IDE。如果你的想开发属于自己的IDE,那么选择Eclipse作为你的开发框架是个不错的选择。随着业务变得越来越复杂以及可视化的需求越来越多,如果你想在基于Eclipse平台的IDE中画个UML图,流程图,工作流 ,那么应该怎么去实现呢?

    2023-05-15 digiproto

  • 用react和electron实现文件树组件(上)

    创建一个文件夹file-tree-js,进入文件夹,打开终端,输入yarn init -y创建一个javascript项目,这里使用了yarn作为包管理工具,也可以使用nodejs默认安装时自带的npm来创建javascript项目。

    2023-05-15 digiproto

  • 如何使用Windows OVERLAPPED优化你的应用

    01 异步I/O基本原理I/O即输入输出。在现代操作系统中,输入输出是计算机完整功能必不可少的一部分。处理器负责各种计算任务,然后通过各种输入输出设备与外界进行交互。常见的输入输出设备包括键盘、鼠标、显示器、硬盘、网络适配器接口等。有了硬件设备,在软件层面上,使得操作系统通过以一致的方式与设备驱动交互从而操控硬件设备。而应用程序通过统一的接口与系统内核进行交互。在计算机程序执行过程中,设备I/O是

    2023-05-15 digiproto

  • 浅谈状态机

    在工业生产中,常常会使用到建模软件,而建模的目的就是为了在制造的前期进行验证和试错,以确保制造出来的东西能够很好的使用。而在建模仿真的领域中,状态机又是逃不开的一个话题。

    2023-05-15 digiproto

  • VxWorks任务调度

    大家知道,CPU运行的基本单位其实是一条一条的指令,如今我们通过编译器就可以将代码生成为机器指令,也就是所谓的二进制文件,这些指令组成了程序。程序在装入内存中执行时被称之为任务,或者说是进程。随着处理器性能的日益强大,程序也越来越复杂,因此诞生了操作系统来帮助我们管理进程,更合理地分配处理器资源,这也就是任务调度的目标。而在VxWorks中,能够调度起这些任务,最核心的就是reschedule调度算法了。

    2023-05-15 digiproto

  • L2C中CtempGen层语义保持证明中环境匹配的定义

    ModelCoder是一款由迪捷软件自主研发,支持多种嵌入式系统建模并可以自动生成高安全可靠的C代码的软件设计和开发工具。ModelCoder支持同步数据流以及状态机等嵌入式模型,其从模型生成代码的过程经过了形式化验证,以保证生成过程的正确无误性,能够用于飞行控制系统,航空电子系统,核电的DCS等多个安全关键领域的嵌入式软件的设计和开发。

    2023-05-15 digiproto

  • 漫谈Windows共享内存

    在讲共享内存之前先来聊聊虚拟内存的那些事。 对于整个系统而言,主存与CPU的资源都是有限的,随着打开进程数量的增加,若是将所有进程运行所需的代码/数据/栈/共享库都存放在主存中,那么开启一部分进程就可以将主存占用完。

    2023-05-15 digiproto

首页
产品
新闻
联系