ADuC831/MCS-51 单片机实验
实验一 扩展存储器读写实验
一、实验要求编 制 程 序 , 对 实 验 箱 上 提 供 的 外 部 存 贮 器 ( 62256) 进 行 读 写 操 作 。
二、实验目的
掌 握 随 机 存 储 器 的 读 写 方 法 。 三、实验说明
1. 单 片 机 系 统 中 , 对 片 外 存 贮 器 的 读 写 操 作 是 最 基 本 的 操 作 。 通 过 本 实 验 了 解 单 片 机 读 写 片 外 存 储 器 的 读 写 方 法 , 并 藉 此 来 熟 悉 MCS51 单 片 机 编 程 的 基 本 规 则 、 基 本 指 令 的 使 用 和 调 试 程 序 的 方 法 。
2.ADuC831 片内有 2K 字节 XRAM,当堆栈不扩展使用时,片内 XRAM 占用外 部数据存储空间的低 2K 字节,所以,寻址片外数据存储器时要大于 2K 字节空间。
四、实验电路连线
本实验不需要连线。
五、程序框图
实验二 P3 口输入、输出实验
一、实验要求1. P3 口 作 为 输 出 口 , 接 8 只 发 光 二 极 管 , 编 写 程 序 , 使 发 光 二 管 循 环 点 亮 。
2.P3.0、P3.1 作 为 输 入 口 接 2 个 拔 动 开 关 ,P3.2、P3.3 作 为 输 出 口 接 2 只 发 光 二 极 管 , 编 写 程 序 , 用 发 光 二 极 管 观 察 拔 动 开 关 的 状 态 。 二、实验目的
1.学习 P3 口作为输入输出口的使用方法。
2.学习软件延时子程序的编写和使用。
三、实验说明
1. P3 口 是 准 双 向 口 。 它 作 为 输 出 口 时 与 一 般 的 双 向 口 使 用 方 法 相 同 。 由 准 双 向 口 结 构 可 知 当 P3 口 作 为 输 入 口 时 , 必 须 先 对 它 置 高 电 平 使 内 部 MOS 管 截 止 。若 不 先 对 它 置 高 ,且 原 来 是 低 电 平 ,则 MOS 管 导 通 , 读 入 的 数 据 是 不 正 确 的 。
2.软件延时是延时子程序指令执行的时间,与晶振的频率有关。
3. ADuC831 在线调试时占用 P3.0 及 P3.1,运行时将开关拔到右边,选择连 续运行状态。
四、实验电路连线
五、程序框图
(A)P3 口循环点灯框图 (B)P3 口输入输出框图
实验三 外部中断实验
一、实验要求编 写 程 序 ,使 其 可 以 响 应 外 部 中 断 源 产 生 的 中 断 触 发 信 号 ,并 在 对 应 的 中 断 服 务 子 程 序 中 点 亮 /熄 灭 一 个 发 光 二 极 管 作 为 观 察 现 象 。 二、实验目的
1. 学 习 外 部 中 断 技 术 的 基 本 使 用 方 法 。 2. 学 习 中 断 处 理 程 序 的 编 程 方 法 。 三、实验说明
1.中 断 服 务 程 序 的 关 键 是 :1).保 护 进 入 中 断 时 的 状 态 ,并 在 退 出 中 断 之 前 恢 复 进 入 时 的 状 态 。2).必 须 在 中 断 程 序 中 设 定 是 否 允 许 中 断 重 入 ,即 设 置 EX0 位 。另 外 中 断 程 序 中 涉 及 到 关 键 数 据 的 设 置 时 应 关 中 断 , 即 设 置 时 不 允 许 重 入 。
2.实 验 可 使 用 INT0 中 断 , 并 采 用 边 沿 触 发 方 式 。
3.实 验 可 使 用 单 脉 冲 输 出 或 脉 冲 边 沿 输 出 申 请 中 断 ,可 用 逻 辑 笔 显 示 中 断 处 理 结 果 。
四、实验电路连线
实 验 中 将 P3.2( INT0)扩 展 插 孔 与 单 脉 冲 输 出 插 孔 相 连 ,P3.4( 用 于 驱 动 发 光 二 极 管 亮 灭 ) 扩 展 插 孔 与 逻 辑 笔 输 入 插 孔 相 连 。
五、程序框图
开始
初始化中断控制
等待中断
中断入口
保护现场
控制二极管亮灭
二极管状态取反
恢复现场
中断返回
外部中断子程序框图 主程序框图
实验四 定时器实验
一、实验要求编 写 程 序 ,使 用 单 片 机 的 内 部 定 时 器 中 断 方 式 ,实 现 一 秒 钟 输 出 状 态 反 转 一 次 。
二、实验目的
1. 学 习 MCS- 51 单 片 机 内 部 定 时 器 的 使 用 和 编 程 方 法 。 2. 进 一 步 掌 握 中 断 处 理 程 序 的 编 程 方 法 。
三、实验说明
1. 内 部 计 数 /定 时 器 的 编 程 主 要 是 定 时 常 数 的 设 置 和 有 关 控 制 寄 存 器 的 设 置 。
2. 定 时 常 数 的 值 可 按 以 下 方 法 计 算 : 机 器 周 期 =12÷12MHz= 1μ S
( N-定 时 常 数 ) *1μ S= 溢 出 时 间 ( 定 时 长 度 )。
3. 实 现 状 态 反 转 可 使 用 P3.2 引 脚 驱 动 发 光 二 极 管 显 示 。 四、实验电路连线
将 P3.2 扩展插孔与 FLED0 插孔相连。
五、程序框图 开始
置T0中断工作方式
设置T0定时常数
设置初始状态位
设置秒计数值
中断允许
输出状态位 等待中断
定时器T0入口
保护现场
秒计数值减1
重置秒计数值 到1秒?
状态位取反
恢复现场 中断返回
Y
N
定时中断子程序框图 主程序框图
实验五 D/A 转换实验
一、实验要求
利用片内 DAC 或外部 DAC 电路,编制程序产生锯齿波、三角波、正弦波。三 种波形轮流显示,用示波器观察输出波形。
二、实验目的
1. 了解 D/A 转换的基本原理。
2. 学习 D/A 转换的编程方法。
三、实验说明
1. D/A 转换是把数字量转换为模拟量。比较简单的方法是产生三个波形的 表格,通过查表实现三个波形的显示。锯齿波和三角波的表格只需由数 字量的增减来控制,同时要注意三角波要分两段来产生。要产生正弦波,
较简单的手段是造一张正弦数字量表。即查函数表得到的值转换成十六 进制数填表。
2. D/A 转换取值范围为一个周期,采样点越多,精度越高些。
四、实验电路连线
1.将示波器探头连接至 DAC 输出插孔,并将地线连在一起。
2.利用片外 DAC 时,将 VREFA、VREFB 插孔与参考电源 VREF 插孔相连,DACA/B、
DACCS、DACWR 插孔分别与系统扩展插孔 P3.2、P3.3、P3.4 相连。
五、程序框图
入 口
置 计 数 器 初 值
查 表 读 波 形 数 据
启 动 D/A
改 变 计 数 器 及 表 指 针
显 示 完 毕
返 回 Y N
实验六 A/D-D/A 转换实验
一、实验要求利 用 主 板 上 可 调 电 压 输 出 或 信 号 发 生 器 提 供 模 拟 量 输 入 , 通过片内 ADC 或外部 ADC 电路做 A/D 转 换 ; 用 片 内 DAC 或外部 DAC 电路做 D/A 转 换 。 编 制 程 序 , 用示波器观察输出波形并与输 入 信 号 相 比 较 。
二、实验目的
1. 了解 A/D 转换的基本原理。
2. 学 习 A/D 转换的编程方法。
3. 了解单片机如何进行数据采集。
4. 进 一 步 掌 握 D/A 转换的编程方法。
三、实验说明
ADuC831 通 过 ADCCON1 控制寄存器选择 ADC 工作方式、转换时间及触发方 式,通过 ADCCON2 控制寄存器进行转换模式控制和通道选择。可选择外部触发或 软件触发方式,其中软件触发方式有单次、连续转换或 DMA 块转换,单次转换采 样速率低,连续转换转换采样速率较高。
四、实验电路连线
1.将信号发生器输出探头或可调电压输出插孔接 ADC 输入插孔,示波器探头 连接至 DAC 输出插孔,并将地线连在一起。
2. 利用片外 ADC 和 DAC 时,将 VREFA、VREFB 插孔与参考电源 VREF 插孔相 连,ADCCLK、ADCRD、DACA/B、DACCS、DACWR 插孔分别与系统扩展插孔 P3.0、P3.1、
P3.2、P3.3、P3.4 相连。
五、程序框图
开 始
初 始 化 A / D 、 D / A 开 中 断
延 时
等 待 中 断
A D u C 8 3 1 主 程 序 框 图
中 断 入 口 存 转 换 结 果
D / A 转 换
中 断 返 回
A D u C 8 3 1 中 断 子 程 序 框 图
实验七 PWM 输出实验
一、实验要求用 P3.2 端口输出不同占空比的脉冲。
二、实验目的
1. 了解脉宽调制(PWM)的原理。
2. 进一步掌握延时程序或定时器定时的编程方法。
三、实验说明
PWM 是单片机上常用的输出方法,通过外接电路可将占空比转换为电压的大 小。可用示波器观察输出波形。
四、实验电路连线
将示波器探头连接至 P3.2 输出插孔,并将地线连在一起。
五、程序框图 开始
输出低电平
低电平延时宽度
输出高电平
高电平延时宽度
实验八 输入/输出接口实验
一、实验要求编 写 程 序 , 使 得 八 位 发 光 二 极 管 的 亮 灭 变 化 与 八 位 拨 动 开 关 的 状 态 相 一 致 。
二、实验目的
掌握总线方式输入输出口的编程方法。
三、实验说明
读入八位拨动开关的状态值,输出到八个二极管。
四、实验电路连线
此实验不需要连线。
五、程序框图 开始
读拨动开关的状态值
写显示二极管的值
实验九 七段数码管显示实验
一、实验要求编 写 程 序 , 在 八 位 数 码 管 上 动 态 显 示 一 组 数 据 。 二、实验目的
1. 了解数码管动态显示的原理。
2. 了解用总线方式控制数码管显示。
三、实验说明
动态显示一组数据,由学生自定。
七段数码管字形段码表如下:
四、实验电路连线
此实验不需要连线 五、程序框图
开始
初始化显示参数
取显示数据
输出段码数据 指向下一个显示数据
输出位选通信号
位选通信号移位
延时
8位显示完?
返回 Y N
实验十 键盘扫描显示实验
一、实验要求编 写 程 序 ,将 键 盘 上 的 值 显 示 在 八 位 LED 七 段 数 码 管 上 并 用 发 光 二 极 管 显 示 键 的 位 置 。
二、实验目的
1.掌握 LED 七 段 数码管动态显示的原理。
2.学习键盘扫描的原理及其编程方法。
三、实验说明
动态显示键值,由学生自定。
实验程序可分为三个模块:
1. 键盘扫描子程序:确定按键位置。
2. 读键值子程序:查表确定所在键的值。
3. 显示子程序:动态显示键值。
四、实验电路连线 此实验不需要连线。
四、程序框图
开始
初始化地址参数
列输出全0信号
读行信号的值
有键闭合?
延时10ms
输出列扫描信号
列扫描信号称移位 读列值
读行值
计算行列值
该列有键输入?
4列扫描完?
返回
N Y
N
Y Y
N 入口
查表得键码
返回
开始
初始化
调键盘扫描子程序
调读键码子程序
调显示子程序
返回
主程序框图
键盘扫描子程序框图 读键值子程序框图
实验十一 LCD 显示实验
一、实验要求利用实验箱上的图形 LCD 显示器,编 写 程 序 显 示 一 组 字 符 。 二、实验目的
1.了解图形液晶显示器的基本原理及使用方法。
2.了解字符码与自编字形之间的关系。
三、实验说明
显示字符及显示方式由学生自定,主要学习 LCD 的初始化方法及字符码的调 用。详细使用可查阅 T6963C.pdf 文件使用说明。
实验程序可分为三个模块:
1.LCD 的初始化;
2.清显示 RAM 子程序 3.字符写入子程序。
四、实验电路连线 此实验不需要连线。
五、程序框图 开始
LCD初始化
置显示起始位
写显示缓冲区数据
延时
返回
实验十二 日历时钟
一、实验要求利用实验箱上的日历时钟器件 PCF8563 设计一个实时时钟,编 写 程 序 显 示 出 预 设 的 时 分 秒 。
二、实验目的
1. 了解 I2C 总线通讯协议。
2. 掌握 I2C 总线接口的时钟器件的工作原理及使用方法。
3. 巩固 LED 七段数码管动态显示方法。
三、实验说明
可查阅 PCF8563 时钟器件的使用说明 PCF8563.pdf 文件。
实验程序可分为三个模块:
1. 写数据串子程序:写初始时间。
2. 读数据串子程序:读当前时间的值。
3. 显示子程序:动态显示时间。
四、实验电路连线
ADuC831 单片机不需要连线。MCS-51 单片机可利用P3.0、P3.1 端口作为I2C 总线接口,将主板上的P3.0、P3.1 扩展插孔分别与SCL、SDA插孔相连。
四、程序框图
开 始
I 2 C 接 口 初 始 化
初 始 化 时 间 缓 冲 单 元
写 从 地 址 及 发 送 数 据 个 数
调 发 送 数 据 子 程 序
返 回 主 程 序 框 图 写 从 地 址 及 读 数 据 个 数
调 读 数 据 子 程 序
调 显 示 子 程 序
开 始
起 动 I 2 C 总 线
发 送 写 从 地 址
发 送 写 数 据 地 址
返 回
Y
Y
写 数 据 串 子 程 序 框 图 发 送 数 据 串
发 送 停 止 位 有 应 答 吗
有 应 答 吗
N
N
Y
开 始
起 动 I 2 C 总 线
发 送 写 从 地 址
发 送 读 数 据 起 始 地 址
返 回
YY
读 数 据 串 子 程 序 框 图 读 数 据 串
发 送 停 止 位 有 应 答 吗
有 应 答 吗
N N Y
发 送 读 从 地 址 起 动 I 2 C 总 线
Y
有 应 答 吗
N