pdf

嵌入式 Linux 系统 设计及应用 -基于国产龙芯 SOC

  • 1星
  • 日期: 2020-08-30
  • 大小: 24.01MB
  • 所需积分:0分
  • 下载次数:2
  • favicon收藏
  • rep举报
  • 分享
  • free评论
标签: 嵌入式

  嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是由单个程序实现整个控制逻辑。

Linux

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

系统

系统

设计及应用

系统

龙芯

龙芯是中国科学院计算所自主研发的通用CPU,采用RISC指令集,类似于MIPS指令集。龙芯1号的频率为266MHz,最早在2002年开始使用。

SOC

SoC的定义多种多样,由于其内涵丰富、应用范围广,很难给出准确定义。一般说来, SoC称为系统级芯片,也有称片上系统,意指它是一个产品,是一个有专用目标的集成电路,其中包含完整系统并有嵌入软件的全部内容。同时它又是一种技术,用以实现从确定系统功能开始,到软/硬件划分,并完成设计的整个过程。

信息化技术的发展,给人类的生存环境和生产环境都带来了重大变革。现在,物联网引领信息产业革命的浪潮,使地球变得更加智慧,使人类生活无限美好。以物联网为龙头,智能穿戴、航空航天等重大IT相关应用领域,都广泛涉及嵌入式操作系统的应用,特别是嵌入式操作系统Linux的应用。掌握并熟练应用嵌入式操作系统Linux,是计算机、自动控制和电子信息等相关专业人才培养的重要方向。

近期,国内外发生的最轰动的事是中兴被禁事件。现在中兴事件终于结束,但代价太大。

如果说以往的采购方便让中国发展本国芯片三心二意的话,那么从现在起,靠美国芯片活得很好的幻想应该破灭了。中国有组织科技攻关的能力,也有推动国产芯片逐渐替代外来芯片所需要的动员力。目前中国已经有设计和生产芯片的能力,但是芯片使用的生态还不完善。

为了更好地推进国产芯片的使用,扩大国产芯片的生态圈,就有了将龙芯1C开发过程编撰成书的必要了。

本教程不仅用于MIPS架构的龙芯1号芯片的嵌入式系统开发,还可用于基于Linux操作系统的嵌入式系统学习,具有广泛的适用性。其中,在内核原理、应用程序编写方面,与市场常见ARM架构芯片相比,其开发过程是通用的,包括虚拟机编译、程序下载、调试、应用开发、内核裁减。

从智龙开发板开箱上电,安装软件,编写代码、调试,到教程整理完工,经历了近一年半的时间。在撰写过程中,经历了各种困难。其中最大的困难在于恒心和毅力。因为本人不是企业的员工,没有将龙芯应用于产品的开发经历,没有现成的实例和成品的代码,更没有开发产品的压力。好在拥有最重要一点,对于嵌入式系统浓厚的兴趣,再加上对于操作系统内核有一定基础,对于全部的外设接口都能熟练操作,虽然以前用的是其他系统和芯片平台,但面对一个新的芯片、新的系统,还是花了心思去掌握。我想,正是经历了这无数多的问题,并且不放弃,孜孜不倦地寻找答案,才能积累到现在一眼就发现问题的能力。所以,通过本教程来学习操作系统,不仅是要进行相关验证性实验,更是要进行创造性开发,才能巩固提高。因为实现一个功能的测试,在代码正确的情况下,验证过程很快,可是设计开发者实现这个功能,可能写了很之久。所以不要羡慕资深开发者的火眼金睛和开发速度,那是用时间和精力换来的。

2017年4月25日,有幸参加了龙芯新品发布会,与龙芯生态圈建立了联系,感触很深。

在了解了关于国产芯片的发展历史和现状后,觉得有必要将这一开发记录整理并参与更大范围的交流,以推进国产芯片的推广应用。

本教程中的所有代码,部分来自于网络,部分自己撰写,但都全部调试并在智龙V3.0上运行通过。其中,部分应用程序与其他ARM架构的系统是通用的。教程由3部分组成:入门基础篇、中级编程篇、高级驱动篇。入门基础篇包含了从一个初学者过渡到系统程序员的基础内容;中级编程篇不仅包含了操作系统的基本操作:文件、进程、线程、管道、消息、内存、锁、信号、网络,还包含了基本的硬件接口操作:GPIO、按键、RTC、UART。高级驱动篇则包含了驱动程序的编写和高级硬件接口操作:字符设备、I2C总线设备、SPI总线设备、CAN总线设备、ADC设备、LCD设备。附录为本书的嵌入式开发经常用的资料和智龙开发板的电路原理图。

具体内容如下:第1章为本书所采用的智龙开发板的详细介绍、硬件结构,为读者设计电路和软件开发提供参考。

第2~6章介绍了建立开发环境,进行系统开发的准备工作。包括Linux操作系统基本操作、建立交叉编译环境、制作文件系统,编写简单的入门程序和驱动程序。

第7章为基础Linux应用编程。

第8章在第7章的基础上,编写实例程序操作智龙开发板的硬件接口、外设资源,将开发板实实在在地利用起来。

