-
实验一
ARM
基础知识和开发环境
一、实验目的
1
p>
)掌握
ARM
的串行口工作原理。
2
)学习编程实现
< br>ARM
的
UART
通讯。
3
)掌握
S3C2
410
寄存器配置方法。
二、实验内容
1
)熟悉打开已有工程的步骤,掌握仿真调试的方法。
2<
/p>
)建立一个新工程,熟练掌握编译器和链接器的设置方法。
p>
3
)
从串口输入字符串,
< br>将
0~9
数字在超级终端上连续显示,
< br>“
Enter
”
键换行。
4
)
将第三步得到
的字符转换成
BCD
码,
限制在
0~1023
,
用于控制直流机。
三、设计方法
1
p>
)以实验一为模板,完成实验的
1
和
2
。
2
)将接收串口数据的数组
cl[1]
改为
cl[256]
,用
cl[i]==0x0d
回车字符作为
一帧结束的条件。
p>
3
)将
“
Exp4
电机转动控制实验
”
inc
目录下的
MotorCtrl.H
和
src
目录下的
Mot
orCtrl.C
拷到该工程相应目录,将
MotorCtrl
.C
添加到工程中。
4
)在
main
函数里包含以下头文件
#include
“
../inc/MotorCtrl.h
”
。
5
)在
main
函数里包含以下头文件
#include
“
inc/mac
ro.h
”,
#define
MOTOR_COUNT
12657
6
)在
Main
函数里执行
init_MotorPort( );
7
)
直流电机调试的函数是
SetPW
M((setspeed-512)*MOTOR_COUNT/1024)
,
setspeed
是速度指令,取值范围
0~1
023.
四、预备知识
1
)了解
ADS
集成开
发环境的基本功能
2
)学习串口通讯的基本知识
3
)熟悉
S3C2410
串口有关的寄存器
五、实验设备
1
)
2410s
教学实验箱
2
)
ARM
ADS1.2
集成开发环境
3
)用于
ARM920T
的
JTAG
仿真器
4
)串口连接线
六、实验原理及说明
1
)异步串行通信
p>
异步串行方式是将传输数据的每个字符一位接一位
(
例如先低位、后高位
)
地
传送
。数据的各不同位可以分时使用同一传输通道,因此串行
I/O
可以减少信号
连线,
最少用一对线即可进行。
< br>接收方对于同一根线上一连串的数字信号,
首先
要分割成
位,再按位组成字符。
为了恢复发送的信息,
双方必须协调工作。
在微型计算机中大量使用异步串
行
I/O
方式,双方使用各自的时钟信号,而且允许时钟频率有一
定误差,因此实
现较容易。但是由于每个字符都要独立确定起始和结束
< br>(
即每个字符都要重新同
步
)<
/p>
,字符和字符间还可能有长度不定的空闲时间,因此效率较低。
图
1-1
串行通信字符格式
图
p>
1-1
给出异步串行通信中一个字符的传送格式。开始前,线路处于
空闲状
态,送出连续
“1”
。传送开始
时首先发一个
“0”
作为起始位(即双方同步信号),
然后出现在通信线上的是字符的二进制编码数据。
每个字符的数据位长可
以约定
为
5
位、
6
位、
7
位或
8
位,一般采用
ASCII
编码。后
面是奇偶校验位,根据约定,
用奇偶校验位将所传字符中为
“1
”
的位数凑成奇数个或偶数个。也可以约定不要
奇偶校验,这样
就取消奇偶校验位。最后是表示停止位的
“1”
信号,这个停止
位
可以约定持续
1
位、
1.5
位或
2
位的时间宽度
。至此一个字符传送完毕,线路又进
入空闲,持续为
“1”
p>
。经过一段随机的时间后,下一个字符开始传送才又发出起
始位。每
一个数据位的宽度等于传送波特率的倒数。
2
)串行接口的物理层标准
只介绍
EIA
RS-232C
标准:
这是美国电子工业协会推荐的一种标准
(Electronic
industries Association
Recoil-mended St
andard)
。它在一种
25
针接插
件
(DB
—
25)
上定义了串行通信的有
关信号。这个标准后来被世界各国所接受并使用到计算机的<
/p>
I/O
接口中。
在信号连线上大量采用
9
针接插件
(
DB
—
9)
来担当此任,几个主要信号
包括:
TXD
/
R
XD
:
是一对数据线,
TXD
称发送数据输出,
RXD
称接收数据输入。
p>
当两台微机以全双工方式直接通信
(
无
p>
MODEM
方式
)
时,双方的这两根线应交叉
联接
(
扭接
)
。
信号地:所有的信号都要通过信号地线构成耦合回路。
p>
通信线有以上三条
(TXD
、
RXD
和信号地
)
就能工作
了。其余信号主要用于双
方设备通信过程中的联络
(
握手信号
)
,而且有些信号仅用于和
MODEM
的联络。
若采取微型机对微型机直接通信
,且双方可直接对异步串行通信电路芯片编程,
若设置成不要任何联络信号,则其它线都
可不接。
信号电平规定为:双极性的信号逻辑电平(
-3V
到
-25V
之间
的电平表示逻辑
“1”
。
+3V
到
+25V
之间的电平表示逻辑
“0”
),是一套负逻辑定义。
RS-232C
接口通信的两种基本连接方式如图
1-
2
所示。
图
1-2
RS-232C
接口通信的两种基本连接方式
3
)信号电平规定
(
1
)
p>
EIA
电平:双极性信号逻辑电平
,
它是一套负逻辑定义
-3V
到
-25V
之间的电平表示逻辑
“
1
”
,
+3V
到
+25V
之间的电平表示
逻辑
“
0
”
(
2
)
TTL
电平:计算机内部
(S3C2410)
使用
LVTTL
电平
(
3
)电平转换电路:常用专门的
RS-232
接口芯片,如
SP3232
< br>、
SP3220
等,
在
LVTTL
电平和
EIA
电平之间实现相互转换。
4
)相关寄存器
(
1
)线路
控制寄存器
ULCONn
p>
(
2
)控制寄存器
UCONn
(
3
)状态寄存器
UTRSTAT
-
-
-
-
-
-
-
-
-
上一篇:串口main函数
下一篇:S3C2440的UART详解