一个嵌入式爱好者的自学体验

副标题:无

作   者:程昌南,方强编著

分类号:

ISBN:9787811244229

微信扫一扫,移动浏览光盘

简介

本书是以作者自学、应用嵌入式Linux时的笔记(包括实验、出现的问题、调试过程、经验总结等)为基础,再增加应用到的硬件平台而成的。全书以亲自制作实验平台硬件,亲自设计实验软件为线索,指导读者从零开始学习到最终掌握ARM和Linux应用的方方面面。 全书可以分成ARM硬件、ARM前后台系统应用和基于Linux系统的应用3个部分。ARM硬件部分包括整个硬件的原理分析、原理图、PCB板的绘制、元件焊接、硬件的检测与调试。ARM前后台系统应用部分包括启动代码、处理器内部外设、扩展外部设备及接口等的所有底层软件分析与实现,还有Bootloader、文件系统、GUI等的原理与实现。Linux系统的应用部分包括基于PC机的操作、应用编程和驱动、嵌入式Linux的开发环境创建、各种硬件的驱动实现、网络编程、图形用户界面设计等。 本书可作为有志于掌握ARM、Linux等嵌入式技术的高校学生、工程师等的参考书。更多>>

目录

第一篇 ARM硬件.
第1章 概述
1.1 嵌入式系统、单片机、ARM及Linux概述3
1.2 ARM处理器的选择3
1.3 S3C2410A简介和公版资源4
1.4 ARM开发工具及调试方法5
1.4.1 集成开发环境5
1.4.2 硬件仿真器6
1.4.3 前后台系统的调试方法7
1.4.4 嵌入式Linux的开发调试方法8
1.5 亲自制作实验平台在ARM学习中的意义和可行性9
第2章 实验平台硬件分析
2.1 平台概述及组成11
2.2 地址空间分配13
2.2.1 S3C2410A内存映射图13
2.2.2 AN2410平台地址空间分配14
2.3 常用元件概述14
2.3.1 电阻标称值14
2.3.2 肖特基二极管18
2.3.3 功率电感18
2.3.4 铁氧体磁珠19
2.3.5 自恢复保险丝PPTC19
2.3.6 有源蜂鸣器和无源蜂鸣器20
2.4 最小系统板AN2410SSB原理图分析20
2.4.1 CPU部分20
2.4.2 Boot ROM设置和时钟电路29
2.4.3 JTAG接口电路30
2.4.4 NAND Flash存储器30
2.4.5 SDRAM存储器33
2.4.6 调试串口34
2.4.7 10M以太网35
2.4.8 按键中断和LED电路38
2.4.9 ADC/PWM_DAC和蜂鸣器控制电路39
2.4.10 复位电路39
2.4.11 电源电路40
2.4.12 最小系统板与底板的接口42
2.5 底板AN2410MB原理图分析42
2.5.1 缓冲电路43
2.5.2 NOR Flash存储器43
2.5.3 USB Host/Device43
2.5.4 100M以太网46
2.5.5 pcmcia接口46
2.5.6 SD卡接口49
2.5.7 IIS音频电路50
2.5.8 IIC存储器51
2.5.9 LCD显示52
2.5.10 触摸屏55
2.5.11 RS485总线55
2.5.12 IrDA、红外遥控发射与学习电路57
2.5.13 CPLD扩展电路58
2.5.14 SC16C554串口扩展电路58
2.5.15 I/O口和红外遥控发射扩展电路60
2.5.16 电源提供电路62
2.6 下载板电路64
2.6.1 S3C2410A Flash烧写工具SJF241064
2.6.2 CPLD下载工具ByteBlaster II64
2.7 S3C2440A与S3C2410A的不同点及注意事项66
第3章 硬件制作
3.1 原理图和PCB绘制过程及心得67
3.2 PCB常用快捷键73
3.3 焊接心得74
第4章 系统核心部分硬件调试
4.1 调试步骤及概述76
4.2 电源/复位/时钟/NAND Flash设置77
4.3 Multi睮CE仿真器的使用78
4.3.1 仿真器与目标板硬件安装78
4.3.2 ADS1.2/Multi睮CE Server安装和配置78
4.4 处理器内核检测82
4.5 仿真测试85
4.6 SDRAM测试85
4.7 调试串口测试91
4.8 NAND Flash测试92
4.9 Flash的烧写92
4.9.1 SJF2410的安装92
4.9.2 NAND Flash烧写93
4.9.3 NOR Flash烧写93
第二篇 ARM前后台系统部分
第5章 启动代码分析
5.1 启动代码和Bootloader的区别99
5.2 汇编基础100
5.2.1 伪操作100
5.2.2 汇编指令及伪指令104
5.3 启动代码功能模块分解108
5.3.1 定义程序入口地址108
5.3.2 看门狗及中断的禁止112
5.3.3 测试LED的显示112
5.3.4 系统时钟初始化113
5.3.5 低功耗模式114
5.3.6 初始化内存控制器118
5.3.7 堆栈初始化120
5.3.8 中断向量表122
5.3.9 映像文件运行域的初始化129
5.3.10 进入C语言程序133
5.4 S3C2410A启动过程总结133
第6章 基于AN2410SSB的外设实验
6.1 LED跑马灯显示实验135
6.1.1 实验功能和目的135
6.1.2 工程的创建135
6.1.3 仿真调试及工程的设置138
6.1.4 脱机运行及设置141
6.2 按键输入及中断实验143
6.2.1 实验功能和目的143
6.2.2 GPIO口输入实验144
6.2.3 外部中断实验145
6.3 串口通信实验147
6.3.1 实验功能和目的147
6.3.2 系统时钟和波特率的计算147
6.3.3 功能函数介绍150
6.3.4 串口控制台功能测试154
6.4 A/D采集实验155
6.4.1 实验功能和目的155
6.4.2 测试程序155
6.5 PWM实验156
6.5.1 实验功能和目的156
6.5.2 PWM DAC实验157
6.6 10M以太网控制器CS8900A硬件调试158
6.6.1 CS8900A与处理器间接口通信的调试..158
6.6.2 10BASE睺物理连接的调试162
6.7 基于RealView MDK的实验163
6.7.1 基础知识概述163
6.7.2 基于RealView MDK的LED跑马灯实例167
6.7.3 基于RealView MDK的按键输入及中断实例175
6.7.4 基于RealView MDK的Flash烧写177
第7章 扩展底板AN2410MB的调试与实验
7.1 电源调试182
7.2 u241mon的使用与USB下载182
7.3 100M以太网硬件调试185
7.4 pcmcia硬件调试187
7.5 SD卡测试192
7.6 wav声音文件的播放195
7.6.1 wav文件及应用195
7.6.2 S3C2410A的数字音频接口IIS设置200
7.6.3 UDA1341TS初始化及控制203
7.6.4 功放电路的音量调节203
7.6.5 wav文件播放205
7.7 IIC EEPROM测试207
7.8 RS485网络实验207
7.9 LCD显示与触摸屏采集212
7.9.1 TFT型LCD的显示212
7.9.2 LCD背光控制215
7.9.3 触摸屏217
7.10 CPLD的扩展调试226
7.10.1 CPLD部分原理分析226
7.10.2 CPLD设计实现228
7.11 I/O口读/写实验232
7.12 16C554串口扩展实验233
7.13 红外遥控学习与发射实验238
第8章 基于前后台系统的应用
8.1 前后台系统概述244
8.2 NAND Flash的Bootloader设计245
8.2.1 官方的2410bs245
8.2.2 增强2410bs247
8.3 简易文件系统设计252
8.3.1 文件系统结构253
8.3.2 文件系统功能函数254
8.3.3 文件系统的测试263
8.4 简易图形用户界面的设计266
8.4.1 字符和汉字的显示266
8.4.2 基本图形和控件的绘制272
8.4.3 触摸屏事件处理285
第三篇 基于Linux系统的应用
第9章 基于PC机的Linux学习
9.1 Linux系统下的常用操作291
9.1.1 Red Hat Linux 9下的常用操作问答291
9.1.2 超级终端minicom的使用294
9.1.3 网络文件系统的使用294
9.2 Linux下的应用编程295
9.2.1 进程间隔定时器296
9.2.2 关于进程的体会299
9.3 Linux下的驱动程序设计302
9.3.1 模块编程实验302
9.3.2 简单的字符设备驱动实验303
第10 章 嵌入式Linux开发环境
10.1 开发环境概述307
10.2 PC宿主机环境的创建307
10.2.1 安装基本的软件开发工具307
10.2.2 安装 MIZI Linux SDK for S3C2410307
10.2.3 安装交叉编译工具308
10.3 嵌入式Linux系统的配置和编译309
10.3.1 Bootloader的配置和编译309
10.3.2 内核的配置和编译311
10.3.3 根文件系统的生成311
10.4 目标 板Linux系统的创建312
10.4.1 Bootloader的烧写312
10.4.2 Linux系统的下载312
10.4.3 Linux系统的更新314
10.4. 4 在Windows下更新目标板的Linux系统319
10.5 嵌入式Linux平台测试320
第11章 嵌入式Linux驱动开发
11.1 模块编程实验322
11.2 点亮目标板的LED323
11.2.1 LED驱动323
11.2.2 驱动的测试325
11.2.3 将驱动编译进内核327
11.2.4 测试程序的自动运行328
11.3 按键中断实验330
11.3.1 按键驱动程序330
11.3.2 按键中断测试程序334
11.4 定时器驱动及PWM输出336
11.4.1 驱动功能描述336
11.4.2 PWM驱动程序336
11.4.3 PWM测试程序340
11.5 PWM驱动蜂鸣器341
11.5.1 驱动程序341
11.5.2 驱动测试程序344
11.5.3 出现过的问题345
11.6 RS485网络驱动346
11.6.1 驱动程序346
11.6.2 驱动测试程序351
11.6.3 出现的问题353
11.7 CPLD扩展I/O驱动356
11.7.1 虚拟地址的分配356
11.7.2 驱动程序358
11.7.3 驱动测试程序360
11.7.4 出现过的问题361
11.8 CPLD扩展串口16C554驱动363
11.8.1 驱动说明363
11.8.2 驱动程序363
11.8.3 测试程序372
11.8.4 出现过的问题374
11.9 红外学习与发射376
11.9.1 驱动程序376
11.9.2 驱动测试程序383
11.9.3 出现的问题385
11.9.4 中断总结385
11.10 点亮目标板的LCD385
11.10.1 修改现有的s3c2410fb.c驱动程序385
11.10.2 LCD测试程序386
11.11 安装触摸板389
11.11.1 触摸板驱动程序的修改389
11.11.2 触摸板测试程序389
11.12 系统时间的实现390
11.13 100M以太网391
第12章 嵌入式Linux平台优化
12.1 桌面系统的启动393
12.2 yaffs可读/写文件系统394
12.2.1 yaffs文件系统的使用394
12.2.2 yaffs文件系统的移植396
12.2.3 更新yaffs为根文件系统406
12.3 NFS的使用408
12.3.1 宿主机NFS配置408
12.3.2 目标板NFS配置408
12.3.3 出现的问题409
12.4 嵌入式Web服务器409
12.4.1 boa移植409
12.4.2 Web应用开发412
12.5 WIFI无线网络414
12.5.1 Red Hat 9上使用ndiswrapper安装无线网卡驱动414
12.5.2 无线网络配置419
12.5.3 RedHat9上使用linux瞱lan瞡g安装无线网卡423
12.5.4 嵌入式平台上使用linux瞱lan瞡g安装无线网卡429
第13章 网络编程
13.1 常用函数437
13.2 服务器实例448
13.3 客户端测试454
13.4 利用I/O复用替代多进程的并发服务器456
13.5 无线网络测试459
第14 章 图形用户界面设计
14.1 Qt应用编程460
14.2 Qt/Embedded和Qtopia460
14.2.1 linuette平台460
14.2.2 QtE 2.3.7 /Qtopia 1.7.0463
14.2.3 QtE 2.3.12 / Qtopia PDA 2.2.0471
14.2.4 linuette的root、root_english、usr比较477
后记480
参考文献...482

已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

一个嵌入式爱好者的自学体验
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    亲爱的云图用户,
    光盘内的文件都可以直接点击浏览哦

    无需下载,在线查阅资料!

    loading icon