嵌入式开发的特点进行简单的科普与回顾

硅农亚历山大 2018-06-11 09:21 次阅读

本文为RISC-V嵌入式开发准备篇2:嵌入式开发的特点介绍。

本文的目的是对嵌入式开发的特点进行简单的科普与回顾,为后续详细介绍“RISC-V GCC工具链”和“RISC-V汇编语言程序设计”打下基础。注:本文力求通俗易懂,主要面向初学者,对嵌入式开发有所了解的读者可以忽略此文。

在本号上次发表的文章《编译过程简介》中介绍过,嵌入式系统的程序编译过程和开发有其特殊性,譬如:

嵌入式系统需要使用交叉编译与远程调试的方法进行开发。

需要自己定义引导程序。

需要注意减少代码体积(Code Size)。

需要移植printf从而使得嵌入式系统也能够打印输入。

使用Newlib作为C运行库。

每个特定的嵌入式系统都需要配套的板级支持包。

下文将分别予以介绍。

1 交叉编译和远程调试

在本号上次发表的文章《编译过程简介》中介绍了如何在Linux系统的PC电脑上开发一个Hello World程序,对其进行编译,然后运行在此电脑上。在这种方式下,我们使用PC电脑上的编译器编译出该PC电脑本身可执行的程序,这种编译方式称之为本地编译。

嵌入式平台上往往资源有限,嵌入式系统(譬如常见ARM MCU或8051单片机)的存储器容量通常只在几KB到几MB之间,且只有闪存而没有硬盘这种大容量存储设备,在这种资源有限的环境中,不可能将编译器等开发工具安装在嵌入式设备中,所以无法直接在嵌入式设备中进行软件开发。因此,嵌入式平台的软件一般在主机PC上进行开发和编译,然后将编译好的二进制代码下载至目标嵌入式系统平台上运行,这种编译方式属于交叉编译。

交叉编译可以简单理解为,在当前编译平台下,编译出来的程序能运行在体系结构不同的另一种目标平台上,但是编译平台本身却不能运行该程序,譬如,在x86平台的PC电脑上编写程序并编译成能运行在ARM平台的程序,编译得到的程序在x86平台上不能运行,必须放到ARM平台上才能运行。

与交叉编译同理,在嵌入式平台上往往也无法运行完整的调试器,因此当运行于嵌入式平台上的程序出现问题时,需要借助主机PC平台上的调试器来对嵌入式平台进行调试。这种调试方式属于远程调试。

常见的交叉编译和远程调试工具是GCC和GDB。在本号上次发表的文章《编译过程简介》中介绍了如何使用Linux自带的GCC本地编译一个Hello World程序并运行。但是,GCC不仅能作为本地编译器,还能作为交叉编译器;同理GDB不仅可以作为本地调试器,还可以作为远程调试器。

当作为交叉编译器之时,GCC通常有不同的命名,譬如:

arm-none-eabi-gcc和arm-none-eabi-gdb是面向裸机(Bare-Metal)ARM平台的交叉编译器和远程调试器。

所谓裸机(Bare-Metal)是嵌入式领域的一个常见形态,表示不运行操作系统的系统

而riscv-none-embed-gcc和riscv-none-embed-gdb是面向裸机RISC-V平台的交叉编译器和远程调试器。

本号后续发文《RISC-V GCC工具链的介绍》将介绍RISC-V GCC工具链的更多信息。

2 移植newlib或newlib-nano作为C运行库

newlib是一个面向嵌入式系统的C运行库。相对于本号上次发表的文章《编译过程简介》中介绍的glibc,newlib实现了大部分的功能函数,但体积却小很多。newlib独特的体系结构将功能实现与具体的操作系统分层,使之能够很好地进行配置以满足嵌入式系统的要求。由于专为嵌入式系统设计,newlib具有可移植性强、轻量级、速度快、功能完备等特点,已广泛应用于各种嵌入式系统中。

由于嵌入式操作系统和底层硬件的多样性,为了能够将C/C++语言所需要的库函数实现与具体的操作系统和底层硬件进行分层,newlib的所有库函数都建立在20个桩函数的基础上,这20个桩函数完成具体操作系统和底层硬件相关的功能:

I/O和文件系统访问(open、close、read、write、lseek、stat、fstat、fcntl、link、unlink、rename);

