嵌入式Linux & ARM
嵌入式Linux 和 ARM相关文章
会有那么一天oc
人生不止编程,还有美妙的生活和美好的人。心中装着美好,随处是风景 !
展开
-
ARM基础了解
ARM 处理器家族早起经典处理器 包括ARM7、ARM9、ARM11等,Cortex-A系列是它们的升级版从ARM11之后就变成了Cortex系列Cortex-M系列 控制为单片机驱动的系统提供的低成本优化方案,应用于传统的微控制器市场,智能传感器,汽车周边部件等。Cortex-A系列 处理针对开放式操作系统的高性能处理器,可以跑Android、Linux等系统,应用于智能手...原创 2018-06-30 16:23:26 · 1697 阅读 · 0 评论 -
并行串行通信方式图解
串行数据是各数据位按顺序进行,并行是各数据位同时传送原创 2017-10-28 15:43:32 · 1516 阅读 · 0 评论 -
ARM学习笔记---中断
中断优先级由高到低51单片机:INT0(P3.2)、TIMER0、INT1(P3.3)、TIMER1、串口中断(P3.0、P3.1)52单片机:TIMER2外部中断下降沿触发内部定时器:TMOD寄存器(M1M0)M1 M0 方式0 0 0 13位0 1 1 16位1 0 2 8 auto1 1 3 两个8位串口{RI->while(RI!)T原创 2017-10-28 15:28:06 · 433 阅读 · 0 评论 -
ARM学习笔记---串口
串口中断 接收标志RI 发送标志TI4 种串口方式->配置波特率控制器之间发送数据:设置好波特率1.起始位2.数据位3.校验位4.停止位bit 位波特率: 4800bit/s、9600bit/s、115200bit/s ......字节 = 4800/10 (8数据位+起始位+停止位=10)通信方式: UART(串口)、IIC、485原创 2017-10-28 15:24:48 · 481 阅读 · 0 评论 -
ARM中一些常见英文缩写解释
MSB:最高有效位; LSB:最低有效位; AHB:先进的高性能总线; VPB:连接片内外设功能的VLSI外设总线; EMC:外部存储器控制器; MAM:存储器加速模块; VIC:向量中断控制器; SPI:全双工串行接口; CAN:控制器局域网,一种串行通讯协议; PWM:脉宽调制器; ETM:嵌入式跟踪宏; CPSR:当前程序状态寄存器; SPSR:程序保护状态寄存器;原创 2017-09-24 21:44:13 · 1909 阅读 · 0 评论 -
ARM学习笔记(一)
占空比: 高电平占一个周期的百分比串口中的GND作用: 1.保证在同一个电压 2.防止电流回流RTC 即实时时钟 单片机芯片为: 1302通讯协议: UART、IIC、SPI、485 等等ARM的优点: 1、引脚多(IC度高即集成度高) 2、主频高 3、内存大(装操作系统)原创 2017-09-10 16:35:12 · 344 阅读 · 0 评论 -
干货!ARM常用的22个概念!快收藏
1.ARM中一些常见英文缩写解释 MSB:最高有效位; LSB:最低有效位; AHB:先进的高性能总线; VPB:连接片内外设功能的VLSI外设总线; EMC:外部存储器控制器; MAM:存储器加速模块; VIC:向量中断控制器; SPI:全双工串行接口; CAN:控制器局域网,一种串行通讯协议; PWM:脉宽调制器; ETM:嵌入式跟踪宏; CPSR:当前程序状态寄存器;转载 2017-05-19 22:41:42 · 307 阅读 · 0 评论 -
嵌入式硬件系统相关知识学习笔记
几个专业名词 app 应用程序 API 应用程序接口 RTOS 实时操作系统 Peripherals 外设 Flash 存储器(闪存) bit 字长 Byte 字节 1 Byte = 8 bit看门狗电路的工作原理? CPU 一直给 WD(Watch原创 2017-09-24 21:14:55 · 365 阅读 · 0 评论 -
通过分频器和乘法器来实现对频率的减倍和倍增效果
通过分屏器实现频率的减倍(可用计数器实现)实现频率的倍增(乘法器)原创 2017-09-24 21:36:49 · 1098 阅读 · 0 评论 -
GLIBCXX_3.4.9' not found - 解决办法
在RHEL5中安装交叉编译器arm-linux-gcc 4.4.3,然后编译mini2440内核出错: /usr/lib/libstdc++.so.6: version GLIBCXX_3.4.9' not found: 在RHEL5中安装交叉编译器arm-linux-gcc 4.4.3,然后编译mini2440内核出错: /usr/lib/libstdc++.so.6: versionG转载 2017-11-18 21:42:06 · 919 阅读 · 0 评论 -
Linux 常用命令
cdcd /root/Docements 切换到目录/root/Docements cd ./path 切换到当前目录下的path目录中,“.”表示当前目录 cd ../path 切换到上层目录中的path目录中,“..”表示上一层目录 ls-l :列出长数据串,包含文件的属性与权限数据等 -a :列出全部的文件,...原创 2018-04-12 20:42:45 · 407 阅读 · 0 评论 -
Linux 系统启动过程
Linux 系统启动过程过程可以分为5个阶段 内核的引导运行init系统初始化建立终端 - 用户登录系统内核引导 当计算机打开电源后,首先是BIOS开机自检,按照BIOS中设置的启动设备(通常是硬盘)来启动。操作系统接管硬件以后,首先读入 /boot 目录下的内核文件。graph LR操作系统-->/boot运行init init ...原创 2018-05-31 13:34:58 · 256 阅读 · 0 评论 -
Linux 系统目录结构
Linux 系统目录结构输入 ls / - 树状目录结构/bin bin是Binary(二进制)的缩写,这个目录存放着最经常使用的命令。/boot 这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。/dev dev是Device(设备)的缩写,该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的...原创 2018-05-31 13:35:50 · 417 阅读 · 0 评论 -
Makefile学习心得
Makefile学习笔记 --Tengteng一、makefile 概述:makefile 关系到了整个工程的编译规则。一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile 定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 makefile 就像一原创 2017-07-21 20:55:22 · 720 阅读 · 0 评论 -
网络编程服务器与客户端实现代码详解
网络编程服务器客户端代码详解原创 2017-08-11 20:25:20 · 777 阅读 · 0 评论 -
嵌入式linux基础学习笔记
Linux是什么1、 Linux的核心原型是1991年由托瓦兹(Linus Torvalds)写出来的。2、 1973年:unix的正式诞生,Ritchie等人以C语言写出第一个正式unix核心。3、 1977年:重要的unix分支——BSD(Berkeley Software Distribution)的诞生。4、 目前被称为纯的unix指的就是S转载 2017-05-03 21:28:52 · 309 阅读 · 0 评论 -
gcc常用命令选项
gcc这条命令用来将源代码生成可执行程序,下面来看一下gcc的常用选项。 1、无选项编译链接 例:命令:gcc test.c //会默认生成a.out可执行程序 2、-E: 进行预处理和编译,生成汇编文件。 命令:gcc -E test.c //会生成test.i文件3、-S: 进行预处理,编译,汇编等步骤,生成“.s”文件 例:命令:gcc -S test.c //会转载 2017-05-11 22:46:48 · 11213 阅读 · 0 评论 -
嵌入式应用层开发学习步骤
如果从应用层的应用开发出发,建议先熟悉API函数,如果从应用层的界面开发出发,则建议学习Qt,WinCE或Android等。但真实的嵌入式开发,熟悉以上还是远远不够的,建议如下学习曲线.第一节段 熟练使用Linux操作系统学习Linux操作系统的概念和安装方法,理解Linux下的基本命令、管理配置和编辑器,包括VI编辑器,GCC编译器,GDB调试器和 Make 项目管理工具转载 2017-05-04 16:00:17 · 741 阅读 · 0 评论 -
不再害怕驱动!Linux字符设备驱动详解
现实世界中存在着大量的设备,操作系统要求能够控制和管理这些硬件,而驱动就能帮助实现管理控制。下面我们从不同的角度理解一下驱动:驱动(Device Driver)相当于硬件的接口,它维护着我们的硬件,操作系统通过驱动这个接口才能控制硬件。驱动本身就是一段代码,自己不会主动运行,而是被操作系统调用执行。驱动是内核的一部分,运行在内核空间。驱动和应用程序有什么关系?应用程序在运行中往往要用到硬件设备,但应转载 2017-05-13 21:54:33 · 371 阅读 · 0 评论 -
关于Linux进程你所需要知道的一切
进程(process)是指正在执行的程序;是程序正在运行的一个实例。它由程序指令,和从文件、其它程序中读取的数据或系统用户的输入组成。进程的类型在 Linux 中主要有两种类型的进程:前台进程(也称为交互式进程) - 这些进程由终端会话初始化和控制。换句话说,需要有一个连接到系统中的用户来启动这样的进程;它们不是作为系统功能/服务的一部分自动启动。后台进转载 2017-05-05 20:55:14 · 413 阅读 · 0 评论 -
关于shellll脚本的基本编译
什么是shell? shell是用C语言进行编写,在Linux内是用户和系统的桥梁。下面主要针对最常见的shell中的 Bash shell的基本编译进行说明。一、shell最简单的脚本运行该脚本二、shell中的变量注: ‘=’两边无空格! 其中单引号中的内容会原样输出,内部不能使用变量,也不能使用转义字原创 2017-05-06 19:58:21 · 1427 阅读 · 0 评论 -
Linux下的目录树
目录树的主要部分有root(/)、/USR、/var、/home等等。下面是一个典型的linux目录结构如下: / 根目录 /bin 存放必要的命令 /boot 存放内核以及启动所需的文件等 /dev 存放设备文件 /etc 存放系统的配置文件 /home 用户文件的主目录,用户数据存放在其主目录中 /lib 存放必要的运行库 /mnt 存放临时的映射文件系统,我们转载 2017-05-08 21:57:53 · 403 阅读 · 0 评论 -
走进嵌入式Linux系统的内部
Linux系统一般有4个主要部分:内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序、管理文件并使用系统。部分层次结构如图1-1所示。 1. linux内核内核是操作系统的核心,具有很多最基本功能,它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能转载 2017-05-27 21:44:17 · 1392 阅读 · 0 评论 -
Linux操作系统下,通过系统调用和库函数分别实现对文件的拷贝
通过系统调用实现 file.copy通过库函数实现 file.copy原创 2017-06-06 22:01:12 · 3168 阅读 · 0 评论 -
Linux 进程与线程概念解析
线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者.传统的Unix也支持线程的概念,但是在一个进程(process)中只允许有一个线程,这样多线程就意味着多进程.现在,多线程技术已经被许多操作系统所支持,包括Windows/NT、Linux。进程:进程是一个具有一定独立功能的程序的一次运行活动,同时也是资源分配的最小单元;原创 2017-06-18 21:58:36 · 4080 阅读 · 0 评论 -
通过互斥锁Mutex和条件变量Conditions实现动态平衡,模拟生活中卖包子的情景
实现代码如下:#include <stdio.h>#include <pthread.h>#include <stdlib.h>#define P_C 3 //3个生产者#define C_C 2 //2个消费者 int count = 0; //馒头的个数pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;pthread_cond_t con原创 2017-06-19 10:40:32 · 399 阅读 · 0 评论 -
嵌入式Linux中的根文件系统详解
首先要明白的是“什么是文件系统?”,文件系统是对一个存储设备上的数据和元数据进行组织的机制。这种机制有利于用户和操作系统的交互。在一篇oracle的技术文章中看到这样一句话“尽管内核是 Linux 的核心,但文件却是用户与操作系统交互所采用的主要工具。这对 Linux 来说尤其如此,这是因为在 UNIX 传统中,它使用文件 I/O 机制管理硬件设备和数据文件”。转载 2017-06-10 21:53:22 · 829 阅读 · 0 评论 -
网络编程中对TCP协议和UDP协议的理解
TCP协议和UDP协议:协议:计算机网络中进行数据交换的规则、标准或者是约定!TCP协议: 1、TCP是工作在传输层的!对上服务Socket接口,对下调用IP层! 2、TCP是面向连接的,通信前必须经过三次握手协议建立连接关系,然后才能够进行通信! 跟生活中打电话之前要拨通号码是一个意思! 3、TCP协议可以提供可靠传输,不怕丢包以及乱序! TCP原创 2017-07-16 19:31:05 · 499 阅读 · 0 评论 -
嵌入式编程与PC编程有何区别
能从PC机器编程去看嵌入式问题,那是第一步;学会用嵌入式编程思想,那是第二步;用PC的思想和嵌入式的思想结合在一起,应用于实际的项目,那是第三步。有些朋友是从PC编程转向嵌入式编程的。在中国,嵌入式编程的朋友很少是正儿八经从计算机专业毕业的,都是从自动控制啊,电子相关的专业毕业的。这些童鞋们,实践经验雄厚,但是理论知识缺乏;计算机专业毕业的童鞋很大一部分去弄网游、网页这些独立于转载 2017-05-10 22:27:55 · 1001 阅读 · 0 评论