基于PROTEUS和Keil的C51程序设计项目教程-理论.仿真.实践相融合
基于PROTEUS和Keil的C51程序设计项目教程-理论.仿真.实践相融合作者:周灵彬 开 本:32开 书号ISBN:9787121289583 定价: 出版时间:2016-07-01 出版社:电子工业出版社 |
基于PROTEUS和Keil的C51程序设计项目教程-理论.仿真.实践相融合 本书特色
本书以项目为导向,将c51语言的知识、编程技能技巧和单片机基本原理融入任务中, 项目软件方面包括c51的基本语法、语句及结构、数据及其类型、函数、数组、指针;keil、proteus软件应用、代码调试、串口助手数据监测等;程序设计对象涵盖单片机i/o端口应用、中断、定时/计数器原理及应用、动态扫描、lcd及点阵、键盘接口技术、a/d、d/a、串行通信应用等。强调编程规范、算法及模块化设计,书中的程序都已经通过仿真与开发板验证,保证正确性。多个程序模块可直接移植到其他项目开发中,项目实用,上手快,与实际接轨,即学即用。本书可作为各类大专院校、高职高专院校和各类培训用c51程序设计教学用书,也可作为程序发烧友的自学用书。通过这些项目任务的学习,读者可以轻松掌握单片机c51程序设计的基本方法和技能。
基于PROTEUS和Keil的C51程序设计项目教程-理论.仿真.实践相融合 目录
目 录项目1 认识编程载体——单片机和编程开发环境 11.1 单片机的应用及主要类型 11.2 单片机外形与框架 31.2.1 内部结构框图和主要部件 31.2.2 引脚:数据输入/输出通道 41.3 c51语言及其开发环境简介 51.3.1 c语言的历史及特点 51.3.2 c51的keil ?vision3开发环境简介 61.4 任务1:keil c应用入门——单片机输出“hello c51” 61.4.1 建立工程、设计程序、编译 61.4.2 keil的初步调试:查看串口输出“hello c51” 111.5 任务2:结构化程序设计——建立函数概念 121.5.1 仅由main()函数构成的c语言程序 131.5.2 由main()函数和max()构成的c语言程序 131.5.3 c51程序的一般结构 131.5.4 规范书写程序语句 141.5.5 程序设计流程图 141.6 单片机硬件知识补充 151.6.1 存储器:永久程序和临时数据的住所 151.6.2 i/o(输入/输出)口结构、功能 211.6.3 i/o口的负载能力 241.7 知识小结 25习题与思考1 25项目2 多变的花样灯 262.1 任务1:点亮一个灯 262.1.1 一位引脚定义和应用 262.1.2 一组引脚定义、输入/输出1字节数据 282.1.3 亮灯逻辑 282.1.4 proteus界面与元件操作 292.1.5 亮一个灯的电路、程序设计 332.1.6 编译、代码下载、仿真、测判 342.1.7 stc单片机代码下载 352.1.8 实物制作与上电测试 392.1.9 进阶设计与思路点拨1:亮多个灯 392.1.10 进阶设计与思路点拨2:用简易数码管显示自己的学号 402.2 任务2:有规律变化的花样灯——亮点流动 412.2.1 任务要求与分析 412.2.2 头文件reg51.h解读 422.2.3 亮点流动的程序设计——依序而下 432.2.4 编译、代码下载、仿真、测判 442.2.5 应用移位库函数_crol_设计亮点流动程序 442.3 任务3:有规律变化的花样灯一一亮起来 462.3.1 任务要求与分析 462.3.2 用“位”运算符实现一一亮灯 462.3.3 预处理:条件编译#if、#else、#endif等 482.3.4 设计延时函数头文件“dly05s.h” 482.3.5 流程与程序设计 492.3.6 编译、代码下载、仿真、测判 492.3.7 进阶设计与思路点拨3:1~8个灯逐一熄灭 492.4 任务4:有规律变化的花样灯——高低4位交替闪烁 502.4.1 任务要求与分析 502.4.2 流程与程序设计 512.4.3 编译、代码下载、仿真、测判 512.4.4 进阶设计与思路点拨4:两个亮点相向或相背运动 512.4.5 进阶设计与思路点拨5:用移位函数实现两个亮点相向运动 542.4.6 进阶设计与思路点拨6:用移位函数实现两个亮点相背运动 542.5 任务5:3种效果的花样灯设计 552.5.1 任务与要求 552.5.2 流程与程序设计 552.5.3 编译、代码下载、仿真、测判 562.5.4 在keil中进行延时程序调试 562.6 算术运算、赋值运算 582.6.1 算术运算 582.6.2 赋值及复合赋值运算 592.7 初识函数 602.7.1 函数格式 602.7.2 函数的调用中参数的传递 602.7.3 自定义函数的声明 612.7.4 预处理:#include 引用库、自定义函数 612.7.5 设计变时长的延时函数头文件dly_nms.h 622.7.6 进阶设计与思路点拨7:变速流水灯 632.8 知识小结 63习题与思考2 63项目3 键控花样灯 653.1 任务1:键控灯1(用if语句实现) 653.1.1 任务要求与分析 653.1.2 if条件语句结构 663.1.3 关系运算符和关系表达式 683.1.4 程序流程及程序设计 683.1.5 仿真、分析、记录 693.2 任务2:键控灯2(用if-else语句实现) 693.2.1 任务要求与分析 693.2.2 程序流程及程序设计 703.2.3 仿真、分析、记录 703.3 任务3:键控灯3(用if-else-if多分支语句实现) 713.3.1 任务要求与分析 713.3.2 程序流程及程序设计 723.3.3 仿真、分析、记录 723.4 任务4:键控灯4(用if嵌套语句实现) 723.4.1 任务要求与分析 723.4.2 if语句嵌套 733.4.3 程序流程及程序设计 733.4.4 仿真、分析、记录 743.5 任务5:键控灯5(用switch多分支语句实现) 743.5.1 任务要求与分析 743.5.2 switch语句 753.5.3 程序流程与程序设计 763.5.4 仿真、分析、记录 773.5.5 proteus单步调试 773.5.6 进阶设计1 803.6 任务6:学习循环结构,求 813.6.1 goto语句 813.6.2 while语句 823.6.3 do-while语句 833.6.4 for语句 833.6.5 循环结构的嵌套与跳转 843.6.6 break语句 853.6.7 continue语句 853.7 任务7:键控灯6(用for、while语句实现) 853.7.1 任务要求与分析 853.7.2 程序流程与程序设计 863.7.3 仿真、分析、记录 873.7.4 进阶设计2 873.8 任务8:键控灯7(用for、break语句实现) 883.8.1 任务要求与分析 883.8.2 程序流程与程序设计 883.8.3 仿真、分析、记录 893.8.4 将break改成continue的变化 893.9 任务9:一位示意计数器设计 903.9.1 任务要求与分析 903.9.2 程序流程与程序设计 913.9.3 仿真、分析、记录 913.9.4 进阶设计3:两位示意计数器设计 913.9.5 进阶设计4:两位十进制计数器设计 913.10 知识小结 92习题与思考3 92项目4 逻辑思维训练 954.1 任务1:用printf语句输出各种类型数据 954.1.1 数据是对描述对象的数学抽象 954.1.2 c51的数据类型 964.1.3 标识符与关键字 974.1.4 常量与变量 974.1.5 宏定义(#define)、数据类型的重新命名(typedef) 994.1.6 c51的输入/输出函数 1004.1.7 从单片机串口输出各种数据 1024.1.8 数据的存储器类型 1044.1.9 c51变量的存储模式(编译模式) 1054.1.10 在keil中查看各变量的存储地址及数值 1054.2 任务2:歌星大赛计分——简单统计运算 1074.2.1 任务要求与分析 1074.2.2 算法设计 1084.2.3 流程与程序设计 1084.2.4 proteus串口输出测试电路设计 1094.2.5 编译、代码下载、仿真、测判 1104.3 任务3:求车号是多少——推理 1114.3.1 任务要求与分析 1114.3.2 算法设计 1114.3.3 外部函数调用——关键字extern 1124.3.4 流程与程序设计 1124.3.5 编译、代码下载、仿真、测判 1134.3.6 进阶设计与思路点拨1:角谷猜想 1144.4 任务4:谁是罪犯——逻辑运算 1144.4.1 任务要求与分析 1144.4.2 逻辑运算、条件运算 1154.4.3 算法设计 1164.4.4 流程与程序设计 1184.4.5 编译、代码下载、仿真、测判 1194.4.6 进阶设计与思路点拨2:新娘和新郞 1194.5 任务5:百钱百鸡问题——穷举、组合 1204.5.1 任务要求与分析 1204.5.2 算法设计 1204.5.3 流程与程序设计 1214.5.4 编译、代码下载、仿真、测判 1224.5.5 进阶设计与思路点拨3:换钱币 1224.6 任务6:数据从小到大排序——数组应用 1224.6.1 任务要求与分析 1224.6.2 数组 1234.6.3 算法设计 1254.6.4 流程与程序设计 1264.6.5 编译、代码下载、仿真、测判 1274.6.6 进阶设计与思路点拨4:从大到小排序 1274.7 任务7:求解约瑟夫问题——结构数组应用 1284.7.1 任务要求与分析 1284.7.2 结构体、结构数组 1284.7.3 算法设计 1304.7.4 流程与程序设计 1314.7.5 编译、代码下载、仿真、测判 1324.7.6 进阶设计与思路点拨5:数3出局 1324.8 局部变量、全局变量、外部变量 1334.9 知识小结 135习题与思考4 135项目5 定时器/计数器、中断应用 1385.1 任务1:用外中断干扰流水灯 1385.1
教材 研究生/本科/专科教材 工学
在线阅读
- 最新内容
- 相关内容
- 网友推荐
- 图文推荐
零零教育社区:论坛热帖子
[家长教育] 孩子为什么会和父母感情疏离? (2019-07-14) |
[教师分享] 给远方姐姐的一封信 (2018-11-07) |
[教师分享] 伸缩门 (2018-11-07) |
[教师分享] 回家乡 (2018-11-07) |
[教师分享] 是风味也是人间 (2018-11-07) |
[教师分享] 一句格言的启示 (2018-11-07) |
[教师分享] 无规矩不成方圆 (2018-11-07) |
[教师分享] 第十届全国教育名家论坛有感(二) (2018-11-07) |
[教师分享] 贪玩的小狗 (2018-11-07) |
[教师分享] 未命名文章 (2018-11-07) |