扩大内存堆的需求(sbrk);

获得当前系统的日期和时间(gettimeofday、times);

各种类型的任务管理函数(execve、fork、getpid、kill、wait、_exit);

这20个桩函数在语义、语法上与POSIX(Portable Operating System Interface of UNIX)标准下对应的20个同名系统调用完全兼容。

所以,如果需要移植newlib至某个目标嵌入式平台,成功移植的关键是在目标平台下找到能够与newlib桩函数衔接的功能函数或者实现这些桩函数。本号后续发文《基于HBird-E-SDK平台的软件开发与运行》将介绍蜂鸟E200的HBird-E-SDK平台如何实现移植实现newlib的桩函数。

注意:newlib的一个特殊版本newlib-nano版本进一步为嵌入式平台减少了代码体积(Code Size),因为newlib-nano提供了更加精简版本的malloc和printf函数的实现,并且对库函数使用GCC的-Os(侧重代码体积的优化)选项进行编译优化。

3 嵌入式引导程序和中断异常处理

在本号上次发表的文章《编译过程简介》中介绍了如何在Linux系统的PC电脑上开发一个Hello World程序,对其进行编译,然后运行在此电脑上。在这种方式下,程序员仅仅只需要关注Hello World程序本身,程序的主体由main函数组织而成,程序员可以无需关注Linux操作系统在运行该程序的main函数之前和之后需要做什么。事实上,在Linux操作系统中运行应用程序(譬如简单的Hello World)时,操作系统需要动态地创建一个进程、为其分配内存空间、创建并运行该进程的引导程序,然后才会开始执行该程序的main函数,待其运行结束之后,操作系统还要清除并释放其内存空间、注销该进程等。

从上述过程中可以看出,程序的引导和清除这些“脏活累活”都是由Linux这样的操作系统来负责进行。但是在嵌入式系统中,程序员除了开发以main函数为主体的功能程序之外,还需要关注如下两个方面:

引导程序:

嵌入式系统上电后需要对系统硬件和软件运行环境进行初始化,这些工作往往由用汇编语言编写的引导程序完成。

引导程序是嵌入式系统上电后运行的第一段软件代码。引导程序对于嵌入式系统非常关键,引导程序所执行的操作依赖于所开发的嵌入式系统的软硬件特性,一般流程包括:初始化硬件、设置异常和中断向量表、把程序拷贝到片上SRAM中、完成代码的重映射等,最后跳转到main函数入口。

本号后续发文《基于HBird-E-SDK平台的软件开发与运行》将结合HBird-E-SDK平台的引导程序实例了解引导程序的更多细节。

中断异常处理

中断和异常是嵌入式系统非常重要的一个环节,因此,嵌入式系统软件还必须正确地配置中断和异常处理函数。有关RISC-V架构的中断和异常的详细信息,请参见RISC-V中文书籍《手把手教你设计CPU——RISC-V处理器篇》 中第13章内容《不得不说的故事——中断和异常》。

本号后续发文《基于HBird-E-SDK平台的软件开发与运行》将结合HBird-E-SDK程序实例了解如何配置中断和异常处理函数。

4 嵌入式系统链接脚本

在本号上次发表的文章《编译过程简介》中介绍了如何在Linux系统的PC电脑上开发一个Hello World程序,对其进行编译,然后运行在此电脑上。在这种方式下,程序员也无需关心编译过程中的“链接”这一步骤所使用的链接脚本,无需为程序分配具体的内存空间。

但是在嵌入式系统中,程序员除了开发以main函数为主体的功能程序之外,还需要关注“链接脚本”为程序分配合适的存储器空间,譬如程序段放在什么区间、数据段放在什么区间等等。

本号后续发文《基于HBird-E-SDK平台的软件开发与运行》将结合HBird-E-SDK的“链接脚本”实例了解更多细节。

5 减少代码体积

嵌入式平台上往往存储器资源有限,嵌入式系统(譬如常见的ARM MCU或8051单片机)的存储器容量通常只在几KB到几MB之间,且只有闪存而没有硬盘这种大容量存储设备,在这种资源有限的环境中,程序的代码体积(Code Size)显得尤其重要,因此,有效地降低降低代码体积(Code Size)是嵌入式软件开发必须要考虑的问题,常见的方法如:

使用newlib-nano作为C运行库以取得较小代码体积(Code Size)的C库函数。

