嵌入式linux学习笔记】的更多相关文章

嵌入式Linux学习分五个阶段 第一阶段: 01嵌入式环境搭建初期 02C语言语法概述 03C语言内存操作 04c语言函数 05linux基础 06gun基础 第二阶段: 01-linux之io系统编程 02-linux进程间通信 03-linux多线程 04-linux网络编程基础 第三阶段: 01-ARM开发板基础知识 02-ARM汇编语言 03-ARM硬件开发基础 04-ARM Bootloader开发 05-ARM硬件接口开发 第四阶段: 01-移植搭建 02-uboot.UART.DD…
在成功构建了一个能够运行在开发板平台的系统后,下一步就要正式开始应用的开发(这里前提是有一定的C语言基础,对ARM体系的软/硬件,这部分有疑问可能要参考其它教程),根据需求仔细分解任务,可以发现包含的外设有LED,BEEP,RS232,六轴传感(SPI接口),光环境传感器(I2C),音频输出, RTC等,如果按照这个顺序去实现驱动,一定程度其实又回归最初的模块学习的策略,不过既然是从应用的角度,先实现应用框架,来验证是否符合预期,这比测试模块驱动的更重要,也更容易有产出感. 按照这个需求,就可以…
一  嵌入式系统定义: 应用于特定环境的硬件体系. 二  两样非常重要的能力: 1.  掌握各种新概念的能力 2.  调试的能力( 包括软件, 硬件 ) 三  需要的基础知识: 1.  操作系统理论基础 2.  数据结构 3.  C,C++编程语言 4.  汇编语言 5.  Linux基础能力 6.  单片机基础 四  结构框架: 1.  bootloader( 作用:a. 初始化硬件 b. 引导操作系统 ) 2.  kernel 3.  文件系统 它们都置于flash中. 五  flash六大…
目录 (1).参考资料 (2).QT界面布局实现 (3).数据和操作逻辑 在上一章我们实现了下位机的协议制定,并通过串口通讯工具完成了对设备内外设(LED)的状态修改,下面就要进行上位机软件的实现了(事实上这部分不属于嵌入式Linux的内容,所以只在本章节讲述下上位机实现的流程和思路,后续维护更新不在进行详细说明,不过下位机界面实现肯定还会涉及这些技术),上位机的界面方案一般指在Windows平台的软件界面开发,如UWP,WINFORM/C#, WPF/C#, QT/C++等,如果说我的个人倾向…
学习记录: 到今天为止ARM裸机开发学习进程:1.2.1-1.2.14 预科班知识Linux介绍学习进程:0.2.1-0.2.6 学习内容笔记: 学习了Linux的开发方式的优劣介绍 学习了常用文件夹命令 ls(list) ls -a 显示所有文件(包括隐藏文件) ls -l 显示所有详细信息 ls -a -l也可以 man(查询命令) man 1 ls(1表示查询命令,ls表示查询的内容) cd(change directory) cd ..代表上一层 cd ../../代表上上层 cd .是…
一.NAND Flash介绍和NAND Flash控制器的使用 NAND Flash在嵌入式系统中的作用,相当于PC上的硬盘 常见的Flash有NOR Flash和NAND Flash,NOR Flash上进行读取的效率非常高,但是擦除和写操作的效率很低,容量一般比较小:NAND Flash进行擦除和写操作的效率更高,并且容量更大.一般NOR Flash用于存储程序,NAND Flash用于存储数据. 1)NAND Flash的物理结构 笔者用的开发板上NAND Flash型号是K9F1G08,…
购买韦东山嵌入式开发板jz2440 v3会标配两根usb线和一根网线,OpenJtag需要单独购买, 我暂时还没买到该工具. 下面介绍usb烧录以及通过网线烧录程序. 1.usb烧录程序: 借助DNW工具通过usb线烧录程序到Nandflash. 操作步骤: a. 开发板断电,  ①处拨成从norflash启动, ②处接到电脑的usb口, 同时连接好开发板的串口, 然后开发板上电. b. 上电之后在倒数结束后按空格件进入uboot, 可以看到uboot输出一个菜单,输入n,选择下载程序到nand…
一.内存管理基本知识 1.S3C2440最多会用到两级页表:以段的方式进行转换时只用到一级页表,以页的方式进行转换时用到两级页表.页的大小有三种:大页(64KB),小页(4KB),极小页(1KB).条目也称为"描述符",有:段描述符,大页描述符,小页描述符,极小页描述符——他们保存大页,小页,极小页的起始物理地址:粗页表描述符,细页表描述符——他们保存二级页表的物理地址. 2.一级页表描述符的最低两位,可分为以下四种情况: (1).0b00:无效. (2).0b01:粗页表. (3).…
1.文件IO的四个函数 一些术语: 不带缓冲的I/O: 每个read和write都调用内核中的一个系统调用. 文件描述符: 一个非负整数,对内核而言,所以打开的文件都通过文件描述符引用. ①打开或创建一个文件 open(char *path, flag, mode) 在fcntl.h文件中声明 int openat(int fd, const char *path, int flag......) open 与 openat的区别:①路径,path指定是绝对路径时open==openat:ope…
中断是什么? 举个栗子, 系统怎么知道你什么时候插入鼠标这个设备? 可以有两种处理方式: 1. 查询方式: 轮询去检测是否有设备插入; 2. 中断的方式 当鼠标插入这个事件发生时, 置位某个寄存器,告诉CPU去处理这个事件. 对于查询方式, 我们需要一直去监控想要知道的状态, 而中断的处理方式, 使得CPU有空去处理其他的事情, 当插入鼠标这个时间发生时才来处理这个事件, 这样下来, 处理效率会高很多,中断的作用也可见一斑. 下面介绍s3c2440的中断控制器 s3c2440有60个中断源, 这…
常用的flash有两种, Norflash和Nandflash, 前几年市场上的产品比较常见的方案时Norflash和Nandflash搭配使用, 因为norflash比较昂贵,相同的容量norflash要贵上很多,.一般要把运行的程序存放在norflash上面, 数据存放在nandflash上面. 其实我有点纳闷,为什么不直接用一块nandflash就解决了? 但这样设计会有一个好处就是nandflash坏了的话,程序还能跑起来, 可以利用软件去做一些动作,对于排查可能会有好处. 其他的时no…
SDRAM: 原理图如下:          jz2440 v3开发板上面用的内存芯片为钰创科技公司生产的EM63A165TS,一片内存大小为32MB大小,一共有两块,共64MB的大小. SDRAM接的是BANK 6,所以他的起始地址是 0x30000000. SDRAM的基本寻址关系 SDRAM的存储结构逻辑如上图,  SDRAM内部是一个存储阵列,阵列就如同表格一样,将数据"填进去".和表格的检索原理一样,先指定一个行,再指定一个列,两点确定一个坐标,就可以准确地找到所需要的 单元…
搜索开发板原理图LED的走线           LED8是网线接口的指示灯. 在这里我们尝试用汇编代码控制D10, 也就是LED1,它连接到EINT4/GPF4,读取芯片手册 有原理图可知,如果需要点亮LED1,需要控制s3c2440的GPF4引脚输出低电平. GPFCON = 0x56000050 GPFDAT = 0x56000054 GPFUP = 0x56000058 ========================= 直接set 0x56000050 = 0x100  设置GPF4为…
1. 从网上下一个虚拟机,比如vmvare station 2.下一个ubuntu镜像回来安装,  我下了14.04来安装.参考链接:  https://blog.csdn.net/qq1326702940/article/details/82322079 3.如果ubuntu界面不能正常缩放,可以使用命令安装vm tools 第一行命令:sudo apt-get upgrate 第二行命令:sudo apt-get install open-vm-tools-desktop -y 第三行命令:…
请参考链接:https://blog.csdn.net/u013490896/article/details/71250060 我的环境: window 10 jz2440 v3 我采用的连接方式如下: 解决办法: 关闭windows防火墙…
1.溢出:两个数相加,如果最高位的进位和此高位的进位不同,则产生溢出. 2.进位和溢出的概念不一样. 3.预取(取得是编译后得到的机器代码)-->译码-->执行 4.ARM的汇编指令长度是确定的,32位. 5.一条汇编指令  条件码(4bit)   操作码    分类码  S(1bit)  目的寄存器(4bit)  源寄存器(4bit)  立即数 (8bit) 6.一般的管脚都有两个寄存器,一个是配置寄存器(决定管脚的工作模式):一个是数据寄存器(决定管脚的高低电平). 7.X86因为寄存器太…
Linux学习笔记--基于鸟哥的Linux私房菜 ***** ARM与嵌入式linux的入门建议 (1) 学习基本的裸机编程:ARM7或ARM9,理解硬件架构和控制原理 (这一步是绝对的根基) (2) 使用Linux系统进行一些基本的实验 (3) 研究完整的Linux系统的运行过程 : 完整Linux = bootloader + linux kernel + rootfile根文件系统 (4) 开始做Linux系统移植 :修改开源的Linux源代码,直到可以运行在你的板子上,这就叫移植 (5)…
Linux学习笔记 请切换web视图查看,表格比较大,方法:视图>>web板式视图 博客园不能粘贴图片吗 http://wenku.baidu.com/view/bda1c3067fd5360cba1adb7d 目录 Linux学习笔记... 1 请切换web视图查看,表格比较大,方法:视图>>web板式视图... 1 1.      常用命令... 3 1.1文件处理命令... 3 1.2权限管理命令... 8 1.3文件搜索命令... 12 1.4帮助命令... 19 1.5压…
第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装linux操作系统,以及一些基本的设置修改. 本篇博客主要介绍linux中的一些常用的终端命令 ============================================== 启用和禁用触摸盘  sudo rmmod psmouse 禁用触摸盘 sudo modprobe psmouse 启用触摸盘 ============================================== 连…
研究生由单片机转Linux学习 首先安装VMware虚拟机,用的是VMware 10.0 在VMware 10.0上安装视频上推荐的Red Hat Linux 5 安装后正式进入Linux学习 笔记1.1 Q:Linux系统进入桌面后如何进入终端terminal  A:1.右击桌面空白处-->open terminal   2.ctrl+alt+F1到F6,此时进入的是全黑屏的terminal,要返回图形界面的按ctrl+alt+F7. 笔记1.2 Q:Linux中怎么把[root@localh…
Linux学习笔记第一天 Linux基本介绍 Linux的起源和发展: 简单说linux是一种操作系统,可以安装在包括服务器.个人电脑,乃至PDA.手机.打印机等各类设备中. 起源: Linux起源于1991年,于1994年发布1.0版本的正式内核.追溯到Unix,Unix起源于1969年,是贝尔实验室的一个研究项目,10年后,Unix被无偿提供给各大学,成为众多大学和实验室研究项目的基础.但是Unix仍然是收费的.此外还有很长的发展,伯克利大学的Unix完全剔除了贝尔实验室的源码形成了自己的U…
笔记目录:一.系统知识 和 基本概念                    二.常用操作                   三.系统管理(内存.设备.服务等管理)                   四.其他操作 一.系统知识 和 基本概念   1.1. linux 各个分区的作用 参考博主“沉淀”的总结:linux目录结构以及作用 1.2.swap 和 temp 区别 swap 用于普通程序的数据交换,temp 用于系统程序的数据交换 二.常用操作   2.1.软件安装.卸载.执行 详见我的…
Linux学习笔记... 参考的优秀Linux网站: http://www.w3cschool.cn/linux/ http://www.linuxeye.com/ http://linux.vbird.org/linux_basic/   Hello World! My Name Is Called Linux Linux系统从1991年至2016年将近二十五年的发展历程 学习是件苦差我不想回避这个问题——学习本是件痛苦的事情.如果学习Linux真的很简单,那么必是骗子说的谎话,起码这将不能给…
回到占占推荐博客索引 本篇文章是对自己学习Linux及在它的环境下部署工具的一个总结,以方便自己查阅,也给他人一个帮助,本文章同时会不断的更新,欢迎大家订阅! 本目录包括的内容会包括linux基础命令,redis,mongodb,node.js,.net core,kafka,rabbitmq,zookeeper,docker,nginx等工具的部署! Linux~学习笔记目录 Linux~常用的命令 Linux~上部署.net MVC出现的问题与解决 Linux~yum命令安装程序 Linux…
目录 deepin linux学习笔记(四)进不去图形界面怎么办? 前言 更换成lxde桌面 进不去图形界面怎么办? 总结 deepin linux学习笔记(四)进不去图形界面怎么办? 前言 生命不息,折腾不止. 更换成lxde桌面 deepin桌面其实还不错,就是感觉有点卡通化,没什么之感,很单薄,而且性能感觉不太好的样子(很难说清楚).据说lxde是一个性能很高的桌面环境,所以我就尝试了一下. 2019-02-19 17-45-15屏幕截图.png 首先,linux更换桌面其实很简单,只要直…
目录 deepin linux 学习笔记(二)--文本编辑器 前言 nano 小巧的命令行编辑器 通用 编辑 定位 排版 配置 vim 思路独特的超级编辑器 命令模式 插入模式 底线模式(末行模式) deepin linux 学习笔记(二)--文本编辑器 前言 今天来谈一下linux的编辑器,特别是命令行下面的文本编辑器.在视窗环境下有很多可以用,也很容易操作的文本编辑器,但是linux经常会需要在命令行下面编辑文本,比如一些配置文件的修改,这就要求要熟练相关的工具. 老实说,新手进入linux…
目录 deepin linux学习笔记 前言 linux常用命令 ls 显示文件夹内容 cd 切换当前目录 pwd 查看当前工作目录 mkdir 新建文件夹 rm 删除文件或文件夹 mv 移动文件 cp 复制文件 cat 显示文件内容 more 分页显示文件内容 less 更强大的more head 输出文件头部内容 tail 输出文件尾部内容 which 查找程序,显示文件路径 whereis 查找文件 locate 以数据库信息来查找文件 find 在磁盘中查找文件 chmod 设置文件权限…
转载请标注原链接:http://www.cnblogs.com/xczyd/p/5543731.html 第一篇博客:linux学习笔记1-ubuntu的安装与基本设置 之中,已经介绍了如何安装linux操作系统,以及一些基本的设置修改. 本篇博客主要介绍linux中的一些常用的命令(主要是shell命令) ============================================== 文件/文件夹相关操作 #在当前目录下,创建一个名为test的文件夹 mkdir test #在当…
Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 14------------------------------ 例子:将网卡的ip地址设置为192.168.0.3 [root@localhost laiyu]# ifconfig eth0 192.168.1.3 [root@localhost laiyu]# ifconfig eth0      Link encap:Ether…
Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ---------------------------------接Part 13------------------------------ 2.第二.三行为进程和CPU的信息 当有多个CPU时,这些内容可能会超过两行,内容如下 Tasks: 201 total 进程总数 2 running 正在运行的进程数 199 sleeping 睡眠的进程数 0 stopped 停止的进程数 0 zombie 僵尸进程…