前篇 《由static来谈谈模块封装》 基本实现了对外隐藏属性,隐藏局部模块函数,开放接口的功能。对于这个话题还有些点没有深入探讨:为什么要这样做?以及这样做的好处是什么?
不同开发板,启动方式不一样,今天我们来介绍imx6ull开发板的启动方式,这非常重要。若不了解清楚启动方式,后面的所有开发工作便无从谈起。
Windows下常用IDE来编译,Linux下直接使用gcc来编译,编译过程是Linux嵌入式编程的基础,也是嵌入式高频基础面试问题。
代码版本控制对于我们嵌入式软件开发岗是一项基础、必备的技能,需要熟练掌握。实际工作中常用的版本控制系统有:Git(分布式版本控制系统)与SVN(集中式版本控制系统)。 本次分享Git在实际工作中的基本使用方法。 一、Git的下载、安装及配置 1、Git与Githu
这是一个群友发的笔试题目,里面涉及的东西也比较有意思。 直接看代码 void (*f[])(char *) 这个是个什么东西? 我们先看看下面的东西 函数指针和指针函数的定义 我们看个代码 int *func(int a,int b) 我们之前说过运算符的优先级,「 * 」 的优先级低于「(
嵌入式是软件设计领域的一个分支,它自身的诸多特点决定了系统架构师的选择,同时它的一些问题又具有相当的通用性,可以推广到其他的领域。提起嵌入式软件设计,传统的印象是单片机,汇编,高度依赖硬件。
前言 在嵌入式开发中,ADC应用比较频繁,本文主要讲解ADC的基本原理以及如何编写基于ARM的裸机程序和基于Linux的驱动程序。 ARM架构:Cortex-A9 Linux内核:3.14 在讲述ADC之前,我们需要先了解什么是模拟信号和数字信号。 模拟信号 主要是与离散的数字信号相
之前有朋友问面向对象相关例子,这篇文章分享的就是面向对象的实例,可以学一学。文章出自RTT工程师国际哥,首发于Linux阅码场。 前言 传统单片机 MCU 编程大多使用过程式的思维来组织程序,在单片机资源少、功能简单、代码规模小的情况下,「想到啥写啥」的
前言 前不久,我有位做测试的朋友转去做开发的工作,面试遇到了一个问题,他没明白,打电话问了我。题目大概就是: 在单片机裸机开发时,单片机要处理多个任务,此时你的程序框架是怎样的呢? 这其实是个经典面试问题,我以前面试也被问过。 答案一:轮询系统
通信协议中的数据传输、数组的存储方式、数据的强制转换等这些都会牵涉到大小端问题。 CPU的大端和小端模式很多地方都会用到,但还是有许多朋友不知道,今天暂且普及一下。 一、为什么会有大小端模式之分呢? 因为在计算机系统中,我们是以字节为单位的,每个
RT-Thread Smart 微内核发布会 前言 去年华为将微内核操作系统这一专业术语带到了几乎所有人的视线中,网上瞬间铺天盖地的关于微内核的文章大肆渲染造势,似乎人人都可以就微内核谈论上几句。但你真的知道什么是微内核吗?看过微内核操作系统的代码吗?见
之前分享了很多关于freeRTOS的知识,那么我们怎么在实战中去写代码呢?本篇文章重在对基于freeRTOS的架构代码的解析。