尽量少使用C语言的大型库函数,譬如在正式发行版本的程序中避免使用printf和scanf等函数。

如果在开发的过程中一定需要使用printf函数,可以使用某些自己实现的阉割版printf函数(而不是C运行库中提供的printf函数)以生成较小的代码体积。

除此之外,在C/C++语言的语法和程序开发方面也有众多技巧以取得更小的代码体积(Code Size)。

本号后续发文《基于HBird-E-SDK平台的软件开发与运行》将结合HBird-E-SDK平台实例了解更多“减少代码体积”的实现细节。减小代码体积(Code Size)的方法很多,本文在此不做一一赘述,请初学的读者自行查阅相关资料进行学习。

6 支持printf函数

在本号上次发表的文章《编译过程简介 》中介绍了如何在Linux系统的PC电脑上开发一个Hello World程序,程序中使用C语言的标准库函数printf打印了一个“Hello World”字符串。该程序在Linux系统里面运行的时候字符串被成功的输出到了Linux的终端界面上。在这个过程中,程序员无需关心Linux系统到底是如何将printf函数的字符串输出到Linux终端上的。事实上,如《编译过程简介》中所述,在Linux本地编译的程序会链接使用Linux系统的C运行库glibc,而glibc充当了应用程序和Linux操作系统之间的接口,glibc提供的 printf 函数就会调用如sys_write等操作系统的底层系统调用函数,从而能够将“字符串”输出到Linux终端上。

从上述过程中可以看出,由于有glibc的支持,所以printf函数能够在Linux系统中正确的进行输出。但是在嵌入式系统中,printf的输出却不那么容易了,基于如下几个原因:

嵌入式系统使用newlib作为C运行库,而newlib的C运行库所提供的printf函数最终依赖于如本文中所介绍的newlib桩函数write,因此必须实现此write函数才能够正确的执行printf函数。

嵌入式系统往往没有“显示终端”存在,譬如常见的单片机其作为一个黑盒子一般的芯片,根本没有显示终端。因此,为了能够支持显示输出,通常需要借助单片机芯片的UART接口将printf函数的输出重新定向到主机PC的COM口上,然后借助主机PC的串口调试助手显示出输出信息。同理,对于scanf输入函数,也需要通过主机PC的串口调试助手获取输入然后通过主机PC的COM口发送给单片机芯片的UART接口。

从以上两点可以看出,嵌入式平台的UART接口非常重要,往往扮演了输出管道的角色,为了能够将printf函数的输出定向到UART接口,需要实现newlib的桩函数write,使其通过编程UART的相关寄存器将字符通过UART接口输出。本号后续发文《基于HBird-E-SDK平台的软件开发与运行》将结合HBird-E-SDK平台移植printf函数的实例了解更多细节。

7 提供板级支持包

对于特定的嵌入式硬件平台,为了方便用户在硬件平台上开发嵌入式程序,硬件平台一般会提供板级支持包(Board Support Package,BSP)。板级支持包所包含的内容没有绝对的标准,通常说来,其必须包含如下内容:

底层硬件设备的地址分配信息

底层硬件设备的驱动函数

系统的引导程序

中断和异常处理服务程序

系统的链接脚本

如果使用newlib作为C运行库,一般还提供newlib桩函数的实现。

由于板级支持包往往会将很多底层的基础设施和移植工作搭建好,因此应用程序开发人员通常都无需关心本文第1.2节至第1.6节中描述的内容,能够从底层细节中被解放出来避免重复建设而出错。本号后续发文《基于HBird-E-SDK平台的软件开发与运行》将结合HBird-E-SDK平台的BSP实例了解更多细节。

热门推荐

原文标题:RISC-V嵌入式开发准备篇2:嵌入式开发的特点介绍

文章出处:【微信号:real_farmer,微信公众号:硅农亚历山大】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
分享:

评论

相关推荐

介绍如何用Nios II 软核处理器来开发FPGA嵌入式系统软件

FPGA在嵌入式设计中的应用越来越普遍。了解怎样采用流行的Nios® II 软核处理器来轻松开发FP....

的头像 英特尔 Altera视频 发表于 06-22 02:01 6次 观看
介绍如何用Nios II 软核处理器来开发FPGA嵌入式系统软件

对RISC-V GCC工具链进行简单的中文科普与介绍

