每个成员都使用“volatile”进行了修饰,目的是防止编译器优化。“示例代码 17.1.1.1”就是 STM32F103 的中断向量表,中断向量表都是链接到代码的最前面,比如一般 ARM 处理器都是从地址 0X00000000 开始执行指令的,那么中断向量表就是从 0X00000000 开始存放的。
原创
2021-07-05 11:51:06
725阅读
每个成员都使用“volatile”进行了修饰,目的是防止编译器优化。“示例代码 17.1.1.1”就是 STM32F103 的中
原创
2022-02-08 15:08:17
485阅读
一个、说明(*(volatile unsigned long *))
这个语句对于不同的计算机体系结构,设备可能是port映射,也可能是内存映射的。假设系统结构支持独立的IO地址空间。而且是port映射,就必须使用汇编语言完毕实际对设备的控制。由于C语言并没有提供真正的“port”的概念。假设是内存映射。那就方便多了。
二、举例解说
以 #define IOPIN (*((volatile un
转载
2015-08-13 14:39:00
142阅读
2评论
Static1. 关键字static的作用是什么? 这个简单的问题很少有人能回答完全。在C语言中,关键字static有三个明显的作用:1) 在函
原创
2022-12-06 11:19:22
106阅读
**软考嵌入式证书作用深度解析**
在当今信息技术迅速发展的时代,嵌入式系统已广泛应用于众多领域,如汽车电子、智能家居、医疗设备等。为了规范和提高嵌入式领域从业人员的技能水平,我国推出了软考嵌入式系统设计师的认证考试。本文将深入探讨软考嵌入式证书的作用及其在职业发展中的重要性。
**一、证书背景及介绍**
软考,全称为计算机技术与软件专业技术资格(水平)考试,是由国家人力资源和社会保障部、工
原创
2024-04-07 15:48:52
120阅读
一个嵌入式应用软件都会在某些时候访问最底层的固件和进行一些硬件控制。驱动的设计和实施是确保一个系统能够满足其实时性要求的关键。以下5个窍门是每一个开发者在设计驱动程序时应该考虑的,下面就随我们一起来了解一下相关内容吧。 1.使用设计模式设计模式是一个用来处理那些在软件中会重复出现的问题的解决方案。开发人员可以选择浪费宝贵的时间和预算从无到有地重新发明一个解决方案,也可以从他的解决方案工具
转载
2023-07-13 21:51:34
49阅读
点赞
OpenGL ES(OpenGL for Embedded Systems) 是一种免费的跨平台3D图形 API接口,其适用于低功耗设备,可用于嵌入式设备和移动设备(包括手机、车载大屏 和嵌入式电器终端设备)上渲染高效的 2D 、 3D 图形。
其由OpenGL(Open Graphics Library)针对嵌入式设备裁剪而来,去除了OpenGL中许多不是必须冗余特性,比如:GL_QUADS(四
转载
2024-03-05 22:23:00
264阅读
嵌入式WEB服务器常见的有:Lighttpd, Shttpd, mongoose, Thttpd, Boa, Mini_httpd, Appweb, Goahead LighttpdLibHttpd是一个开源轻量级嵌入式Web server,是提供一个专门针对高性能网站,安全、快速、兼容性好并且灵活的web server环境。具有非常低的内存开销,cpu占用率低,效能好,以及丰富的模块等
转载
2023-10-31 18:21:10
420阅读
我是专科,读的是嵌入式技术,是的没错,计算机领域里最大的坑。 当初专业的时候,师兄就提醒过,千万不要碰单片机,那样的话会进一条很奇怪的路子。 我还是碰了,至今已经写了两年的C代码。坑越掉越大。 适逢毕业季,我的不少师兄都出来闯荡了,很多师兄开始说自己学校里学的远远不够。 虽然说是广东最好的大专,但始终是个专,在专里头开这样一个专业,两年半的时
转载
2024-04-08 12:06:44
173阅读
很多人都讲嵌入式开发很难,能不能就你学习和工作经验与大家分享下嵌入式开发如何开始和深入?作为嵌入式研发工程师,你认为其应具备哪些知识结构和实战能力?做嵌入式开发必须具备良好的C语言功底,汇编虽然不是必须,但懂点更好。其次可以到网上找一个比较流行的MCU开发板,比如STM32做为学习开发板,参照示例代码,自己动手编译烧录跑程序,比如跑马灯的程序,深刻了解整个开发过程。接下来可以学习小型的实时操作系统
转载
2024-05-21 20:56:36
169阅读
SoC嵌入式软件架构设计之二:没有MMU的CPU实现虚拟内存管理的设计方法。这里要阐述Bank设计的一些原则。 Bank设计是为了实现不同一时候刻执行的Bank(代码块)执行在同一块内存上,所以在执行之前操作系统须要将已存在内存的代码/数据进行缓存处理,并载入将要执行的Bank到该内存上。为了实现这个目的,须要明白下面要点: 1.为了
转载
2024-02-27 13:45:05
271阅读
一、AMBA概述今天要介绍的三种嵌入式总线技术:APB、AHB、AXI,它们都属于ARMA片上总线协议。所以,在介绍这几种总线技术之前,有必要先了解一下ARMA片上总线协议是什么。AMBA (Advanced Microcontroller Bus Architecture),全称叫作高级微控制器总线架构,它是由ARM公司研发推出的高性能片上总线协议。它定义了高性能嵌入式微控制器的通信标准,可以将
转载
2023-07-19 16:14:31
795阅读
1.什么是嵌入式? 嵌入式系统指的是以应用为中心和以计算机技术为基础的,并且软硬件是可裁剪的,能满足应用系统对功能、可靠性、成本、体积、功耗等指标严格要求的专用计算机系统。 以应用为中心的专用计算机系统。2.通用计算机与专用计算机 通用:输入输出、CPU、内存、硬盘3.嵌入式起始于单片机4.嵌入式使用 物联网:物物相连,人机协同工作 特斯拉:新能源汽车代表,典型的嵌入式技术运用 5G–物物相连的未
转载
2024-03-18 08:48:30
143阅读
本周学习概要:
本周我们学习了有名管道和消息队列的传输和接收,并且在课上和课下实验楼中进行了程序的验证和操作。
管道( pipe ):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。
有名管道 (named pipe) : 有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间的通信。
套接字( socket ) : 套解口也
转载
2024-05-18 17:08:35
144阅读
嵌入式嵌入式的标签多为:低配,偏硬件,底层,资源紧张,代码多以C语言,汇编为主,代码应用逻辑简单。但随着AIOT时代的到来,局面组件改变。芯片的性能资源逐渐提升,业务逻辑也逐渐变得复杂,相对于代码的效率而言,代码的复用可移植性要求越来越高,以获得更短的项目周期 和更高的可维护性。下面是AIOT时代嵌入式设备的常见的软件框架。设计模式设计模式的标签:高级语言 ,高端,架构等。在AIOT时代,设计模式
转载
2024-01-12 06:42:43
127阅读
1. 嵌入式系统软件开发平台 嵌入式系统的软件开发方法采用的不是通用的开发方法,而是交叉式开发方法。本小节主要介绍嵌入式系统软件开发的交叉编译环境的基本概念和特点,以及软件调试常用的几种方法。 1.交叉平台开发环境 嵌入式系统的软件开发采用交叉平台开发方法(Cross Platform Develop
转载
2024-03-23 10:08:25
292阅读
00. 目录文章目录00. 目录01. volatile概述02. volatile应用场景03. volatile应用示例04. 嵌入式系
原创
2022-03-16 14:52:45
253阅读
备注:在原文的基础上,增加了标题,方便大家阅读。AT&T ASM Syntax(内嵌汇编
转载
2023-07-12 09:13:03
557阅读
1、引言volatile影响编译器编译的结果输出,volatile 变量是随时可能发生
转载
2022-12-06 11:17:20
58阅读
00. 目录文章目录00. 目录01. volatile概述02. volatile应用场景03. volatile应用示例04. 嵌入式系统中应用05. volatile官方说明volatile06. 附录01. volatile概述volatile是C语言中的一个关键字。将变量定义为volatile就表示告诉编译器这个变量可能会被竟想不到地改变,在这种情况下,编译器就不会去假设这个变量的值了,及优化器在用到这个变量是必须每次重新读取他的值。02. volatile应用场景在程序中,volati
原创
2021-09-02 14:31:22
2652阅读