《C语言编程实训》实训指导书一_第1页
《C语言编程实训》实训指导书一_第2页
《C语言编程实训》实训指导书一_第3页
《C语言编程实训》实训指导书一_第4页
《C语言编程实训》实训指导书一_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

康大学院自动化系电子教研室 1 C 语言编程实训语言编程实训 实训指导书一实训指导书一 适应专业 应用电子技术适应专业 应用电子技术 广州康大职业技术学院自动化系广州康大职业技术学院自动化系 二二 0 一一 0 年十一月年十一月 康大学院自动化系电子教研室 2 C 语言编程实训语言编程实训 实训一实训一 单片机电路的单片机电路的 PROTEUSPROTEUS 设计与仿真设计与仿真 一 一 循环彩灯循环彩灯 1 实训目的 1 通过 AT89C51 单片机控制 8 个发光二极管发光 实现循环彩灯的闪亮效果 2 用 PROTEUS 设计循环彩灯电路原理图 3 掌握使用 PROTEUS 进行仿真调试的操作步骤与方法 2 PROTEUS 电路设计 1 从 PROTEUS 库中选取元器件 AT89C51 单片机 10WATT1K 电阻 LED GREEN 绿色发光二极管 AVX0402NP033P AV100U25V 电容 电解电容 CRYSTAL 晶振 SW SPST 开关 2 放置元器件 3 放置电源和地 终端 4 连线 5 元器件属性设置 6 电气检测 注意 以上操作方法详见教材 单片机原理与接口技术 第 6 章 P62 绘制完成的电路原理图如下所示 XTAL2 18 XTAL1 19 ALE 30 EA 31 PSEN 29 RST 9 P0 0 AD0 39 P0 1 AD1 38 P0 2 AD2 37 P0 3 AD3 36 P0 4 AD4 35 P0 5 AD5 34 P0 6 AD6 33 P0 7 AD7 32 P1 0 1 P1 1 2 P1 2 3 P1 3 4 P1 4 5 P1 5 6 P1 6 7 P1 7 8 P3 0 RXD 10 P3 1 TXD 11 P3 2 INT0 12 P3 3 INT1 13 P3 4 T0 14 P3 7 RD 17 P3 6 WR 16 P3 5 T1 15 P2 7 A15 28 P2 0 A8 21 P2 1 A9 22 P2 2 A10 23 P2 3 A11 24 P2 4 A12 25 P2 5 A13 26 P2 6 A14 27 U1 AT89C51 X1 CRYSTAL C1 33p C2 33p R1 1k C3 100u SW1 SW SPST R2 1k D2 LED GREEN D3 LED GREEN D4 LED GREEN D5 LED GREEN D6 LED GREEN D7 LED GREEN D8 LED GREEN R3 200 R4 200 R5 200 R6 200 R7 200 R8 200 R9 200 R10 200 D1 LED GREEN 图 1 1 循环彩灯电路原理图 绘制电路原理图时 也可以用 1 个排阻 RX8 代替 8 个 1K 电阻 10WATT1K 3 源程序设计 生成目标代码文件 康大学院自动化系电子教研室 3 使用 KEIL C 软件进行循环彩灯 C 语言程序的编辑 编译 链接 并生成 HEX 文 件具体操作步骤与方法详见 C 语言编程实训 实训指导书二 附 原程序清单 unsigned int i char j k sbit P3 0 P3 0 void main while 1 if P3 0 0 k 0 x80 for j 0 j 8 j P1 k for i 0 i 1 k 0 x01 for j 0 j 8 j P1 k for i 0 i 5000 i k k 0 i for j 110 j 0 j 4 PROTEUS 仿真 1 加载目标代码文件 2 全速仿真 三 三 交通信号灯程序设计交通信号灯程序设计 1 1 1 实训目的 1 编写含有 switch 语句结构或含有 for 语句结构的 C 语言程序 通过 AT89C51 单片机 P1 口实现交通信号灯控制 2 用 PROTEUS 设计交通信号灯反向控制电路原理图 2 PROTEUS 电路设计 从 PROTEUS 库中选取以下元器件 10WATT1K AT89C51 AVX0402NP033P AX100U25V CRYSTAL LED GREEN SW SPST 按照教材第 59 页图 5 11 所示 画出交通信号灯反向控制电路原理图 3 源程序设计 生成目标代码文件 使用 KEIL C 软件进行交通信号灯控制 C 语言程序的编辑 编译 链接 并生成 HEX 文件 具体操作步骤与方法详见 C 语言编程实训 实训指导书二 C 语言程序详 见教材 P58 4 PROTEUS 仿真 1 加载目标代码文件 2 全速仿真 四 四 交通信号灯程序设计交通信号灯程序设计 2 2 1 实训目的 1 编写采用函数调用结构的 C 语言程序 通过 AT89C51 单片机 P1 口实现交通信号灯控 制 2 用 PROTEUS 设计交通信号灯直接控制电路原理图 2 PROTEUS 电路设计 从 PROTEUS 库中选取以下元器件 RES BUTTON AT89C51 TRAFFICLIGHTS 按照教材第 78 页图 7 3 所示 画出交通信号灯直接控制电路原理图 3 源程序设计 生成目标代码文件 使用 KEIL C 软件进行交通信号灯控制 C 语言程序的编辑 编译 链接 并生成 康大学院自动化系电子教研室 6 HEX 文件 具体操作步骤与方法详见 C 语言编程实训 实训指导书二 C 语言程序详 见教材 P78 4 PROTEUS 仿真 1 加载目标代码文件 2 全速仿真 五 中断嵌套控制程序设计五 中断嵌套控制程序设计 1 实训目的 1 编写采用中断嵌套结构的 C 语言程序 通过 AT89C51 单片机 P1 P2 口实现 2 个响应 优先级的中断系统控制 2 用 PROTEUS 设计中断嵌套控制电路原理图 2 PROTEUS 电路设计 从 PROTEUS 库中选取以下元器件 3WATT1K 7SEG COM ANODE 74LS47 BUTTON AT89C51 按照教材第 86 页图 7 11 所示 画出中断嵌套控制电路原理图 3 源程序设计 生成目标代码文件 使用 KEIL C 软件进行中断嵌套控制 C 语言程序的编辑 编译 链接 并生成 HEX 文件 具体操作步骤与方法详见 C 语言编程实训 实训指导书二 C 语言程序详见教 材 P78 4 PROTEUS 仿真 1 加载目标代码文件 2 全速仿真 六 定时器程序设计六 定时器程序设计 1 实训目的 1 编写含有一维数组语句 定时器初始化与中断函数的 C 语言程序 通过 AT89C51 单片 机 P1 口实现时序控制 2 用 PROTEUS 设计定时器控制时序电路原理图 2 PROTEUS 电路设计 从 PROTEUS 库中选取以下元器件 AT89C51 LED BARGRAPH GRN 按照教材第 97 页图 8 8 所示 画出定时器控制时序电路原理图 3 源程序设计 生成目标代码文件 使用 KEIL C 软件进行定时器 C 语言程序的编辑 编译 链接 并生成 HEX 文件 具体操作步骤与方法详见 C 语言编程实训 实训指导书二 C 语言程序详见教材 P98 4 PROTEUS 仿真 1 加载目标代码文件 2 全速仿真 七 计数器程序设计七 计数器程序设计 1 实训目的 1 编写含有宏定义语句 定时器初始化与定时中断程序的 C 语言程序 通过 AT89C51 单 片机 P1 口和 P3 4 引脚实现数码管显示计数值的控制装置 2 用 PROTEUS 设计计数值 LED 显示的电路原理图 2 PROTEUS 电路设计 康大学院自动化系电子教研室 7 1 从 PROTEUS 库中选取以下元器件 AT89C51 LED BARGRAPH GRN 按照教材第 101 页所示 画出计数值 LED 显示的电路原理图 2 点击信号发生器图标 在 GENERTORS 栏中选用 DCLOCK 探针接入单片机 AT89C51 的 P3 4 引脚 3 点击左键选中 DCLOCK 探针 选中后显红色 再点击右键 在弹出对话框的 Generator Name 项中输入 U1 P34 T0 Frequency HZ 项中输入 600 最后点击 OK 3 源程序设计 生成目标代码文件 使用 KEIL C 软件进行 LED 计数器 C 语言程序的编辑 编译 链接 并生成 HEX 文件 具体操作步骤与方法详见 C 语言编程实训 实训指导书二 C 语言程序详见教材 P101 4 PROTEUS 仿真 1 加载目标代码文件 2 全速仿真 八 独立式键盘程序设计八 独立式键盘程序设计 1 实训目的 1 编写含有 wile 语句 if 语句与一维数组语句的 C 语言程序 通过 AT89C51 单片机 P1 P2 口实现独立式 8 键键盘的控制电路 2 用 PROTEUS 设计独立式键盘电路原理图 2 PROTEUS 电路设计 从 PROTEUS 库中选取以下元器件 7SEG COM CAT GRN AT89C51 BUTTON 按照教材第 136 页图 10 4 所示 画出独立式键盘电路原理图 3 源程序设计 生成目标代码文件 使用 KEIL C 软件进行独立式键盘 C 语言程序的编辑 编译 链接 并生成 HEX 文件 具体操作步骤与方法详见 C 语言编程实训 实训指导书二 C 语言程序详见教材 P136 4 PROTEUS 仿真 1 加载目标代码文件 2 全速仿真 九 行列式键盘程序设计九 行列式键盘程序设计 1 实训目的 1 编写含有宏定义语句 一维数组语句 与 或 非 左移等四种运算语句的 C 语言程 序 通过 AT89C51 单片机 P1 口实现行列式键盘的控制电路 2 用 PROTEUS 设计 4 4 行列式键盘电路原理图 2 PROTEUS 电路设计 从 PROTEUS 库中选取以下元器件 7SEG COM CAT GRN AT89C51 BUTTON 按照教材第 140 页图 10 9 所示 画出 4 4 行列式键盘电路原理图 3 源程序设计 生成目标代码文件 使用 KEIL C 软件进行行列式键盘 扫描法 C 语言程序的编辑 编译 链接 并生成 HEX 文件 具体操作步骤与方法详见 C 语言编程实训 实训指导书二 C 语言程序详见教 材 P140 4 PROTEUS 仿真 1 加载目标代码文件 2 全速仿真 十 十 LEDLED 静态显示程序设计静态显示程序设计 1 1 1 实训目的 1 编写采用一维数组语句 含有数码管显示字段码 的 C 语言程序 通过 AT89C51 单片 康大学院自动化系电子教研室 8 机 P2 口实现数码循环静态显示的控制电路 2 用 PROTEUS 设计静态显示电路原理图 2 PROTEUS 电路设计 从 PROTEUS 库中选取以下元器件 7SEG COM CAT GRN AT89C51 BUTTON 按照教材第 159 图 11 4 所示 画出静态显示电路原理图 3 源程序设计 生成目标代码文件 使用 KEIL C 软件进行静态显示 C 语言程序的编辑 编译 链接 并生成 HEX 文 件 具体操作步骤与方法详见 C 语言编程实训 实训指导书二 C 语言程序详见教材 P159 4 PROTEUS 仿真 1 加载目标代码文件 2 全速仿真 十一 十一 LEDLED 静态显示程序设计静态显示程序设计 2 2 1 实训目的 1 编写采用 MAX7221 扩展芯片的 C 语言程序 通过 AT89C51 单片机 P2 0 串行输出实现 8 位数码管静态显示的控制电路 2 用 PROTEUS 设计静态显示电路原理图 2 PROTEUS 电路设计 从 PROTEUS 库中选取以下元器件 7SEG MPX8 CA BLUE 或 7SEG MPX8 CC BLUE AT89C51 10WATT10R MAX7221 按照教材第 168 页图 11 11 所示 画出 8 位数码管静态显示电路图 3 源程序设计 生成目标代码文件 使用 KEIL C 软件进行 MAX7221 扩展 8 位数码管 C 语言程序的编辑 编译 链接 并 生成 HEX 文件 具体操作步骤与方法详见 C 语言编程实训 实训指导书二 C 语言程序详 见教材 P168 4 PROTEUS 仿真 1 加载目标代码文件 2 全速仿真 十二 十二 LEDLED 动态显示程序设计动态显示程序设计 1 实训目的 1 编写采用 MAX7221 扩展芯片的 C 语言程序 通过 AT89C51 单片机 P2 0 串行输出时间 信息 实现数字时钟计时电路 2 用 PROTEUS 设计数字时钟电路原理图 2 PROTEUS 电路设计

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论