对于riscv-none-embed版本的工具链而言,为了方便用户直接使用预编译好的工具链,Ecli....

的头像 硅农亚历山大 发表于 06-14 11:33 250次 阅读
对RISC-V GCC工具链进行简单的中文科普与介绍

Microchip图形库的介绍和字体的详细资料概述

嵌入式系统应用的显示各不相同,从复杂的设备,例如 PDA,移动电话和便携式电脑,到简单的设备,例如家....

发表于 06-14 09:27 21次 阅读
Microchip图形库的介绍和字体的详细资料概述

嵌入式专题讲座:EasyARM1138的功能与应用

本视频内容包括:嵌入式系统概括,嵌入式系统概念,ARM 简介,Cortex-M3 简介,Lumina....

的头像 ARM视频 发表于 06-13 08:32 159次 观看
嵌入式专题讲座:EasyARM1138的功能与应用

如何使用MPLAB X IDE的详细中文使用手册概述

本文档介绍了如何使用 MPLAB X IDE。 MPLAB® X IDE 是一款软件程序,用于为 ....

发表于 06-11 13:28 32次 阅读
如何使用MPLAB X IDE的详细中文使用手册概述

C语言模块化程序设计需理解概念

等类似问题。面对这些问题,我们只能发出由衷的感慨:世界上还有很多有意义的事情等着我们去消化摄入的食物....

的头像 嵌入式ARM 发表于 06-08 14:49 385次 阅读
C语言模块化程序设计需理解概念

什么是HiFive1?详细介绍HiFive1开发套件的核心

这意味着它使用的是基本 32 位 RISC-V 整数指令集 (RV32I),具有整数硬件乘除 (M)....

的头像 电子发烧友网 发表于 06-05 09:36 427次 阅读
什么是HiFive1?详细介绍HiFive1开发套件的核心

Python工程师面试必备25条知识点

1.到底什么是Python?你可以在回答中与其他技术进行对比 Python是一种解释型语言。与C语言....

发表于 06-04 11:16 33次 阅读
Python工程师面试必备25条知识点

对初学者对嵌入式系统学习的误区及建议

对初学者对嵌入式系统学习的误区及建议 1 嵌入式系统的知识体系 嵌入式系统的应用范围可以粗略分为两大....

发表于 06-04 11:10 53次 阅读
对初学者对嵌入式系统学习的误区及建议

利用Microchip 全新的 PIC®和AVR® MCU在闭环控制应用中提高系统性能

通过改进架构,PIC®和AVR® 8位单片机(MCU) 针对闭环控制进行了优化,让系统能够降低中央处....

的头像 人间烟火123 发表于 06-01 10:51 2172次 阅读
利用Microchip 全新的 PIC®和AVR® MCU在闭环控制应用中提高系统性能

嵌入式系统全面分析

随着现代化技术的飞速发展,嵌入式系统已深入到社会的各个领域,嵌入式系统的产品已应用到人们的日常生活的....

发表于 06-01 00:34 117次 阅读
嵌入式系统全面分析

SiFive引领云端“共享设计”革新,“共享设计”模式让小微企业没有难做的芯片

SiFive是基于RISC-V指令集架构提供快速开发式处理器核心IP的领先供应商,核心团队就是由RI....

的头像 DIGITIMES 发表于 05-30 11:18 1056次 阅读
SiFive引领云端“共享设计”革新,“共享设计”模式让小微企业没有难做的芯片

嵌入式系统分析工具

虽然软件开发人员并非硬件工程师,但准备一些有助于检测和操作硬件的工具仍然很有用。第一种必不可少的工具....

的头像 电子发烧友网 发表于 05-30 09:30 1493次 阅读
嵌入式系统分析工具

硬件工程师学习从何开始?市面上七大主流单片机的详细介绍

根据对象体系的功能复杂性和计算处理复杂性,提供的不同选择。对于简单的家电控制嵌入式系统,采用简单的8....

的头像 EDN电子技术设计 发表于 05-30 08:40 2219次 阅读
硬件工程师学习从何开始?市面上七大主流单片机的详细介绍

RISC-V的魅力究竟何在?SiFive引发了一场开源芯片设计革命

由RISC-V和开源硬件的领导者SiFive公司主办,灿芯半导体和《中国集成电路》杂志社联合承办的S....

