embedded

What's the best description for “embedded hardware system”?

倾然丶 夕夏残阳落幕 提交于 2020-01-13 12:08:36
问题 When I hear that, I always think about an mobile device. But why is the hardware "embedded" there? Isn't the whole device the hardware? Why is a personal computer no embedded hardware system? 回答1: In today's world embedded simply refers to a system with one or more of the following traits: Single purpose (ie, not a general purpose computer, like your desktop) Firmware rather than software - still software, but not as easily updated (flash, etc) Hardware and software are designed together as a

Coherently understand the software-hardware interaction with regard to DMA and buses

百般思念 提交于 2020-01-13 06:37:06
问题 I've gathered some level of knowledge on several components (including software and hardware) which are involved in general DMA transactions in ARM based boards, but I don't understand how is it all perfectly integrated, I didn't find a full coherent description about this. I'll write down the high level of the knowledge I already have and I hope that someone could fix me where I'm wrong and complete the missing parts so the whole picture would be clear. My description starts with the

Embedded systems file encryption library

谁说我不能喝 提交于 2020-01-12 08:09:09
问题 I've got a project and a part of it is incorporating encryption into a FAT file system. The goal of the project is not the encryption, so I'm free to use open-source pre-done libraries. Ideally what I'm after is a C library which uses RSA, that already has the methods for computing keys and encrypting/decrypting files. 回答1: You might want to check out NaCl (pronounced as "salt"), especially since this is for an embedded system. It has CPU-specific tunings and doesn't require any dynamic

Safely storing and accessing EEPROM

守給你的承諾、 提交于 2020-01-12 03:19:14
问题 I've recently established the need to store infrequently-updated configuration variables in the EEPROM of a microcontroller. Adding state to the program immediately forces one to worry about detection of uninitialized data in EEPROM (i.e. first boot), converting or invalidating data from old firmware versions, and addressing of multiple structures, each of which which may grow in firmware updates. Extensive Googling has only turned up one article that addresses keeping your EEPROM data valid

How is the BIOS ROM mapped into address space on PC?

馋奶兔 提交于 2020-01-11 15:30:12
问题 The x86 CPU begins execution at physical address 0xFFFFFFF0. There at the end of the address space the BIOS ROM is located. The first instruction the CPU executes from the ROM is far jump which causes the CS segment to be reloaded so the next instruction is executed from within the physical region 0x000F0000 - 0x000FFFFF. What causes the ROM to respond on both regions? Is there some special address decoding logic on PC? I found comment in Bochs source code that states that last 128K of BIOS

On reset what happens in embedded system?

断了今生、忘了曾经 提交于 2020-01-10 16:54:25
问题 I have a doubt regarding the reset due to power up: 1.As i know that microcontroller is hardwired to start with some particular memory location say 0000H on power up. At 0000h, whether interrupt service routine is written for reset(intialization of stack pointer and program counter etc) or the reset address is there at 0000h(say 7000) so that micro controller jumps at 7000 address and there initialization of stack and PC is written. 2.Who writes this reset service routine? Is it the

How to apply patches to a package in Buildroot?

余生颓废 提交于 2020-01-10 14:30:52
问题 I am working on an embedded system that uses buildroot as a tool for building the kernel and the root filesystem. I want to apply some patches to this kernel source tree, Can somebody tell me how buildroot apply patches? 回答1: To expand on @pradeepchhentri's answer. Quilt will look for a file located in the same folder as the *.mk file. To construct the appropriate file: diff your source package from the original into a file called packagename - number - description .patch where packagename -

Function pointers in embedded systems, are they useful?

↘锁芯ラ 提交于 2020-01-10 01:35:08
问题 In an interview they asked me if using function pointers would be beneficial (in terms of speed) when writing code for embedded systems? I had no idea on embedded system so could not answer the question. Just a cloudy or vague answer. So what are the real benefits? Speed, readability, maintenance,cost? 回答1: I think perhaps Viren Shakya's answer misses the point that the interviewer was trying to elicit. In some constructs the use of a function pointer may speed up execution. For example, if

Compiling an application for use in highly radioactive environments

二次信任 提交于 2020-01-09 05:43:05
问题 We are compiling an embedded C/C++ application that is deployed in a shielded device in an environment bombarded with ionizing radiation. We are using GCC and cross-compiling for ARM. When deployed, our application generates some erroneous data and crashes more often than we would like. The hardware is designed for this environment, and our application has run on this platform for several years. Are there changes we can make to our code, or compile-time improvements that can be made to

Is volatile required for synchronous ISR access? [duplicate]

时间秒杀一切 提交于 2020-01-07 05:23:12
问题 This question already has answers here : Is it safe to share a volatile variable between the main program and an ISR in C? (5 answers) Closed 2 years ago . In the following code snippet, an interrupt routine uses one of many arrays for its execution. The array used is selected synchronously, not asynchronously (it will never change while the ISR is executing). On a single core microcontroller (this question assumes an STM32L496 if the architecture is important), is the volatile specifier