OK6410 RVDS 调试手册
第一章OK6410 简介..................................................................................................................... 6
第二章安装RVDS2.2 开发环境.................................................................................................. 9
2-1 安装RVDS2.2 到Windows XP 中.................................................................................. 9
第三章JLINK 驱动的安装..........................................................................................................16
第四章JLINK 的连接方法..........................................................................................................21
第五章RVDS2.2 介绍..................................................................................................................22
5-1 RVDS 开发工具介绍...................................................................................................... 22
5-2 集成开发环境(IDE)...................................................................................................22
第六章RVDS2.2 的使用方法以及调试方法、调试的原理................................................... 23
6-1 CodeWarrior for RVDS....................................................................................................23
6-1-1 打开CodeWarrior................................................................................................23
6-1-2 新建OK6410 裸机工程的方法.........................................................................24
6-1-3 为工程添加源码文件......................................................................................... 29
6-1-4 为工程进行必要的设置.....................................................................................31
6-1-5 工程编译方法......................................................................................................35
6-2 设置AXD1.3.1................................................................................................................ 37
6-2-1 打开AXD1.3.1....................................................................................................37
6-2-2 针对JLINK 设置AXD...................................................................................... 37
6-2-3 更新Jlink 固件....................................................................................................39
6-2-4 检测目标CPU.....................................................................................................40
6-3 仿真一下,小试牛刀......................................................................................................42
第七章Jlink...................................................................................................................................45
7-1 全速运行.......................................................................................................................... 45
7-2 断点调试.......................................................................................................................... 45
7-3 单步调试.......................................................................................................................... 46
第八章S3C6410 GPIO.................................................................................................................47
第九章利用GPIO 控制OK6410 的LED.................................................................................48
9-1 实验目的.......................................................................................................................... 48
9-2 实验设备.......................................................................................................................... 48
9-3 实验内容.......................................................................................................................... 48
9-4 实验原理.......................................................................................................................... 48
9-5 实验电路.......................................................................................................................... 49
9-6 实验程序.......................................................................................................................... 49
9-7 实验步骤.......................................................................................................................... 50
9-8 实验结果.......................................................................................................................... 51
第十章GPIO 控制OK6410 的蜂鸣器.......................................................................................52
10-1 实验目的...................................................................................................................... 52
10-2 实验设备...................................................................................................................... 52
10-3 实验内容...................................................................................................................... 52
10-4 实验原理...................................................................................................................... 52
10-5 实验电路...................................................................................................................... 53
10-6 实验程序...................................................................................................................... 53
10-7 实验步骤...................................................................................................................... 54
10-8 实验结果...................................................................................................................... 55
第十一章GPIO 检测OK6410 的按键操作...............................................................................56
11-1 实验目的...................................................................................................................... 56
11-2 实验设备...................................................................................................................... 56
11-3 实验内容...................................................................................................................... 56
11-4 实验原理...................................................................................................................... 56
11-5 实验电路...................................................................................................................... 57
11-6 实验程序...................................................................................................................... 58
11-7 实验步骤...................................................................................................................... 60
11-8 实验结果...................................................................................................................... 61
第十二章利用定时器制作精确延时来控制OK6410 的LED...............................................62
12-1 实验目的...................................................................................................................... 62
12-2 实验设备...................................................................................................................... 62
12-3 实验内容...................................................................................................................... 62
12-4 实验原理...................................................................................................................... 62
12-5 实验电路...................................................................................................................... 63
12-6 实验程序...................................................................................................................... 63
12-7 实验步骤...................................................................................................................... 66
12-8 实验结果...................................................................................................................... 66
第十三章利用定时器精确控制OK6410 的蜂鸣器频率........................................................67
13-1 实验目的...................................................................................................................... 67
13-2 实验设备...................................................................................................................... 67
13-3 实验内容...................................................................................................................... 67
13-4 实验原理...................................................................................................................... 67
13-5 实验电路...................................................................................................................... 68
13-6 实验程序...................................................................................................................... 68
13-7 实验步骤...................................................................................................................... 70
13-8 实验结果...................................................................................................................... 70
第十四章总结...............................................................................................................................71
Skype会话建立过程分析与话路检测
摘要:Skype是一个基于P2P应用的网络电话软件。它使用了专用的通信协议,对用户之间、用户和服务器之间的通信数据进行全程加密,并且其客户端采用随机端口传送数据。因此传统的基于端口和基于内容的检测方法不能有效地检测出Skype网络数据。对Skype的通信连接机制进行了深入分析。在此基础上,提出了一个对Skype会话连接进行检测的算法。该算法综合利用了Skype的端口使用情况、数据包大小以及数据包的有效载荷特性。
VA_X_Setup1850 vs小助手
vs小助手20011年六月最新版
win7好用,本人已测试
ctags-5.8.tar.gz
Vi大家都很熟悉,某些情况下它是我们在Linux下唯一可用的文本编辑器。其实我们平时所指的VI其实是VIM(ViImproved,VI增强版)。有人常常拿VIM和emacs比较,VIM尽管不象emacs那样有那么多的功能,但是比emacs更方便、好用。VIM简单易用,只要看看VIM自带的vitutor,大约只要20分钟就能掌握VIM的用法。对于Linux下的C/C++的程序员,使用VIM+Ctags的组合来写程序也许是最佳的选择。^_^
VI的使用方法这里就不罗嗦了,本文假设大家已花了20分钟学习过了vitutor。 ^_^
本节我们主要讲一下Ctags这个程序。尽管ctags也可以支持其它编辑器,但是它正式支持的只有VIM。并且VIM中已经默认安装了Ctags,它可以帮助程序员很容易地浏览源代码。
熟练的使用ctags仅需记住下面七条命令:(很简单吧,呵呵)
1. $ ctags –R * ($ 为Linux系统Shell提示符)
2. $ vi –t tag (请把tag替换为您欲查找的变量或函数名)
3. :ts (ts 助记字:tags list, “:”开头的命令为VI中命令行模式命令)
4. :tp (tp 助记字:tags preview)---此命令不常用,可以不用记
5. :tn (tn 助记字:tags next) ---此命令不常用,可以不用记
6. Ctrl + ]
7. Ctrl + T
下面我们逐条的解释上面的命令:
“$ ctags –R *”:“-R”表示递归创建,也就包括源代码根目录(当前目录)下的所有子目录。“*”表示所有文件。这条命令会在当前目录下产生一个“tags”文件,当用户在当前目录中运行vi时,会自动载入此tags文件。Tags文件中包括这些对象的列表:
用#define定义的宏
枚举型变量的值
函数的定义、原型和声明
名字空间(namespace)
类型定义(typedefs)
变量(包括定义和声明)
类(class)、结构(struct)、枚举类型(enum)和联合(union)
类、结构和联合中成员变量或函数
VIM用这个“tags”文件来定位上面这些做了标记的对象。
剩下的命令就是定位这些对象的方法:
“$ vi –t tag” :在运行vim的时候加上“-t”参数,例如:
[/usr/src]$ vim -t main
这个命令将打开定义“main”(变量或函数或其它)的文件,并把光标定位到这一行。如果这个变量或函数有多处定义,在VI命令行模式“:ts”命令就能列出一个列表供用户选择。 “:tp”为上一个tag标记文件,“:tn”为下一个tag标记文件。当然,若当前tags文件中用户所查找的变量或函数名只有一个,“:tp,:tn”命令不可用。 :(
最方便的方法是把光标移到变量名或函数名上,然后按下“Ctrl+]”,这样就能直接跳到这个变量或函数定义的源文件中,并把光标定位到这一行。用“Ctrl+t”可以退回原来的地方。即使用户使用了N次“Ctrl+]”查找了N个变量,按N次“Ctrl+t”也能回到最初打开的文件,它会按原路返回 。
Gstreamer+GTK开发播放器资料(linux)
资源:
GStreamer 插件开发指南.doc
GStreamer 常见问题解答.pdf
Gstreamer_manual.pdf
gstreamer_兰精灵_新浪博客.html
GStreamer+开发手册.doc
gstreamer工作原理分析.doc
gstreamer手册(简体中文版).pdf
gstreamer中mad插件的安装与应用.pdf
GStreamer中文开发手册.doc
Ubuntu搭建gstreamer开发环境.pdf
编译gstreamer相关.pdf
使用 GStreamer 进行多用途的多媒体处理.pdf
用GStreamer简化Linux多媒体开发.pdf
在 ubuntu 平台上 编译 gstreamer 0.10.pdf
GTK+DFB实验手册v0.9.doc
GTK+DFB实验手册v0.9.pdf
GTK2.pdf
大家一起用gtk编程.doc
----------------
喜欢就顶一下
EmEditer for win7 X64
EmEditer是什么大家应该都知道。
win7 X64下的,自己用的,自带破解。
C++ 文章读取存储统计查找
自己写的,版权所有哈~~~~有错误请指点
题目描述:
从硬盘上读取一文本文件(一篇英语文章),将这篇文章的内容使用适当的数据结构保存起来,能够方便的统计出各个单词出现的频率、和查询特定的单词。
在主函数中实现下列控制命令
openfile <输入文件名>
display 显示文件单词统计结果
find <查询的单词>
quit
对于执行失败的命令,给出相应的提示信息。
操作过程:
1) 打开文件
command:
openfile <输入文件名>
2) 显示文件统计结果
command:
display
输出结果:显示各个单词出现的频率并且降序排列:<单词> <次数> <频率>
3) 查询单词
cmmand:
find <查询的单词>
输出结果:
<段序号>-<句序号>-<单词序号>
<段序号>-<句序号>-<单词序号>
<段序号>-<句序号>-<单词序号>
共出现了<单词个数>次
4) 退出
command:
quit
5) 显示帮助
command:
help
输出结果:
openfile <输入文件名>
display 显示单词统计结果
find <查询的单词>
quit 退出
考察点:
1) 对象的继承和使用
2) 对象的构造和析构
3) 控制台的输入和输出
4) 程序的调试和运行
提示:
1) 将文章分为词、句、段等三级结构,定义三个对象保存词、句、段。单词的分割符是空格、分号、顿号(ascii码0x20,0x2D、0x3B),句子的分割符是句号、问号和感叹号(ascii码0x21、0x2E、0x2F),段落的分割符是回车(ascii码0x0D 0x0A),其它符号省略。
2) 对象保存可以使用Vector或动态数组
Registry Workshop(注册表编辑器)
Registry Workshop 是一个高级注册表编辑器。它可以被用来作为 Windows 自带注册表编辑器 RegEdit 和 RegEdt32 替代品。
除了注册表编辑器应有的基本功能外,Registry Workshop 提供了很多功能来提高管理注册表的效率。例如,剪切、复制和粘贴注册表项和值,撤销和重做编辑操作,快速搜索替换注册表内容,方便的收藏夹管理,等等。
无论您是一个需要编辑注册表来删除木马、病毒注册表项的计算机高级用户,还是一个需要安全高效的注册表工具管理公司计算机的系统管理员,或者是一个需要在开发中快速操作注册表的软件开发人员,Registry Workshop 都能满足您的需求。
source insight 配置文件
根据个人喜好配置的。不同的颜色高亮显示。查看代码灰常方便。
ps:要是达到我这个眼镜度数,你会发现更神奇的事情。
gstreamer 开发资料小集合
包含四个文档,可以应对初级开发的各项工作。
Gstreamer_manual.pdf
gstreamer工作原理分析.doc
GStreamer+插件开发指南.zip
GStreamer+开发手册.doc
资料来自网络,>o<
DawnLightPlayer 源码
DawnLightPlayer,一个新的基于FFMPEG的开源Player代码非常简单,由于刚动手写,所以代码也很少,很方便加入。
最新版本已经可以在Linux和WIN32平台运行
目前的TODO:
1. 完善X11,directX,openGL的输出
2. 没有GUI (gtk, wxwidget, qt, mfc都可以)
3. RMVB等其它格式的支持
------------------------------------------------
为了学习视频音频解码才下载的这个。可以去官网用svn下载,开源软件,很方便。如果作者能加上注释效果会更好,期待新的版本出现。
压缩包里已经包含了FFMPEG库,是2011年5月最新的版本,阅读代码用,并非编译代码时候用,head文件在具体编译时候还得手动设置。FFMPEG库里包含了一个视频播放的实现代码,供学习用。
部分不成文的注释是我自己写的,不足之处,请谅解。
Code Complete (代码大全)高清版
第一章 欢迎进入软件创建世界⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯1
第二章 利用隐喻对编程进行更深刻的理解⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯5
第三章 软件创建的先决条件⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯12
第四章 建立子程序步骤 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯31
第五章 高质量子程序特点 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯45
第六章 模块化设计 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯75
第七章 高级结构设计 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯92
第八章 生成数据 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯111
第九章 数据名称 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯121
第十章 变量 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯141
第十一章 基本数据类型 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯154
第十二章 复杂数据类型 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯176
第十三章 顺序程序语句 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯199
第十四章 条件语句 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯208
第十五章 循环语句 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯217
第十六章 少见的控制结构 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯234
第十七章 常见的控制问题 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯249
第十八章 布局和风格 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯272
第十九章 文档 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯313
第二十章 编程工具 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯338
第二十一章 项目大小如何影响创建 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯351
第二十二章 创建管理 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯359
第二十三章 软件质量概述 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯375
第二十四章 评审 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯384
第二十五章 单元测试 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯393
第二十六章 调试 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯414
第二十七章 系统集成 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯431
第二十八章 代码调整策略 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯446
第二十九章 代码调试技术 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯459
第三十章 软件优化 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯487
第三十一章 个人性格 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯501
第三十二章 软件开发方法的有关问题 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯511
第三十三章 从何处获取更多的信息 ⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯522
程序设计实践 (pdf)
目 录
译者序
前言
第1章 风格 1
1.1 名字 2
1.2 表达式和语句 4
1.3 一致性和习惯用法 8
1.4 函数宏 14
1.5 神秘的数 15
1.6 注释 18
1.7 为何对此费心 22
第2章 算法与数据结构 23
2.1 检索 23
2.2 排序 25
2.3 库 27
2.4 一个Java快速排序 29
2.5 大O记法 31
2.6 可增长数组 33
2.7 表 35
2.8 树 39
2.9 散列表 43
2.10 小结 46
第3章 设计与实现 48
3.1 马尔可夫链算法 48
3.2 数据结构的选择 50
3.3 在C中构造数据结构 51
3.4 生成输出 54
3.5 Java 56
3.6 C++ 59
3.7 Awk和Perl 61
3.8 性能 63
3.9 经验教训 64
第4章 界面 67
4.1 逗号分隔的值 67
4.2 一个原型库 69
4.3 为别人用的库 72
4.4 C++实现 79
4.5 界面原则 82
4.6 资源管理 84
4.7 终止、重试或失败 86
4.8 用户界面 90
第5章 排错 93
5.1 排错系统 94
5.2 好线索,简单错误 95
5.3 无线索,难办的错误 98
5.4 最后的手段 101
5.5 不可重现的错误 103
5.6 排错工具 105
5.7 其他人的程序错误 107
5.8 小结 108
第6章 测试 110
6.1 在编码过程中测试 110
6.2 系统化测试 114
6.3 测试自动化 118
6.4 测试台 120
6.5 应力测试 123
6.6 测试秘诀 125
6.7 谁来测试 126
6.8 测试马尔可夫程序 127
6.9 小结 129
第7章 性能 130
7.1 瓶颈 130
7.2 计时和轮廓 135
7.3 加速策略 138
7.4 代码调整 140
7.5 空间效率 144
7.6 估计 145
7.7 小结 147
第8章 可移植性 149
8.1 语言 149
8.2 头文件和库 154
8.3 程序组织 156
8.4 隔离 159
8.5 数据交换 160
8.6 字节序 161
8.7 可移植性和升级 164
8.8 国际化 165
8.9 小结 167
第9章 记法 169
9.1 数据格式 169
9.2 正则表达式 174
9.3 可编程工具 180
9.4 解释器、编译器和虚拟机 182
9.5 写程序的程序 186
9.6 用宏生成代码 189
9.7 运行中编译 190
后记 195
附录:规则汇编 197
索引 200
ffmpeg示例文档
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
大牛写的东东
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
一些经典C++源代码包下载
C++反射的例子.rar
C++程序设计与应用源码.rar
RSA算法.rar
vc++访问DAO数据库.rar
个人考勤软件开发实例配套代码.rar
二叉树排序.rar
人事管理系统.rar
仓库管理系统.rar
俄罗斯方块源代码.rar
在对话框中加入属性页》配套代码.rar
坦克大战.rar
基本功能设计.rar
学生成绩管理系统(VC++).rar
实现XP风格的自绘按钮.rar
打字小程序.rar
打字源程序.rar
显示系统时钟的小程序.rar
汉字识别.rar
漂亮菜单CHSMenu V3.8.rar
理财助手 2.0.rar
用VC++创建自定义向导程序》.rar
电子便笺 1.0.rar
简单计算器.rar
表格打印源码.rar
贪吃蛇源代码.rar
跑的裸男程序源代码.rar
进销存软件 beta.rar
通讯录管理程序源代码.rar
遍历文件夹并建成目录树.rar
酷界面一揽子解决方案.rar
ffmpeg-0.7-rc1 gz code
FFmpeg is a complete, cross-platform solution to record, convert and stream audio and video. It includes libavcodec - the leading audio/video codec library. See the documentation for a complete feature list and the Changelog for recent changes.
ffmpeg-0.7-rc1 code
FFmpeg is a complete, cross-platform solution to record, convert and stream audio and video. It includes libavcodec - the leading audio/video codec library. See the documentation for a complete feature list and the Changelog for recent changes.
freedos code download
FreeDOS is a free DOS-compatible operating system for IBM-PC compatible systems. FreeDOS is made of up many different, separate programs that act as packages to the overall FreeDOS Project. FreeDOS is distributed under the GNU GPL.
firstobject XML 编辑器应用程序
firstobject XML 编辑器应用程序
觉得好用才发上来的,如有雷同,纯属巧合。
源码格式化工具 强大
谁用谁知道,强大,真的很强大。资源整理自某著名论坛
信息安全工程师教程
全国计算机技术与软件专业技术资格(水平)考试(以下简称“计算机软件考试”)是由人力资源和社会保障部、工业与信息化部领导下的专业技术资格考试,纳入全国专业技术人员职业资格证书制度统一规划。为适应“十三五”期间计算机软件行业发展需要,满足社会多方对信息安全技术人员的迫切需求,根据人力资源和社会保障部办公厅《关于2016年度专业技术人员资格考试计划及有关问题的通知》(人社厅发[2015]182号),在2016年下半年计算机技术与软件专业技术资格(水平)考试中将开考“信息安全工程师(中级)”。“信息安全工程师(中级)”岗位的人才评价工作的实施,将成为科学评价我国信息安全专业技术人员的重要手段,也将为我国培养和选拔信息安全专业技术人才,发挥重要作用。 [1-2]
本书根据信息安全工程师考试大纲的要求进行编写,内容主要包括信息安全基本概念、基本技术和基本应用等方面,讲授方法注重理论联系实际,突出实用技术。全书共分8章,具体内容包括:信息安全基础、密码学基础与应用、网络安全基础、信息系统安全基础、应用系统安全基础、网络安全技术与产品、信息系统安全工程、应用安全工程。 [2]
----------------------终于找到一个无水印版本,清爽
深入Linux内核架构 中文版 Part1
100多M,只好分了两卷。请各位看官见谅
已经过测试,可以正确解压
Part2下载路径:
http://download.csdn.net/detail/wwdlk/8042869
===================================================
第1章 简介和概述
1.1 内核的任务
1.2 实现策略
1.3 内核的组成部分
1.3.1 进程、进程切换、调度
1.3.2 UNIX进程
1.3.3 地址空间与特权级别
1.3.4 页表
1.3.5 物理内存的分配
1.3.6 计时
1.3.7 系统调用
1.3.8 设备驱动程序、块设备和字符设备
1.3.9 网络
1.3.10 文件系统
1.3.11 模块和热插拔
1.3.12 缓存
1.3.13 链表处理
1.3.14 对象管理和引用计数
1.3.15 数据类型
1.3.16 本书的局限性
1.4 为什么内核是特别的
1.5 行文注记
1.6 小结
第2章 进程管理和调度
2.1 进程优先级
2.2 进程生命周期
2.3 进程表示
2.3.1 进程类型
2.3.2 命名空间
2.3.3 进程ID号
2.3.4 进程关系
2.4 进程管理相关的系统调用
2.4.1 进程复制
2.4.2 内核线程
2.4.3 启动新程序
2.4.4 退出进程
2.5 调度器的实现
2.5.1 概观
2.5.2 数据结构
2.5.3 处理优先级
2.5.4 核心调度器
2.6 完全公平调度类
2.6.1 数据结构
2.6.2 CFS操作
2.6.3 队列操作
2.6.4 选择下一个进程
2.6.5 处理周期性调度器
2.6.6 唤醒抢占
2.6.7 处理新进程
2.7 实时调度类
2.7.1 性质
2.7.2 数据结构
2.7.3 调度器操作
2.8 调度器增强
2.8.1 SMP调度
2.8.2 调度域和控制组
2.8.3 内核抢占和低延迟相关工作
2.9 小结
第3章 内存管理
3.1 概述
3.2 (N)UMA模型中的内存组织
3.2.1 概述
3.2.2 数据结构
3.3 页表
3.3.1 数据结构
3.3.2 页表项的创建和操作
3.4 初始化内存管理
3.4.1 建立数据结构
3.4.2 特定于体系结构的设置
3.4.3 启动过程期间的内存管理
3.5 物理内存的管理
3.5.1 伙伴系统的结构
3.5.2 避免碎片
3.5.3 初始化内存域和结点数据结构
3.5.4 分配器API
3.5.5 分配页
3.5.6 释放页
3.5.7 内核中不连续页的分配
3.5.8 内核映射
3.6 slab分配器
3.6.1 备选分配器
3.6.2 内核中的内存管理
3.6.3 slab分配的原理
3.6.4 实现
3.6.5 通用缓存
3.7 处理器高速缓存和TLB控制
3.8 小结
第4章 进程虚拟内存
4.1 简介
4.2 进程虚拟地址空间
4.2.1 进程地址空间的布局
4.2.2 建立布局
4.3 内存映射的原理
4.4 数据结构
4.4.1 树和链表
4.4.2 虚拟内存区域的表示
4.4.3 优先查找树
4.5 对区域的操作
4.5.1 将虚拟地址关联到区域
4.5.2 区域合并
4.5.3 插入区域
4.5.4 创建区域
4.6 地址空间
4.7 内存映射
4.7.1 创建映射
4.7.2 删除映射
4.7.3 非线性映射
4.8 反向映射
4.8.1 数据结构
4.8.2 建立逆向映射
4.8.3 使用逆向映射
4.9 堆的管理
4.10 缺页异常的处理
4.11 用户空间缺页异常的校正
4.11.1 按需分配/调页
4.11.2 匿名页
4.11.3 写时复制
4.11.4 获取非线性映射
4.12 内核缺页异常
4.13 在内核和用户空间之间复制数据
4.14 小结
第5章 锁与进程间通信
第6章 设备驱动程序
第7章 模块
第8章 虚拟文件系统
第9章 Ext文件系统族
第10章 无持久存储的文件系统
第11章 扩展属性和访问控制表
第12章 网络
第13章 系统调用
第14章 内核活动
第15章 时间管理
第16章 页缓存和块缓存
第17章 数据同步
第18章 页面回收和页交换
第19章 审计
附录A 体系结构相关知识
附录B 使用源代码
附录C 有关C语言的注记
附录D 系统启动
附录E ELF二进制格式
附录F 内核开发过程
参考文献
深入Linux内核架构 中文版 Part2
100多M,只好分了两卷。请各位看官见谅
已经过测试,可以正确解压
===================================================
第1章 简介和概述
1.1 内核的任务
1.2 实现策略
1.3 内核的组成部分
1.3.1 进程、进程切换、调度
1.3.2 UNIX进程
1.3.3 地址空间与特权级别
1.3.4 页表
1.3.5 物理内存的分配
1.3.6 计时
1.3.7 系统调用
1.3.8 设备驱动程序、块设备和字符设备
1.3.9 网络
1.3.10 文件系统
1.3.11 模块和热插拔
1.3.12 缓存
1.3.13 链表处理
1.3.14 对象管理和引用计数
1.3.15 数据类型
1.3.16 本书的局限性
1.4 为什么内核是特别的
1.5 行文注记
1.6 小结
第2章 进程管理和调度
2.1 进程优先级
2.2 进程生命周期
2.3 进程表示
2.3.1 进程类型
2.3.2 命名空间
2.3.3 进程ID号
2.3.4 进程关系
2.4 进程管理相关的系统调用
2.4.1 进程复制
2.4.2 内核线程
2.4.3 启动新程序
2.4.4 退出进程
2.5 调度器的实现
2.5.1 概观
2.5.2 数据结构
2.5.3 处理优先级
2.5.4 核心调度器
2.6 完全公平调度类
2.6.1 数据结构
2.6.2 CFS操作
2.6.3 队列操作
2.6.4 选择下一个进程
2.6.5 处理周期性调度器
2.6.6 唤醒抢占
2.6.7 处理新进程
2.7 实时调度类
2.7.1 性质
2.7.2 数据结构
2.7.3 调度器操作
2.8 调度器增强
2.8.1 SMP调度
2.8.2 调度域和控制组
2.8.3 内核抢占和低延迟相关工作
2.9 小结
第3章 内存管理
3.1 概述
3.2 (N)UMA模型中的内存组织
3.2.1 概述
3.2.2 数据结构
3.3 页表
3.3.1 数据结构
3.3.2 页表项的创建和操作
3.4 初始化内存管理
3.4.1 建立数据结构
3.4.2 特定于体系结构的设置
3.4.3 启动过程期间的内存管理
3.5 物理内存的管理
3.5.1 伙伴系统的结构
3.5.2 避免碎片
3.5.3 初始化内存域和结点数据结构
3.5.4 分配器API
3.5.5 分配页
3.5.6 释放页
3.5.7 内核中不连续页的分配
3.5.8 内核映射
3.6 slab分配器
3.6.1 备选分配器
3.6.2 内核中的内存管理
3.6.3 slab分配的原理
3.6.4 实现
3.6.5 通用缓存
3.7 处理器高速缓存和TLB控制
3.8 小结
第4章 进程虚拟内存
4.1 简介
4.2 进程虚拟地址空间
4.2.1 进程地址空间的布局
4.2.2 建立布局
4.3 内存映射的原理
4.4 数据结构
4.4.1 树和链表
4.4.2 虚拟内存区域的表示
4.4.3 优先查找树
4.5 对区域的操作
4.5.1 将虚拟地址关联到区域
4.5.2 区域合并
4.5.3 插入区域
4.5.4 创建区域
4.6 地址空间
4.7 内存映射
4.7.1 创建映射
4.7.2 删除映射
4.7.3 非线性映射
4.8 反向映射
4.8.1 数据结构
4.8.2 建立逆向映射
4.8.3 使用逆向映射
4.9 堆的管理
4.10 缺页异常的处理
4.11 用户空间缺页异常的校正
4.11.1 按需分配/调页
4.11.2 匿名页
4.11.3 写时复制
4.11.4 获取非线性映射
4.12 内核缺页异常
4.13 在内核和用户空间之间复制数据
4.14 小结
第5章 锁与进程间通信
第6章 设备驱动程序
第7章 模块
第8章 虚拟文件系统
第9章 Ext文件系统族
第10章 无持久存储的文件系统
第11章 扩展属性和访问控制表
第12章 网络
第13章 系统调用
第14章 内核活动
第15章 时间管理
第16章 页缓存和块缓存
第17章 数据同步
第18章 页面回收和页交换
第19章 审计
附录A 体系结构相关知识
附录B 使用源代码
附录C 有关C语言的注记
附录D 系统启动
附录E ELF二进制格式
附录F 内核开发过程
参考文献
Metasploit渗透测试指南.pdf
内容简介
本书介绍Metasploit——近年来最强大、最流行和最有发展前途的开源渗透测试平台软件,以及基于Metasploit进行网络渗透测试与安全漏洞研究分析的技术、流程和方法。
本书共有17章,覆盖了渗透测试的情报搜集、威胁建模、漏洞分析、渗透攻击和后渗透攻击各个环节,并包含了免杀技术、客户端渗透攻击、社会工程学、自动化渗透测试、无线网络攻击等高级技术专题,以及如何扩展Metasploit情报搜集、渗透攻击与后渗透攻击功能的实践方法,本书一步一个台阶地帮助初学者从零开始建立起作为渗透测试者的基本技能,也为职业的渗透测试工程师提供一本参考用书。本书获得了Metasploit开发团队的一致好评,Metasploit项目创始人HD Moore评价本书为:“现今最好的Metasploit框架软件参考指南”
-------------------------------------------------------------
《metasploit渗透测试指南》
第1章 渗透测试技术基础 1
1.1 ptes标准中的渗透测试阶段 2
1.1.1 前期交互阶段 2
1.1.2 情报搜集阶段 2
1.1.3 威胁建模阶段 2
1.1.4 漏洞分析阶段 3
1.1.5 渗透攻击阶段 3
1.1.6 后渗透攻击阶段 3
1.1.7 报告阶段 4
1.2 渗透测试类型 4
1.2.1 白盒测试 5
1.2.2 黑盒测试 5
1.3 漏洞扫描器 5
1.4 小结 6
第2章 metasploit基础 7
2.1 专业术语 7
2.1.1 渗透攻击(exploit) 8
2.1.2 攻击载荷(payload) 8
2.1.3 shellcode 8
.2.1.4 模块(module) 8
2.1.5 监听器(listener) 8
2.2 metasploit用户接口 8
2.2.1 msf终端 9
2.2.2 msf命令行 9
2.2.3 armitage 11
2.3 metasploit功能程序 12
2.3.1 msf攻击载荷生成器 12
2.3.2 msf编码器 13
2.3.3 nasm shell 13
2.4 metasploit express和metasploit pro 14
2.5 小结 14
第3章 情报搜集 15
3.1 被动信息搜集 16
3.1.1 whois查询 16
3.1.2 netcraft 17
3.1.3 nslookup 18
3.2 主动信息搜集 18
3.2.1 使用nmap进行端口扫描 18
3.2.2 在metasploit中使用数据库 20
3.2.3 使用metasploit进行端口扫描 25
3.3 针对性扫描 26
3.3.1 服务器消息块协议扫描 26
3.3.2 搜寻配置不当的microsoft sql server 27
3.3.3 ssh服务器扫描 28
3.3.4 ftp扫描 29
3.3.5 简单网管协议扫描 30
3.4 编写自己的扫描器 31
3.5 小结 33
第4章 漏洞扫描 35
4.1 基本的漏洞扫描 36
4.2 使用nexpose进行扫描 37
4.2.1 配置 37
4.2.2 将扫描报告导入到metasploit中 42
4.2.3 在msf控制台中运行nexpose 43
4.3 使用nessus进行扫描 44
4.3.1 配置nessus 44
4.3.2 创建nessus扫描策略 45
4.3.3 执行nessus扫描 47
4.3.4 nessus报告 47
4.3.5 将扫描结果导入metasploit框架中 48
4.3.6 在metasploit内部使用nessus进行扫描 49
4.4 专用漏洞扫描器 51
4.4.1 验证smb登录 51
4.4.2 扫描开放的vnc空口令 52
4.4.3 扫描开放的x11服务器 54
4.5 利用扫描结果进行自动化攻击 56
第5章 渗透攻击之旅 57
5.1 渗透攻击基础 58
5.1.1 msf] show exploits 58
5.1.2 msf] show auxiliary 58
5.1.3 msf] show options 58
5.1.4 msf] show payloads 60
5.1.5 msf] show targets 62
5.1.6 info 63
5.1.7 set和unset 63
5.1.8 setg和unsetg 64
5.1.9 save 64
5.2 你的第一次渗透攻击 64
5.3 攻击一台ubuntu主机 68
5.4 全端口攻击载荷:暴力猜解目标开放的端口 71
5.5 资源文件 72
5.6 小结 73
第6章 meterpreter 75
6.1 攻陷windows xp 虚拟机 76
6.1.1 使用nmap扫描端口 76
6.1.2 攻击ms sql 76
6.1.3 暴力破解ms sql服务器 78
6.1.4 xp_cmdshell 79
6.1.5 meterpreter基本命令 80
6.1.6 获取键盘记录 81
6.2 挖掘用户名和密码 82
6.2.1 提取密码哈希值 82
6.2.2 使用meterpreter命令获取密码哈希值 83
6.3 传递哈希值 84
6.4 权限提升 85
6.5 令牌假冒 87
6.6 使用ps 87
6.7 通过跳板攻击其他机器 89
6.8 使用meterpreter脚本 92
6.8.1 迁移进程 92
6.8.2 关闭杀毒软件 93
6.8.3 获取系统密码哈希值 93
6.8.4 查看目标机上的所有流量 93
6.8.5 攫取系统信息 93
6.8.6 控制持久化 94
6.9 向后渗透攻击模块转变 95
6.10 将命令行shell升级为meterpreter 95
6.11 通过附加的railgun组件操作windows api 97
6.12 小结 97
第7章 免杀技术 99
7.1 使用msf攻击载荷生成器创建可独立运行的二进制文件 100
7.2 躲避杀毒软件的检测 101
7.2.1 使用msf编码器 102
7.2.2 多重编码 103
7.3 自定义可执行文件模板 105
7.4 隐秘地启动一个攻击载荷 106
7.5 加壳软件 107
7.6 小结:关于免杀处理的最后忠告 108
第8章 客户端渗透攻击 109
8.1 基于浏览器的渗透攻击 110
8.1.1 基于浏览器的渗透攻击原理 111
8.1.2 空指令 112
8.2 使用immunity调试器来揭秘空指令机器码 112
8.3 对ie浏览器的极光漏洞进行渗透利用 116
8.4 文件格式漏洞渗透攻击 119
8.5 发送攻击负载 120
8.6 小结 121
第9章 metasploit辅助模块 123
9.1 使用辅助模块 126
9.2 辅助模块剖析 128
9.3 小结 133
第10章 社会工程学工具包 135
10.1 配置set工具包 136
10.2 针对性钓鱼攻击向量 137
10.3 web攻击向量 142
10.3.1 java applet 142
10.3.2 客户端web攻击 146
10.3.3 用户名和密码获取 148
10.3.4 标签页劫持攻击 150
10.3.5 中间人攻击 150
10.3.6 网页劫持 151
10.3.7 综合多重攻击方法 153
10.4 传染性媒体生成器 157
10.5 teensy usb hid攻击向量 157
10.6 set的其他特性 160
10.7 小结 161
第11章 fast-track 163
11.1 microsoft sql注入 164
11.1.1 sql注入——查询语句攻击 165
11.1.2 sql注入——post参数攻击 166
11.1.3 手工注入 167
11.1.4 ms sql破解 168
11.1.5 通过sql自动获得控制(sqlpwnage) 172
11.2 二进制到十六进制转换器 174
11.3 大规模客户端攻击 175
11.4 小结:对自动化渗透的一点看法 176
第12章 karmetasploit无线攻击套件 177
12.1 配置 178
12.2 开始攻击 179
12.3 获取凭证 181
12.4 得到shell 182
12.5 小结 184
第13章 编写你自己的模块 185
13.1 在ms sql上进行命令执行 186
13.2 探索一个已存在的metasploit模块 187
13.3 编写一个新的模块 189
13.3.1 powershell 189
13.3.2 运行shell渗透攻击 190
13.3.3 编写powershell_upload_exec函数 192
13.3.4 从十六进制转换回二进制程序 192
13.3.5 计数器 194
13.3.6 运行渗透攻击模块 195
13.4 小结:代码重用的能量 196
第14章 创建你自己的渗透攻击模块 197
14.1 fuzz测试的艺术 198
14.2 控制结构化异常处理链 201
14.3 绕过seh限制 204
14.4 获取返回地址 206
14.5 坏字符和远程代码执行 210
14.6 小结 213
第15章 将渗透代码移植到metasploit框架 215
15.1 汇编语言基础 216
15.1.1 eip和esp寄存器 216
15.1.2 jmp指令集 216
15.1.3 空指令和空指令滑行区 216
15.2 移植一个缓冲区溢出攻击代码 216
15.2.1 裁剪一个已有的渗透攻击代码 218
15.2.2 构造渗透攻击过程 219
15.2.3 测试我们的基础渗透代码 220
15.2.4 实现框架中的特性 221
15.2.5 增加随机化 222
15.2.6 消除空指令滑行区 223
15.2.7 去除伪造的shellcode 223
15.2.8 我们完整的模块代码 224
15.3 seh覆盖渗透代码 226
15.4 小结 233
第16章 meterpreter脚本编程 235
16.1 meterpreter脚本编程基础 235
16.2 meterpreter api 241
16.2.1 打印输出 241
16.2.2 基本api调用 242
16.2.3 meterpreter mixins 242
16.3 编写meterpreter脚本的规则 244
16.4 创建自己的meterpreter脚本 244
16.5 小结 250
第17章 一次模拟的渗透测试过程 251
17.1 前期交互 252
17.2 情报搜集 252
17.3 威胁建模 253
17.4 渗透攻击 255
17.5 msf终端中的渗透攻击过程 255
17.6 后渗透攻击 257
17.6.1 扫描metasploitable靶机 258
17.6.2 识别存有漏洞的服务 259
17.7 攻击apache tomcat 260
17.8 攻击一个偏门的服务 262
17.9 隐藏你的踪迹 264
17.10 小结 266
附录a 配置目标机器 267
附录b 命令参考列表 275
夏闻宇Verilog教程
第一章 数字信号处理计算程序算法和硬线逻辑的基本概念.doc
第七章 有限状态机和可综合风格的Verilog HDL.doc
第三章 Verilog HDL的基本语法.doc
第九章虚拟器件和虚拟接口模型以及它们在大型数字系统设计中的作用.doc
第二章 Verilog HDL设计方法概述.doc
第五章 基本运算逻辑和它们的Verilog HDL模型.doc
第八章 可综合的VerilogHDL设计实例简化的RISC CPU设计简介.doc
第六章 运算和数据流动控制逻辑.doc
第四章 不同抽象级别的Verilog HDL模型.doc
注:本文档只做技术交流用,请勿用于商业用途!
CPLD和FPGA与ASIC设计实践教程
《CPLD/FPGA与ASIC设计实践教程(第2版)》以大规模可编程逻辑器件为基础,详细介绍了PLD、CPLD/FPGA器件的原理和开发技术。第1~3章介绍EDA技术和可编程逻辑器件的原理,CPLD/FPGA器件的性能指标与选型、编程方法和下载电路,以及常用EDA设计软件的使用。第4~6章先详细介绍Verilog HDL语言,然后按照数字电路与逻辑设计课程的顺序,通过实例说明常用数字逻辑电路的实现方法,并讨论利用Verilog HDL设计可综合的数字电路的方法与技巧。第7、8章是设计实验部分,包括经典数字电路设计练习和综合性设计项目。第9章介绍嵌入式系统的发展趋势、SoPC设计技术及其应用等。
《CPLD/FPGA与ASIC设计实践教程(第2版)》可作为高等院校电子电气类、机电类等专业数字系统设计课程的教材,也可作为相关领域工程技术人员的参考书。
丛书序
第二版前言
第一版前言
第1章 绪论
1.1 概述
1.1.1 电子器件的发展
1.1.2 电子设计技术的发展
1.2 EDA技术的发展史
1.2.1 EDA概念
1.2.2 EDA技术的发展
1.3 CPLD/FPGA的发展史
1.3.1 数字集成电路的分类
1.3.2 可编程逻辑器件的发展史
1.4 常用EDA设计工具介绍
1.4.1 电子电路设计与仿真工具
1.4.2 PCB设计软件
1.4.3 IC设计软件
1.4.4 CPLD/FPGA应用设计工具
1.5 数字系统的设计方法
1.5.1 数字电路设计的基本方法
1.5.2 现代数字系统的设计方法
1.5.3 CPLD/FPGA应用设计流程
1.5.4 基于QuartusⅡ的设计流程
1.5.5 基于ISE的设计流程
思考与练习题
第2章 可编程逻辑器件基础
2.1 引言
2.2 PID器件及其分类
2.2.1 PLD器件
2.2.2 PLD的分类
2.3 可编程逻辑器件结构简介
2.3.1 标准门单元、电路示意和PAL等效图
2.3.2 PLD的逻辑表示方法
2.3.3 PLD的基本结构
2.4 CPLD/FPGA的结构和原理
2.4.1 EPLD和CPLD的基本结构
2.4.2 FPGA的基本结构
2.5 CPLD/FPGA器件的编程
2.5.1 Altera公司的EPLD/CPLD器件及其配置与编程
2.5.2 L,attice公司的ISP-CPLD器件及其编程
2.5.3 Xilinx公司的CPLD/FPGA器件及其编程
2.5.4.CPLD/FPGA通用下载电路设计
2.6 边界扫描测试技术
思考与练习题
第3章 EDA工具应用设计实践
3.1 QuartusⅡ简介
3.2 QuartusⅡ的使用方法
3.2.1 原理图输入法
3.2.2 HDL输入法
思考与练习题
第4章 数字系统与Verllog HDL描述
4.1 verilox HDL的一般结构
4.1.1 电子系统、电路和模块
4.1.2 verilog HDL模块的结构
4.1.3 Verilog HDL模块的描述方式
4.2 数字电路的Vedlog HDL模型与设计
4.2.1 交通灯监视电路设计
4.2.2 四位二进制数18421BCD码
4.2.3 函数发生器设计
4.2.4 四选一数据选择器
4.2.5 三进制计数器设计
4.2.6 移位寄存器设计
4.2.7 伪随机序列信号发生器设计
思考与练习题
第5章 Verilog HDL语言基础
5.1 为什么要用verilog HDL
5.1.1 概述
5.1.2 Verilog HDL和VHDL比较
5.1.3 Verilog HDL语言的主要功能
5.1.4 传统数字电路设计方法的回顾
5.2 Verilog HDL基础语法
5.2.1 Verilog HDL的词法
5.2.2 Verilog HDL的数据类型
5.2.3 verilog HDL运算符及表达式
5.2.4 系统任务与系统函数
5.2.5 Verilog HDL的仿真
5.3 Verilog HDL行为描述
5.3.1 行为描述的结构
5.3.2 语句块
5.3.3 控制语句
5.3.4 赋值语句
5.3.5 任务与函数结构
5.3.6 时序控制
5.3.7 用户定义的原语
思考与练习题
第6章 Verilog HDL设计进阶
6.1 verilog HDL编程风格
6.2 组合逻辑电路设计
6.2.1 基本的门电路
6.2.2 数据比较器
6.2.3 数据选择器
6.2.4 编码器和译码器设计
6.3 时序逻辑电路设计
6.3.1 触发器设计
6.3.2 数据锁存器设计
6.3.3 数据寄存器设计
6.3.4 移位寄存器设计
6.3.5 计数器设计
6.4 状态机设计
6.4.1 状态机的结构
6.4.2 利用Verilog HDL设计状态机
6.5 设计方法与技巧
6.5.1 逻辑综合
6.5.2 综合工具的性能
6.5.3 综合的一般原则
6.5.4 HDL编码指导
6.5.5 如何消除毛刺
6.5.6 阻塞赋值与非阻塞赋值的区别
6.5.7 代码对综合的影响
6.5.8 用always块实现较复杂的组合逻辑电路
6.5.9 Verilog HDL中函数的使用
6.5.10 Verilog HDL中任务的使用
思考与练习题
第7章 综合设计实例
7.1 篮球30秒可控计时器
7.2 汽车尾灯控制电路
7.3 交通控制灯逻辑电路
7.4 简易电子钟
7.5 环行计数器与扭环行计数器
7.6 洗衣机控制电路
7.7 八位可逆计数器和三角波发生器
7.8 简易数字频率计
思考与练习题
第8章 设计实验项目
8.1 可逆四位码变换器
8.2 可逆计数器
8.3 步进电机脉冲分配器电路
8.4 伪随机信号产生器
8.5 舞台彩灯控制电路
8.6 数字跑表电路
8.7 电子密码锁
8.8 数字式竞赛抢答器
8.9 脉冲按键电话显示器
8.10 出租车自动计费器设计
8.11 电话计费器
8.12 多功能数字钟设计
第9章 SoPC设计
9.1 SoPC概述
9.2 SoPC设计
9.2.1 FPGA的主要应用
9.2.2 SoPC设计技术
9.2.3 SoPC应用设计
9.3 SoPC设计实例
9.3.1 设计项目
9.3.2 设计任务
9.3.3 总体设计
9.3.4 概要设计
9.3.5 详细设计
9.3.6 下载测试
9.3.7 设计实现
9.3.8 部分程序源代码
附录AVerilogHDL关键字
附录BMY-FPGA-EP1C3开发板介绍
参考文献
raspberry pi 2.0原理图
树莓派2.0 原理图。
We are pleased to announce that schematics for the revision 2.0 Raspberry Pi Model B are now available here.
This post describes the key changes introduced in the new board revision. Note that although we have not yet exercised our option to add additional signals to the expansion connector, developers of expansion boards should continue to treat pins 4, 9, 14, 17, 20 and 25 as DNC (do not connect)
BCM2835 ARM Peripherals
1 Introduction 4
1.1 Overview 4
1.2 Address map 4
1.2.1 Diagrammatic overview 4
1.2.2 ARM virtual addresses (standard Linux kernel only) 6
1.2.3 ARM physical addresses 6
1.2.4 Bus addresses 6
1.3 Peripheral access precautions for correct memory ordering 7
2 Auxiliaries: UART1 & SPI1, SPI2 8
2.1 Overview 8
2.1.1 AUX registers 9
2.2 Mini UART 10
2.2.1 Mini UART implementation details. 11
2.2.2 Mini UART register details. 11
2.3 Universal SPI Master (2x) 20
2.3.1 SPI implementation details 20
2.3.2 Interrupts 21
2.3.3 Long bit streams 21
2.3.4 SPI register details. 22
3 BSC 28
3.1 Introduction 28
3.2 Register View 28
3.3 10 Bit Addressing 36
4 DMA Controller 38
4.1 Overview 38
4.2 DMA Controller Registers 39
4.2.1 DMA Channel Register Address Map 40
4.3 AXI Bursts 63
4.4 Error Handling 63
4.5 DMA LITE Engines 63
5 External Mass Media Controller 65
o Introduction 65
o Registers 66
6 General Purpose I/O (GPIO) 89
6.1 Register View 90
6.2 Alternative Function Assignments 102
6.3 General Purpose GPIO Clocks 105
7 Interrupts 109
7.1 Introduction 109
7.2 Interrupt pending. 110
7.3 Fast Interrupt (FIQ). 110
7.4 Interrupt priority. 110
7.5 Registers 112
8 PCM / I2S Audio 119
8.1 Block Diagram 120
8.2 Typical Timing 120
8.3 Operation 121
8.4 Software Operation 122
8.4.1 Operating in Polled mode 122
8.4.2 Operating in Interrupt mode 123
8.4.3 DMA 123
8.5 Error Handling. 123
8.6 PDM Input Mode Operation 124
8.7 GRAY Code Input Mode Operation 124
8.8 PCM Register Map 125
9 Pulse Width Modulator 138
9.1 Overview 138
9.2 Block Diagram 138
9.3 PWM Implementation 139
9.4 Modes of Operation 139
9.5 Quick Reference 140
9.6 Control and Status Registers 141
10 SPI 148
10.1 Introduction 148
10.2 SPI Master Mode 148
10.2.1 Standard mode 148
10.2.2 Bidirectional mode 149
10.3 LoSSI mode 150
10.3.1 Command write 150
10.3.2 Parameter write 150
10.3.3 Byte read commands 151
10.3.4 24bit read command 151
10.3.5 32bit read command 151
10.4 Block Diagram 152
10.5 SPI Register Map 152
10.6 Software Operation 158
10.6.1 Polled 158
10.6.2 Interrupt 158
10.6.3 DMA 158
10.6.4 Notes 159
11 SPI/BSC SLAVE 160
11.1 Introduction 160
11.2 Registers 160
12 System Timer 172
12.1 System Timer Registers 172
13 UART 175
13.1 Variations from the 16C650 UART 175
13.2 Primary UART Inputs and Outputs 176
13.3 UART Interrupts 176
13.4 Register View 177
14 Timer (ARM side) 196
14.1 Introduction 196
14.2 Timer Registers: 196
15 USB 200
15.1 Configuration 200
15.2 Extra / Adapted registers. 202
STM32自定义USB设备
包括以下文件:
STM32_USB-FS-Device_Lib_V3.0.1
固件代码
驱动代码
上位机代码
感谢原作者圈圈,教会我这么多东西。
STM32 USB-FS-Device development kit.pdf
Introduction
The STM32USB-FS-Device development kit is a complete firmware and software package
including examples and demos for all USB transfer types (control, interrupt, bulk and
isochronous). It supports all STM32 microcontroller families.
The aim of the STM32 USB-FS-Device development kit is to use the STM32 USB-FSDevice
library with at least one firmware demo per USB transfer type.
This document presents a description of all the components of the STM32 USB-FS-Device
development kit, including:
■ STM32 USB-FS-Device library: All processes related to default endpoint and standard
requests
■ Device firmware upgrade (DFU) demo: Control transfer
■ Joystick mouse demo: Interrupt transfer
■ Custom HID demo: Interrupt transfer
■ Mass storage demo: Bulk transfer
■ Virtual COM port: Interrupt and bulk transfer
■ USB voice speaker demo (USB speaker): Isochronous transfer
■ USB audio streaming demo: Isochronous transfer
精通Linux驱动程序开发(英文版)(高清文字版)
目前最全面深入的Linux设备驱动程序著作,世界级Linux技术大师力作,大量技术内幕首次公开。
“这是我读过的最全面的Linux设备驱动程序著作。”
——Alan Cox,Linux内核维护者
“这本书涵盖了各种Linux设备驱动程序,全面而翔实。”
——Theodore Ts’o,Linux基金会CTO,北美第一位内核开发者
时至今日,Linux操作系统以其跨平台、开源、支持众多应用软件和网络协议等优点,已经成为应用最广泛的开发平台。
在这部贴近实战、实例丰富的著作中,世界上经验最丰富的Linux驱动程序开发者之一系统全面地阐述了如何为各种设备开发可靠的驱动程序。在回顾了驱动开发的各种基础知识和最新的Linux 2.6内核相关特性之后,作者不仅讲述了其他设备驱动程序图书中都会涉及的较容易的内容,更迎难而上,深入探讨了驱动开发包括嵌入式Linux开发中必须面对的难点,比如PCMCIA、USB、I2C、视频、音频、闪存、无线通信等,揭示了许多内幕技术的秘密。对每种驱动程序,书中在剖析关键技术之外,还带你查看相关的内核源代码,提供完整的实例。
本书适合中高级Linux 开发人员阅读。
---------------------------------------------
以上评论来自当当书城。
本pdf为英文原版,即高清文字版。
个人只有崇拜,没有其他语言可以表达。
金牛开发板 F107CV 例程
本压缩包是金牛开发板自带的例程,只供交流学习使用,请勿用作商业用途。如果产生版权问题,请自行解决。
针对open F107VC系列的板子,可以直接使用。
目录:
├─HY-GoldBull V3.0
│ ├─ADC+USART
│ │ ├─ADC
│ │ └─ADC+DMA
│ ├─DualCAN
│ │ ├─CAN(LoopBack)
│ │ └─CAN(Normal)
│ ├─EXTI+USART
│ ├─FATFS V0.08A-SD Card
│ ├─Flash
│ ├─FreeRTOSV6.1.0
│ ├─GLCD
│ ├─GLCD (show chinese)
│ ├─GPIO
│ ├─I2C+USART
│ ├─ID
│ ├─IWDG
│ ├─PWM(BackLight)
│ ├─PWR
│ ├─RTC+USART
│ ├─SPI Flash (SST25VF016B)
│ ├─STM32 USB Bootloader
│ ├─SysTick
│ ├─TIM
│ ├─TouchPanel
│ ├─uCOSII2.91
│ ├─uCOSII2.91+lwip-1.3.2
│ ├─uCOSII2.91+UCGUI3.90A(Support USB Mouse)
│ ├─USART1
│ ├─USART2
│ ├─USB-JoyStickMouse
│ ├─USB-Mass_Storage-MCU Flash
│ ├─USB-Mass_Storage-SD Card
│ ├─USB-Mass_Storage-SPI Flash(SST25VF016B)
│ ├─USB_Host_HID_KBrd_Mouse
│ ├─USB_Host_MSC(efsl)
│ ├─USB_Host_MSC(FATFS)
└─STM32串口驱动(环形队列+内存动态分配+DMA+拼音检索)
Source Insight 3.5.0070 for win7 X64
版本 3.50.0070 - 2012/7/20发布。
压缩包里带注册码.不要告诉我你们找不到注册码。
本人在64位Win7下测试,流畅好用。其他系统未做测试。欢迎大家补充。
很多人可能会说,英文版的不好用,其实你要知道,英文字符占1个字节,而中文字符占两个,汉化技术不好的软件都存在容易奔溃的问题。用习惯了,英文版也很cool。
本资源只做交流学习使用,请勿作为商业用途。如果您不差钱,请支持正版。
以下为Source Insight官方的简介。
Source Insight™ is a project-oriented program editor and code browser, with built-in analysis for C/C++, C#, and Java programs. Source Insight parses your source code and maintains its own database of symbolic information dynamically while you work, and presents useful contextual information to you automatically.
Not only is Source Insight a great program editor, but it also can display reference trees, class inheritance diagrams, and call trees. Source Insight features the quickest navigation of source code and source information of any programming editor.
Source Insight features quick and innovative access to source code and source information. Unlike many other editor products, Source Insight parses your source code and gives you useful information and analysis right away, while you edit.
Always Up-To-Date Information
Call Graphs and Class Tree Diagrams
Context Sensitive Dynamic Type Resolution
Symbol Windows For Each File
Automatic Display of Declarations in the Context Window
Syntax Formatting - Like Syntax Coloring but More
Context-Sensitive Smart Rename
Finds References Quickly
Mixed Language Editing
Keyword Searches Like an Internet Search on Your Code Base
Symbolic Auto-Completion
Quick Access to All Symbols and Files
Project Orientation
Team Programming Support
Hyper Source Links to Link Compiler Errors
Fast Project-Wide Search and Replace
Project Window with Multiple Views
Integrates with External Compilers and Tools
Clip Window for Storing Clipboards and Boiler Plate Code
Two-Stage Line Revision Marks and Selective Line Restoration
Extensible Document Types and Languages
Crash Recovery Offers Full-Time Protection
Persistent Workspaces
Customizable Menus and Keyboard
Windows 7/Vista/XP/2000 Support
Special Support for Remote Te
Compuware.DriverStudio.v3.2 第二卷 共两卷
本版本为3.2,一共分了两卷。这是第二卷。第二卷免费~~
本程序经本人测试非常好用。具体搭建环境请参考互联网。
压缩包里已经包涵了key
DriverStudio工具包介绍 DriverStudio 是一套用来简化微软Windows 平台下设备驱动程序的开发,调试和测试的工具包。
DriverStudio 当前的版本包括下列工具模块:
DriverAgent
DriverAgent 为Win32 应用程序提供直接访问硬件的功能。即使你没有任何设备驱动程序开发的经验或经历,你也能编写出DriverAgent应用程序来直接访问硬件设备。DriverAgent 应用程序可以运行在 Windows 98, Windows 95, Windows NT 和 Windows 2000平台上。(当前版本不支持Windows XP平台。)
VToolsD
VToolsD 是一个用来开发针对Win9X (Windows 95 和 Windows 98)操作系统下设备驱动程序(VxD)的工具。VToolsD 中包括生成驱动程序源代码的工具,run-time 和 interface 库,以及一些驱动程序样本,可以用来作为各种类型的设备驱动程序的基础部分。
DriverWorks
DriverWorks对于Windows NT下和 Windows 98 与 Windows 2000共同支持的Win32驱动模型(WDM)设备驱动程序的开发提供完全的支持。DriverWorks中包含一个非常完善的源代码生成工具(DriverWizard) 以及相应的类库和驱动程序样本,它提供了在C++下进行设备驱动程序开发的支持。
DriverNetworks
DriverNetworks 是针对Windows网络驱动开发人员的一个模块。在它的核心部分,DriverNetworks 是一个针对NDIS drivers 和 TDI clients (DriverSockets)的 C++ 的类库。DriverNetworks 中也有Quick Miniport Wizard 用来直接开始一个NDIS Miniport 或 Intermediate Driver 工程。它可以让你快速的生成所有采用DriverNetworks C++ 类库编写的NDIS驱动程序的编译,安装和调试所需要的文件
SoftICE
SoftICE 是一个功能极其强大的内核模式调试器,它支持在配置一台单独的计算机或两台计算机下进行设备驱动程序的调试。
BoundsChecker Driver Edition
BoundsChecker 驱动程序版采用了NuMega针对应用程序开发的一种创新的错误检测技术。BoundsChecker 驱动程序版中提供了参数确认和系统实施可以用来监视和跟踪在不同的设备驱动程序与其它的操作系统的组件之间的所有的交互作用。配置向导提供了对于BoundsChecker 采集到的各种类型的大量信息的精确的控制。
BoundsChecker 驱动程序版当前支持Windows NT, Windows 2000, Windows Millennium Edition和 Windows 98。(当前版本不支持Windows XP)
DriverWorkbench
DriverWorkbench 可以使你进一步了解系统崩溃时的dump 文件和当时的事件。由于与BoundsChecker Driver Edition集成在一起, 在DriverWorkbench 中可以看到在系统崩溃前或其登录的时候由BoundsChecker 采集到的数据。这种独特的查看系统的方式提供了空前的能力,使得可以通过查看在系统崩溃之前系统实际活动的踪迹来发现问题之所在。
DriverWorkbench 中也包含了 TrueTime Driver Edition. TrueTime Driver Edition 是一个性能分析工具,可让Windows NT 的设备驱动开发人员发现并修正驱动程序的性能瓶颈。TrueTime Driver Edition 是用来满足对于设备驱动程序和内核模式下代码开发人员的需求。一些额外的功能将出现在TrueTime Driver Edition 的下一个版本中。
DriverWorkbench 当前支持 Windows NT 和 Windows 9x. (当前版本不支持Windows XP)
FieldAgent
FieldAgent 可让你对运行在客户的计算机上的驱动程序进行处理。由FieldAgent收集到的信息可用于追捕到那些可能只发生在特定的配置环境下
Compuware.DriverStudio.v3.2 第一卷 共两卷
本版本为3.2,一共分了两卷。这是第一卷,稍微收点资源分。第二卷免费~~
本程序经本人测试非常好用。具体搭建环境请参考互联网。
压缩包里已经包涵了key
DriverStudio工具包介绍 DriverStudio 是一套用来简化微软Windows 平台下设备驱动程序的开发,调试和测试的工具包。
DriverStudio 当前的版本包括下列工具模块:
DriverAgent
DriverAgent 为Win32 应用程序提供直接访问硬件的功能。即使你没有任何设备驱动程序开发的经验或经历,你也能编写出DriverAgent应用程序来直接访问硬件设备。DriverAgent 应用程序可以运行在 Windows 98, Windows 95, Windows NT 和 Windows 2000平台上。(当前版本不支持Windows XP平台。)
VToolsD
VToolsD 是一个用来开发针对Win9X (Windows 95 和 Windows 98)操作系统下设备驱动程序(VxD)的工具。VToolsD 中包括生成驱动程序源代码的工具,run-time 和 interface 库,以及一些驱动程序样本,可以用来作为各种类型的设备驱动程序的基础部分。
DriverWorks
DriverWorks对于Windows NT下和 Windows 98 与 Windows 2000共同支持的Win32驱动模型(WDM)设备驱动程序的开发提供完全的支持。DriverWorks中包含一个非常完善的源代码生成工具(DriverWizard) 以及相应的类库和驱动程序样本,它提供了在C++下进行设备驱动程序开发的支持。
DriverNetworks
DriverNetworks 是针对Windows网络驱动开发人员的一个模块。在它的核心部分,DriverNetworks 是一个针对NDIS drivers 和 TDI clients (DriverSockets)的 C++ 的类库。DriverNetworks 中也有Quick Miniport Wizard 用来直接开始一个NDIS Miniport 或 Intermediate Driver 工程。它可以让你快速的生成所有采用DriverNetworks C++ 类库编写的NDIS驱动程序的编译,安装和调试所需要的文件
SoftICE
SoftICE 是一个功能极其强大的内核模式调试器,它支持在配置一台单独的计算机或两台计算机下进行设备驱动程序的调试。
BoundsChecker Driver Edition
BoundsChecker 驱动程序版采用了NuMega针对应用程序开发的一种创新的错误检测技术。BoundsChecker 驱动程序版中提供了参数确认和系统实施可以用来监视和跟踪在不同的设备驱动程序与其它的操作系统的组件之间的所有的交互作用。配置向导提供了对于BoundsChecker 采集到的各种类型的大量信息的精确的控制。
BoundsChecker 驱动程序版当前支持Windows NT, Windows 2000, Windows Millennium Edition和 Windows 98。(当前版本不支持Windows XP)
DriverWorkbench
DriverWorkbench 可以使你进一步了解系统崩溃时的dump 文件和当时的事件。由于与BoundsChecker Driver Edition集成在一起, 在DriverWorkbench 中可以看到在系统崩溃前或其登录的时候由BoundsChecker 采集到的数据。这种独特的查看系统的方式提供了空前的能力,使得可以通过查看在系统崩溃之前系统实际活动的踪迹来发现问题之所在。
DriverWorkbench 中也包含了 TrueTime Driver Edition. TrueTime Driver Edition 是一个性能分析工具,可让Windows NT 的设备驱动开发人员发现并修正驱动程序的性能瓶颈。TrueTime Driver Edition 是用来满足对于设备驱动程序和内核模式下代码开发人员的需求。一些额外的功能将出现在TrueTime Driver Edition 的下一个版本中。
DriverWorkbench 当前支持 Windows NT 和 Windows 9x. (当前版本不支持Windows XP)
FieldAgent
FieldAgent 可让你对运行在客户的计算机上的驱动程序进行处理。由FieldAgent收集到的信息可用于追捕到那些可能只发生在特定的配置环境下问题的原因。
Field
Windows WDM驱动开发
第一章概述...........................................................................................................................6
1.1 本教程的规划:...............................................................................................................6
第二章WDM驱动程序的运行.................................................................................................7
2.1 WDM驱动程序的基本调用流程:.....................................................................................7
2.1.1驱动程序何时从何处开始执行?........................................................................7
2.1.1.1第一次安装好驱动程序:................................................................7
2.1.1.2驱动程序正常运行:........................................................................7
2.1.2 DriverEntry()大约做些什么?.........................................................................7
2.1.2.1 IRP主功能码(Major Function Code).......................................9
2.1.2.2 IRP_MJ_PNP次功能码(Minor Function Code).......................10
2.1.2.3 IRP_MJ_POWER次功能码(Minor Function Code)...................10
2.1.3驱动程序与应用程序相关的功能码如何调用?..............................................10
2.1.3.1 DriverEntry()中您必须要注册回调函数...................................10
2.1.3.2 在您的应用程序中正确调用CreateFile().............................11
2.1.3.3 应用层调用驱动的消息参照:.....................................................11
2.1.3.4 IoControl调用:...........................................................................11
第三章开始编写WDM驱动程序...........................................................................................13
3.1 得到一个Demo工程:.....................................................................................................13
3.2 在VC下配置DDK的开发环境...........................................................................................15
3.2.1 我的目录.............................................................................................15
3.2.1.1我们应该在系统环境变量里设置..................................................15
3.2.2安装VC6................................................................................................17
3.2.3 打开wdm1\sys\Wdm1.dsp工作区文件...............................................18
3.2.4 修改H:\driverDev\MakeDrvr.bat文件...........................................18
3.2.5 设置VC的环境.....................................................................................19
3.2.5.1前面的内容编译时出了错误(配置'MakeDrvr')......................19
3.2.5.1.1 在project -> settings中设置成如下:.......................19
3.2.5.1.2 还可以在Tools-> Options-〉directories中选择“Executable files”并添加MakeDrvr.bat的目录即可.................20
3.2.5.1.3 再按F7编译 有编译提示..................................................20
3.2.5.1.4 搞清楚 MakeDrvr.BAT文件的功能...................................21
3.2.5.2前面的内容编译时出了错误,让我们看看是什么原因..............22
第四章 安装DebugPrintMonitor驱动程序.................................................................................24
4.1 用控制面板安装DebugPrintMonitor...........................................................................24
4.2 检查DebugPrint driver的安装情况...........................................................................29
第五章 安装wdm1驱动程序..........................................................................................................30
5.1 INF 文件.........................................................................................................................30
5.1 全新安装驱动.................................................................................................................30
5.1.1 安装驱动WDM1.SYS.............................................................................................30
5.2 测试DebugPrintMonitor...............................................................................................30
第六章 执行应用程序...................................................................................................................32
6.1 打开Wdm1Test.dsp.........................................................................................................32
6.2 编译Wdm1Test 工程.......................................................................................................32
6.3 修改Wdm1Test .CPP文件的setupapi.h的路径...........................................................33
6.3 重新指定Wdm1Test 工程的setupapi.lib的路径.......................................................35
6.4 类型DWORD_PTR和ULONG_PTR没定义的错误.................................................................36
6.4 调试WdmTest工程...........................................................................................................37
6.4.1 设置断点.............................................................................................................37
6.4.2 单步执行.............................................................................................................38
6.4.3 SYS目录下驱动程序代码对照:.......................................................................40
6.4.4 EXE中继续往下执行ReadFile/WriteFile.......................................................40
6.4.4.1 执行ReadFile的情况.............................................................................40
6.4.4.2 执行WriteFile的情况...........................................................................42
6.4.5其他的请自己执行..............................................................................................43
第七章 启用wdm1驱动程序..........................................................................................................44
第八章 停用wdm1驱动程序..........................................................................................................45
8.1 点击“我的电脑” –〉“属性” –〉“硬件”.........................................................45
8.2 点击 “设备管理器”并展开其他设备.......................................................................45
第九章还有更好的DebugView.exe.............................................................................................47
9.1得到DebugView.exe.........................................................................................................47
9.2 原理..................................................................................................................................48
9.2.1 DBG.......................................................................................................................48
9.2.2 DbgPrint().........................................................................................................48
9.2.3 如何使用DbgPrint()........................................................................................48
9.2.4 修改wdm1工程的例子........................................................................................48
9.3 如何使用DebugView.......................................................................................................48
Cortex-M3 技术参考手册 中文
目录
前言...................................................................................................................................................1
关于本手册...............................................................................................................................1
第1 章概述.....................................................................................................................................3
1.1 关于处理器........................................................................................................................3
1.2 处理器的组件....................................................................................................................4
1.2.1 Cortex-M3 的层次和实现的选项...........................................................................5
1.2.2 处理器内核.............................................................................................................6
1.2.3 NVIC ........................................................................................................................7
1.2.4 总线矩阵.................................................................................................................7
1.2.5 FPB...........................................................................................................................8
1.2.6 DWT.........................................................................................................................8
1.2.7 ITM...........................................................................................................................8
1.2.8 MPU .........................................................................................................................8
1.2.9 ETM .........................................................................................................................8
1.2.10 TPIU .......................................................................................................................8
1.2.11 SW/JTAG-DP.........................................................................................................9
1.3 可配置的选项....................................................................................................................9
1.3.1 中断.........................................................................................................................9
1.3.2 MPU .........................................................................................................................9
1.3.3 ETM .........................................................................................................................9
1.4 指令集汇总........................................................................................................................9
第2 章编程模型(programmer's model) ...............................................................................17
2.1 关于编程模型..................................................................................................................17
2.1.1 工作模式...............................................................................................................17
2.1.2 工作状态...............................................................................................................17
2.2 特权访问和用户访问......................................................................................................17
2.2.1 主堆栈和进程堆栈...............................................................................................18
2.3 寄存器..............................................................................................................................18
2.3.1 通用寄存器...........................................................................................................18
2.3.2 特殊用途的程序状态寄存器(xPSR) ..............................................................19
2.4 数据类型..........................................................................................................................22
2.5 存储器格式......................................................................................................................22
2.6 指令集..............................................................................................................................24
第3 章系统控制...........................................................................................................................26
3.1 处理器寄存器汇总..........................................................................................................26
3.1.1 嵌套向量中断控制器的寄存器...........................................................................26
3.1.2 内核调试寄存器...................................................................................................28
3.1.3 系统调试寄存器...................................................................................................28
3.1.4 调试接口的端口寄存器.......................................................................................31
3.1.5 存储器保护单元的寄存器...................................................................................32
3.1.6 跟踪端口接口单元的寄存器...............................................................................32
3.1.7 嵌入式跟踪宏单元的寄存器...............................................................................33
目录
第 4 章存储器映射.......................................................................................................................35
4.1 关于存储器映射..............................................................................................................35
4.2 Bit-banding........................................................................................................................37
4.2.1 直接访问别名区...................................................................................................38
4.2.2 直接访问bit-band 区............................................................................................38
4.3 ROM 存储器表.................................................................................................................39
第5 章异常...................................................................................................................................40
5.1 关于异常模型..................................................................................................................40
5.2 异常类型..........................................................................................................................41
5.3 异常优先级......................................................................................................................42
5.3.1 优先级...................................................................................................................43
5.3.2 优先级分组...........................................................................................................43
5.4 特权和堆栈......................................................................................................................44
5.4.1 堆栈.......................................................................................................................44
5.4.2 特权.......................................................................................................................44
5.5 占先..................................................................................................................................45
5.5.1 堆栈.......................................................................................................................45
5.6 末尾连锁(Tail-chaining).............................................................................................47
5.7 迟来..................................................................................................................................48
5.8 退出..................................................................................................................................49
5.8.1 异常退出...............................................................................................................49
5.8.2 处理器从ISR 中返回...........................................................................................50
5.9 复位..................................................................................................................................51
5.9.1 向量表和复位.......................................................................................................51
5.9.2 预期的启动顺序(boot up sequence) ...............................................................52
5.10 异常的控制权转移........................................................................................................54
5.11 设置多个堆栈................................................................................................................54
5.12 中止(abort)模型.............................................................................................................56
5.12.1 硬故障.................................................................................................................56
5.12.2 局部故障和升级.................................................................................................56
5.12.3 故障状态寄存器和故障地址寄存器.................................................................58
5.13 激活等级(activation level).............................................................................................59
5.14 流程图............................................................................................................................60
5.14.1 中断处理.............................................................................................................60
5.14.2 占先.....................................................................................................................61
5.14.3 返回.....................................................................................................................62
第6 章时钟和复位.......................................................................................................................64
6.1 Cortex-M3 时钟................................................................................................................64
6.2 Cortex-M3 复位................................................................................................................65
6.3 Cortex-M3 复位方式........................................................................................................65
6.3.1 上电复位...............................................................................................................65
6.3.2 系统复位...............................................................................................................66
6.3.3 JTAG-DP 复位.......................................................................................................67
6.3.4 SW-DP 复位...........................................................................................................67
目录
6.3.5 正常工作...............................................................................................................67
第7 章电源管理...........................................................................................................................68
7.1 电源管理概述..................................................................................................................68
7.2 系统电源管理..................................................................................................................68
7.2.1 SLEEPING.............................................................................................................69
7.2.2 SLEEPDEEP ..........................................................................................................69
第8 章嵌套向量中断控制器.......................................................................................................70
8.1 NVIC 概述........................................................................................................................70
8.2 NVIC 编程器模型............................................................................................................70
8.2.1 NVIC 寄存器映射.................................................................................................70
8.2.2 NVIC 寄存器描述.................................................................................................73
8.3 电平中断与脉冲中断......................................................................................................97
第9 章存储器保护单元...............................................................................................................98
9.1 MPU 概述.........................................................................................................................98
9.2 MPU 编程器模型.............................................................................................................98
9.2.1 MPU 寄存器纵览..................................................................................................98
9.2.2 描述MPU 寄存器................................................................................................99
9.2.3 使用重叠寄存器访问MPU ...............................................................................105
9.2.4 子区域.................................................................................................................105
9.3 MPU 访问权限...............................................................................................................106
9.4 MPU 异常中止...............................................................................................................107
9.5 更新MPU 区域.............................................................................................................107
9.5.1 使用CP15 等效代码更新MPU 区域................................................................107
9.5.2 使用两个或三个字来更新MPU 区域...............................................................108
9.6 中断和更新MPU ..........................................................................................................109
第10 章内核调试.......................................................................................................................110
10.1 关于内核调试..............................................................................................................110
10.1.1 停止模式调试...................................................................................................110
10.1.2 退出内核调试...................................................................................................110
10.2 内核调试寄存器.......................................................................................................... 111
10.2.1 调试停止控制和状态寄存器........................................................................... 111
10.2.2 调试内核选择寄存器.......................................................................................113
10.2.3 调试内核寄存器的数据寄存器.......................................................................114
10.2.4 调试异常和监控控制寄存器...........................................................................115
10.3 内核调试访问实例......................................................................................................117
10.4 在内核调试中使用应用寄存器..................................................................................117
第11 章系统调试.......................................................................................................................118
11.1 关于系统调试..............................................................................................................118
11.2 系统调试访问..............................................................................................................119
11.3 系统调试的编程模型..................................................................................................120
11.4 Flash 修补和断点.........................................................................................................121
11.4.1 FPB 的编程模型................................................................................................121
11.5 数据观察点和跟踪......................................................................................................125
11.5.1 DWT 寄存器总结及描述..................................................................................125
目录
11.6 仪表跟踪宏单元..........................................................................................................135
11.6.1 ITM 寄存器总结和描述....................................................................................135
11.7 AHB 访问端口..............................................................................................................141
11.7.1 AHB-AP 处理类型.............................................................................................141
11.7.2 AHB-AP 寄存器总结和描述.............................................................................141
第12 章调试端口.......................................................................................................................145
12.1 关于调试端口..............................................................................................................145
12.2 JTAG-DP.......................................................................................................................146
12.2.1 扫描链接口.......................................................................................................146
12.2.2 IR 扫描链和IR 指令.........................................................................................148
12.2.3 DR 扫描链和DR 寄存器..................................................................................151
12.3 SW-DP...........................................................................................................................157
12.3.1 时钟...................................................................................................................157
12.3.2 调试接口概述...................................................................................................158
12.3.3 协议操作概述...................................................................................................159
12.3.4 协议描述...........................................................................................................162
12.3.5 传输时序...........................................................................................................169
12.4 调试端口(DP)的通用特性.....................................................................................170
12.4.1 Sticky 标志和DP 错误响应..............................................................................170
12.4.2 读和写错误.......................................................................................................171
12.4.3 溢出检测...........................................................................................................171
12.4.4 协议错误,只用于SW-DP..............................................................................172
12.4.5 推动比较和推动验证操作...............................................................................172
12.5 调试端口的编程模型..................................................................................................174
12.5.1 JTAG-DP 寄存器...............................................................................................174
12.5.2 SW-DP 寄存器...................................................................................................175
12.5.3 调试端口(DP)的寄存器描述......................................................................176
第13 章跟踪端口的接口单元...................................................................................................186
13.1 关于跟踪端口的接口单元..........................................................................................186
13.1.1 TPIU 方框图......................................................................................................186
13.1.2 TPIU 组件..........................................................................................................187
13.1.3 TPIU 输入和输出..............................................................................................188
13.2 TPIU 寄存器.................................................................................................................189
13.2.1 TPIU 寄存器汇总..............................................................................................189
13.2.2 TPIU 寄存器描述..............................................................................................189
第14 章总线接口.......................................................................................................................194
14.1 关于总线接口..............................................................................................................194
14.2 ICode 总线接口............................................................................................................194
14.2.1 分支状态信号...................................................................................................195
14.3 DCode 总线接口...........................................................................................................195
14.3.1 专用...................................................................................................................195
14.3.2 存储器属性.......................................................................................................196
14.4 系统接口......................................................................................................................196
14.4.1 不对齐访问.......................................................................................................196
目录
14.4.2 Bit-band 访问.....................................................................................................196
14.4.3 Flash 修补重新映射..........................................................................................196
14.4.4 独占访问(exclusive access).........................................................................196
14.4.5 存储器属性.......................................................................................................196
14.4.6 流水线式取指...................................................................................................196
14.5 外部专用外设接口......................................................................................................197
14.6 访问的对齐情况..........................................................................................................197
14.7 横跨区域的不对齐访问..............................................................................................198
14.8 Bit-band 访问................................................................................................................198
14.9 写缓冲区......................................................................................................................199
14.10 存储器属性................................................................................................................199
第15 章嵌入式跟踪宏单元.......................................................................................................200
15.1 ETM 概述.....................................................................................................................200
15.1.1 ETM 框图...........................................................................................................200
15.1.2 ETM 资源...........................................................................................................201
15.2 数据跟踪......................................................................................................................202
15.3 ETM 资源.....................................................................................................................202
15.3.1 周期性同步(periodic synchronization)........................................................202
15.3.2 数据和指令地址比较资源...............................................................................202
15.3.3 FIFO 功能..........................................................................................................203
15.4 跟踪输出......................................................................................................................203
15.5 ETM 结构.....................................................................................................................203
15.5.1 可重新开始的指令...........................................................................................203
15.5.2 异常返回...........................................................................................................203
15.5.3 异常跟踪...........................................................................................................204
15.6 ETM 编程器模型..........................................................................................................205
15.6.1 APB 接口...........................................................................................................205
15.6.2 ETM 寄存器列表...............................................................................................206
15.6.3 描述ETM 寄存器.............................................................................................207
第16 章嵌入式跟踪宏单元的接口...........................................................................................209
16.1 ETM 接口概述.............................................................................................................209
16.2 CPU ETM 接口端口描述.............................................................................................209
16.3 分支状态接口..............................................................................................................210
第17 章指令周期定时...............................................................................................................213
17.1 关于指令周期定时......................................................................................................213
17.2 处理器的指令周期定时..............................................................................................213
17.3 加载/存储(Load-store)执行时序............................................................................216
附录A 信号描述.........................................................................................................................218
A.1 时钟...............................................................................................................................218
A.2 复位...............................................................................................................................218
A.3 杂项...............................................................................................................................218
A.4 中断接口.......................................................................................................................219
A.5 ICode 接口.....................................................................................................................219
A.6 DCode 接口....................................................................................................................220
目录
A.7 系统总线接口...............................................................................................................221
A.8 专用外设总线接口.......................................................................................................221
A.9 ITM 接口........................................................................................................................222
A.10 AHB-AP 接口..............................................................................................................222
A.11 ETM 接口.....................................................................................................................223
A.12 测试接口.....................................................................................................................223
附录B 术语表.............................................................................................................................224
附录 C 周立功公司相关信息.....................................................................................................236
基于STM32的USB程序开发笔记
原作者说:
以前一直就有打玩USB的想法,最近时间充足于是决心打玩STM32的USB,购买的是万利的STM3210B-LK1板,琢磨USB已有半个多月,在固 件、上位机驱动以及应用程序的访问这三方面终于有所突破,这期间通过网络上授寻了许多相关资料,主要来自ST提供的USB固件,以及圈圈 (computer00)提供的一些关于USB驱动开发的资料,通过这段时间的学习,了解到学习USB对于未接触过的朋友来说确实存在许多的知识壁垒,本 着开源精神,在此对STM32的USB固件程序的编写、DriverStudio + WindowsXP DDK + VC6驱动开发以及应用程序做了一些介绍,为更好理解,请仔细学习STM32 USB的参考手册以及USB协议,如果对VC6下开发还不是太熟悉或者说不曾学过,那么如果想理解有些问题,就必须学习VC6了。本套笔记是基于我编写的程序进行说明的,请配合该程序进行学习。