发表于 05-29 09:14 144次 阅读
RISC-V的魅力究竟何在?SiFive引发了一场开源芯片设计革命

一分钟教会你怎样学好嵌入式系统

随着现代社会信息化进程的加快,嵌入式系统被广泛的地应用于军事、家用、工业、商业、办公、医疗等社会各个....

发表于 05-25 11:42 109次 阅读
一分钟教会你怎样学好嵌入式系统

大神教你:嵌入式系统C++代码的变成技巧

在嵌入式软件技术中,C++语言具有较高的编程效率。但是,要实现高效率,还有许多问题需要特别注意。首先....

发表于 05-25 09:20 151次 阅读
大神教你:嵌入式系统C++代码的变成技巧

小白看过来!对初学者对嵌入式系统学习的误区及建议

嵌入式系统的应用范围可以粗略分为两大类:电子系统的智能化(工业 控制、现代农业、家用电器、汽车电子、....

发表于 05-25 09:11 127次 阅读
小白看过来!对初学者对嵌入式系统学习的误区及建议

传统编程结构的局限性,使用“前后台方式”进行编程

使用“前后台方式”进行编程时,为保证任务(5)的及时性,使用了UART中断,当UART完成一个字节的....

的头像 21ic电子网 发表于 05-25 09:07 688次 阅读
传统编程结构的局限性,使用“前后台方式”进行编程

一分钟带你了解嵌入式系统的的学习方法

随着现代社会信息化进程的加快,嵌入式系统被广泛的地应用于军事、家用、工业、商业、办公、医疗等社会各个....

发表于 05-25 09:03 88次 阅读
一分钟带你了解嵌入式系统的的学习方法

一文教会你:搭建完整的红外在线监控项目

随着互联网技术的发展,远程智能监控逐渐走进千家万户。但开发一套自动化监控项目的过程,却依旧十分繁琐复....

发表于 05-24 15:52 100次 阅读
一文教会你:搭建完整的红外在线监控项目

一文看懂:嵌入式风潮引领现代生活

呼啸而来的嵌入式风潮,正在悄悄地改变着一些传统行业的面貌。古老的、技术驱动的半导体行业,已经到了一个....

发表于 05-24 15:50 102次 阅读
一文看懂:嵌入式风潮引领现代生活

技术讲解:嵌入式智能人机界面与PLC的通讯

近年来,“嵌入式”一词越来越多的被人们提及,嵌入式产品被应用到各行各业。与嵌入式相关的技术如嵌入式产....

发表于 05-24 14:12 111次 阅读
技术讲解:嵌入式智能人机界面与PLC的通讯

RX600系列的新型RX65N/RX651微控制器

与此同时,瑞萨电子和软硬件及嵌入式系统开发工具供应商SEGGER宣布,双方将通过协作,为使用瑞萨电子....

的头像 瑞萨电子 发表于 05-24 08:49 2446次 阅读
RX600系列的新型RX65N/RX651微控制器

赛普拉斯TrueTouchCYAT817触摸屏控制器以汽车级质量为核心

赛普拉斯汽车人机界面高级市场营销总监JingMu博士表示:“汽车制造商对车载信息娱乐用户界面的要求与....

发表于 05-21 07:01 174次 阅读
赛普拉斯TrueTouchCYAT817触摸屏控制器以汽车级质量为核心

微软嵌入式系统支持将结束 企业用户将何去何从?

有些工厂可以提前完成任务,有些则可以按时做完,但有些则到了紧要关头还是拖延不前。那些仍在工业环境使用....

发表于 05-20 11:50 190次 阅读
微软嵌入式系统支持将结束 企业用户将何去何从?

嵌入式系统正大展拳脚 安全问题是隐患

在现实生活中,电子手表、智能电视、微波炉、汽车、飞机等所有带有数字接口的设备中都可以看见嵌入式系统,....

发表于 05-20 11:46 157次 阅读
嵌入式系统正大展拳脚 安全问题是隐患

嵌入式系统的软硬件协同设计过程讲解

传统的先硬件后软件嵌入式系统的系统设计模式需要反复修改、反复试验,整个设计过程在很大程度上依赖于设计....

发表于 05-20 09:10 311次 阅读
嵌入式系统的软硬件协同设计过程讲解

前先看!智能技术不断革新 嵌入式系统或将迎来转型期

还是照老规矩,讲解之前先普及概念。什么是嵌入式系统?嵌入式系统是一种完全嵌入受控器件内部,为特定应用....

发表于 05-20 09:00 257次 阅读
前先看!智能技术不断革新 嵌入式系统或将迎来转型期

嵌入式系统开发学习心得体会_经验总结

本文主要介绍的是嵌入式系统开发学习心得体会及经验总结,首先介绍了嵌入式系统开发的三大关键点,其次推荐....

的头像 陈翠 发表于 05-18 10:24 1555次 阅读
嵌入式系统开发学习心得体会_经验总结

嵌入式系统有哪些部分组成_嵌入式系统的应用领域

本文主要详解嵌入式系统有哪些部分组成以及嵌入式系统的应用领域,首先介绍了嵌入式系统的特点,其次阐述了....

发表于 05-18 10:04 402次 阅读
嵌入式系统有哪些部分组成_嵌入式系统的应用领域

嵌入式行业发展状况_嵌入式行业人才需求_嵌入式系统就业前景分析

本文主要是对嵌入式系统就业前景分析,首先介绍了嵌入式行业发展状况及人才需求,其次阐述了嵌入式系统行业....

的头像 陈翠 发表于 05-17 17:27 2085次 阅读
嵌入式行业发展状况_嵌入式行业人才需求_嵌入式系统就业前景分析

美高森美和SiFive推出HiFive Unleashed扩展板 助力Linux软件和固件开发人员首次构建RISC-V PC

致力于在功耗、安全、可靠性和性能方面提供差异化的领先半导体技术方案供应商美高森美公司(Microse....

的头像 人间烟火123 发表于 05-17 11:23 1325次 阅读
美高森美和SiFive推出HiFive Unleashed扩展板 助力Linux软件和固件开发人员首次构建RISC-V PC

ARM嵌入式系统硬件设计及应用实例详解

随着计算机技术、微电子技术和网络技术的迅速发展,嵌入式系统在工农业等诸多领域得到了广泛的应用。本文主....

发表于 05-16 15:56 344次 阅读
ARM嵌入式系统硬件设计及应用实例详解

赛普拉斯及业内人士共同探讨汽车电子市趋势 并分享先进汽车电子嵌入式系统解决方案

赛普拉斯认为,在智能化、网联化与电动化等技术趋势的推动下,汽车市场已进入颠覆式创新发展时代。车、城市....

的头像 人间烟火123 发表于 05-16 13:53 1366次 阅读
赛普拉斯及业内人士共同探讨汽车电子市趋势 并分享先进汽车电子嵌入式系统解决方案

SoC设计的革命 RISC-V芯片设计只需15天

SiFive近日完成了5,060万美元的C轮融资,将用于打造一种更简单、更快速且更低成本的芯片设计途....

的头像 面包板社区 发表于 05-16 10:46 488次 阅读
SoC设计的革命 RISC-V芯片设计只需15天

Bridgetek最新推出一系列基于嵌入式系统的开发模块

Bridgetek最新推出一系列基于嵌入式系统的开发模块。这些产品主要在帮助研发人员可容易实现更复杂....

发表于 05-14 08:16 101次 阅读
Bridgetek最新推出一系列基于嵌入式系统的开发模块

USB host 在嵌入式系统中应用的详细资料概述

随着移动通信技术的飞速发展,人们对设备的移动性需求越来越高,希望移动设备能直接越过PC 与USB 外....

发表于 05-10 11:18 84次 阅读
USB host 在嵌入式系统中应用的详细资料概述

嵌入式系统基础知识总结

总线是各种信号线的集合,是嵌入式系统中各部件之间传送数据、地址和控制信息的公共通路。在同一时刻,每条....

的头像 电子工程专辑 发表于 05-09 09:04 688次 阅读
嵌入式系统基础知识总结

基于LM3S8962的嵌入式微系统设计的详细中文资料概述

该文将嵌入式微系统的接入网技术作为主要研究对象,在进一步分析网络连接的结构体系及协议层次结构在嵌入式....

发表于 05-08 17:46 85次 阅读
基于LM3S8962的嵌入式微系统设计的详细中文资料概述

Cypress推出一个高度集成、可编程、汽车级且具有电力传输功能的USB-C控制器

Cypress半导体公司是领先的嵌入式系统解决方案的领导者,近日推出了拥有一个高度集成、可编程、汽车....

发表于 05-07 16:09 387次 阅读
Cypress推出一个高度集成、可编程、汽车级且具有电力传输功能的USB-C控制器

IAR FOR MSP430入门教程

IAR Systems是全球领先的嵌入式系统开发工具和服务的供应商。

发表于 05-07 15:05 45次 阅读
IAR FOR MSP430入门教程

如何减少器件间通信所用的I/O引脚数实现双向通信

随着嵌入式系统的小型化趋势,市场对减少器件间通信所用的I/O 引脚数的需求与日俱增。Microchi....

发表于 04-27 16:14 76次 阅读
如何减少器件间通信所用的I/O引脚数实现双向通信

RISC-V可能真正能成为国产的自主的指令集架构

最近中美贸易战激战正酣,中兴被美国禁运的消息传来,一时间国内舆论大哗,说了多年的芯片“自主研发”,这....

的头像 人工智能学家 发表于 04-27 09:09 2630次 阅读
RISC-V可能真正能成为国产的自主的指令集架构

RISC-V似有异军突起之势!中天微“善变”投入自主指令集架构研发

看好RISC-V真正能成为国产的自主的指令集架构的另一位“RISC-V推广人”,武汉聚芯微电子架构师....

的头像 DIGITIMES 发表于 04-25 11:05 1530次 阅读
RISC-V似有异军突起之势!中天微“善变”投入自主指令集架构研发

XDC和XDC软件包的详细资料概述

Express DSP组件(XDC,发音为EXE DEE)是一个提供优化的可重用软件组件的标准实时嵌....

发表于 04-25 09:09 49次 阅读
XDC和XDC软件包的详细资料概述

MSP430嵌入式系统的数字脉搏计研究

本仪器利用光电传感器获取脉搏信号,经 G L324 模块实现信号的放大和整形,由单片机完成周期的测定....

发表于 04-24 09:51 43次 阅读
MSP430嵌入式系统的数字脉搏计研究

嵌入式系统如何进行正确选型

嵌入式系统的类型 一般来讲,嵌入到某些专用设备的的计算机系统,都可以成为嵌入式系统。典型的有小型的工....

发表于 04-23 11:12 161次 阅读
嵌入式系统如何进行正确选型

嵌入式操作系统μC/OS—Ⅱ如何在MSP430F168单片机上移植

本文给 出了在 RAN 空间较 少的单 片机上移植嵌入式操作 系统 I~C/OS —II的一种方 法....

发表于 04-20 10:13 41次 阅读
嵌入式操作系统μC/OS—Ⅱ如何在MSP430F168单片机上移植

两种远程调试嵌入式系统的介绍

调试嵌入式系统与桌面操作系统差别很大,本文向您介绍调试嵌入式系统的两种推荐方案,插桩和片上调试,希望....

发表于 04-14 07:43 147次 阅读
两种远程调试嵌入式系统的介绍

嵌入式学习的七大钥匙

发表于 12-12 11:25 1428次 阅读
嵌入式学习的七大钥匙

嵌入式系统 硬件与软件架构(英文).pdf 需要的拿走。

发表于 11-15 10:29 1843次 阅读
嵌入式系统 硬件与软件架构(英文).pdf 需要的拿走。

清华大学视频课件:ARM微控制器与嵌入式系统(2017春)

发表于 11-14 16:53 2310次 阅读
清华大学视频课件:ARM微控制器与嵌入式系统(2017春)

这可能是最通俗易懂的方式讲解ARM中断原理以及中断嵌套

发表于 09-21 21:00 4749次 阅读
这可能是最通俗易懂的方式讲解ARM中断原理以及中断嵌套

有没有了解嵌入式软件验证的大神啊求抱大腿!!!

发表于 07-14 07:25 1284次 阅读
有没有了解嵌入式软件验证的大神啊求抱大腿!!!

鑫天鸿第四代强制式砂浆罐|工地预拌砂浆罐,将砂浆均匀进行到底!

发表于 07-07 10:41 540次 阅读
鑫天鸿第四代强制式砂浆罐|工地预拌砂浆罐,将砂浆均匀进行到底!

ARM裸机全集

发表于 12-08 16:51 6144次 阅读
ARM裸机全集