第9~10章为高级嵌入式系统开发打下基础,详细介绍了NFS文件系统搭建方法和使用Eclipse开发环境进行应用和驱动的编写。

第11~12章是基础的驱动程序编写,介绍了字符类、杂项类驱动程序的编写方法,并编写了测试程序进行验证。

第13~19章则基于智龙开发板进行了详细的驱动程序设计开发并编写详细的测试程序。

第20章介绍了龙芯1C所使用的PMON结构,并说明了PMON编译、烧写、启动方法。

还介绍了相关祼机编程的方法。

第21章介绍了在其他操作系统上搭建智龙开发板开发环境的方法。

第22章介绍了智龙开发板的综合应用例程,还介绍了基于龙芯1C的机器人控制器硬件结构、软件开发方法。

第23章详细列出了智龙开发板所使用内核的配置。

附录为本书实验过程中经常用到的资料及智龙开发板的电路原理图,方便读者进行二次开发。

整篇教程内容由浅入深,方便自行阅读,也可以跟着配套视频自行学习。

教程中所有的代码均开源在GITHUB和百度网盘上。

GITHUB网址为https://github.com/sundm75/Loongson-Smartloong-V2.0。

本书由石南负责规划,内容编排、定稿与修改。参与本书编写的相关工作人员还有徐钊、孟凡伟、王晓荣等。徐钊设计了智龙开发板的硬件,孟凡伟设计了智龙开发板的后期版本和龙芯机器人控制器,王晓荣对部分软件代码进行了测试。

更多简介内容

推荐帖子

隔离数字输入和数字隔离器的区别
本帖最后由 qwqwqw2088 于 2020-8-17 07:30 编辑 隔离数字输入和数字隔离器,如何分辨出两个隔离功能之间区别,,,   内部结构           数字隔离器充当提供电流隔离数字信号路径的基本(或通常是加强型)功能。来自德州仪器(TI)的隔离结构是电容性的,其绝缘屏障由我们互补的金属氧化物半导体(CMOS)工艺技术构建的两个高压电容器组成。高
qwqwqw2088 模拟与混合信号
【FreeRTOS打卡第六站开启】实验:串口后台打印,关门时间8月29日
活动总览:点此查看(含活动鼓励和活动学习总内容)   本站打卡开始和截止时间:8月27日-8月29日(3天) 打卡任务: 1、阅读cruelfox干货笔记第五篇:FreeRTOS学习笔记 (6)实验:串口后台打印 2、跟本帖回复思考题: 在FreeRTOS环境下,要设计一个UART接收指定数量字符的函数,可以用怎样的途径?请描述你的思路,并分析优缺点,以及还可能怎么改
nmg 单片机
基于BQ40z80的电量计电路设计原则
1.介绍         BQ40z80是完全集成的2-7节锂离子或锂聚合物电池管理芯片,采用已获专利的Impedance Track™技术,具备电流、电压和温度等全面的可编程保护功能。其硬件电路设计主要分为三个部分:主电流回路模块、电量计模块和保护模块。 2.主电流回路         主电流回路即指在电量计的控制下对电池进行充电、放电的电流回路。当充电时,该回路的电流从PACK+
qwqwqw2088 模拟与混合信号
MSP430G2553外部中断长按键与短按键的识别
使用GPIO口的中断功能,识别到LaunchPad中的短按键和长按键,短按键点亮红色led,长按键10ms左右就点亮另一只LED #include void main(void) {         WDTCTL = WDTPW + WDTHOLD;         P1DIR = BIT0+BIT6;         P1OUT = BIT3;
电子虐我 微控制器 MCU
单对以太网在楼宇自动化中的应用
以太网已成为楼宇自动化中控制金字塔顶端的主流通信协议。电气和电子工程师协会(IEEE)最近定义了一种新型以太网标准——IEEE 802.3.cg,用于10 Mb/s的操作以及通过一对平衡导体进行的功率传输。由于单对电缆现在可同时支持数据和电源,因此采用此标准可节省大量成本,并更易于在楼宇自动化应用中进行安装。 将以太网带到边缘器件需要付出诸多努力。当前
alan000345 微控制器 MCU
说说改装,去加了个HUD抬头显示,效果不错!
半个月以前......对,就是半个月以前,听群主车友鼓动,我就改装了hud抬头显示。本想当时就发帖的,懒得写就一直拖到现在,隔了半个月 久,但是不发吧,我心里又时不时想起那事儿,今天没什么事,发出来跟大家分享分享 之前加过一个XT5的车友群,群主有台XT5改装hud抬头显示挺好,我就问问他关于改装的事,他托人在后装找,结果疫情影响,一直没有到后装 市场找。 过段时间,群主车友问改装好没,才
tanL91 汽车电子

评论

登录/注册

意见反馈

求资源

回顶部

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版 版权声明

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved
$(function(){ var appid = $(".select li a").data("channel"); $(".select li a").click(function(){ var appid = $(this).data("channel"); $('.select dt').html($(this).html()); $('#channel').val(appid); }) })