51单片机项目教程(C语言版)(赠单片机开发板)(txt+pdf+epub+mobi电子书下载)


发布时间:2020-07-06 22:14:36

点击下载

作者:吴险峰

出版社:人民邮电出版社有限公司

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

51单片机项目教程(C语言版)(赠单片机开发板)

51单片机项目教程(C语言版)(赠单片机开发板)试读:

前言

近来职业院校的单片机课程改革力度很大,大部分教材注重工学结合、校企合作,通过项目教学模式来加强实践和职业技能培养。但如何将教材和学习开发板相结合,一直是一个难点。由于各校的开发板不统一,没有标准化。嵌入式专业的教材要么是和学校实训室的开发板捆绑,要么是通过纯软件完成虚拟实训内容。前者虽然针对性强,但需要配备专门实验条件,而且教材发行量有限。后者虽便于教学,但是对于学生而言,离实际技能培养还是有相当差距。如何让教材发挥真正的作用,是每个专业老师都非常关心的话题。

本教材最大特色就是结合“互联网+”国家战略对教材进行大胆的探索。创新“互联网+”教材模式,打造全新的单片机学习生态链,提高学习效率,降低学习成本。

具体来说,教材分成基础部分和拓展部分。对于教学必须完成的基础部分内容,教材配套提供试验用开发板。对于拓展部门的内容,读者需要用到的其他配件和模块,需要另行购买。

全书包括单片机开发环境构建、流水灯、蜂鸣器、LED显示器、按键输入、中断、定时器和串口通信等内容,通过配套的开发板完全覆盖,教材的内容结构如下。

本教材保持了最大的灵活性,可以根据课程的不同学时,设置不同的项目。企业可以通过互联网发布最新的项目资源,同时为感兴趣的同学提供项目和技术支持。这种全新的“互联网+”的校企合作,相信也会对整个行业产生重要的引领作用。另外,标准化的开发板也有利于组织标准化的技能竞赛和认证考试。相对于软件认证考试来说,硬件认证考试一直是整个行业的痛点。本教材也在这方面进行大胆的尝试。

本教材的诞生凝聚了深圳信息职业技术学院软件学院嵌入式专业老师的多年心血。吴险峰对本教材内容的编写与项目设计进行了总体策划,对全教材进行了统稿和初审,但唐仁、刘德新、曾路、李华忠、郑洪英和盛建强等参与了书稿整理和在线教育网站的制作。本教材在编写的过程中还得到了深圳信息职业技术学院张宗平和余柏林、广东科学技术职业学院陈明芳和李力、广东工程职业技术学院赖友源、广东青年职业学院孙波、广州科技贸易职业学院侯继红、广州铁路职业技术学院刘国成、中山职业技术学院江武志、东莞职业技术学院刘洋、佛山职业技术学院化雪荟等各位同人的大力支持,在此一并表示衷心的感谢!

本教材同时得到了相关企业的大力支持。深圳市亚博智能科技有限公司不仅为教材配赠了开发板,还专门为此项目录制了视频,同时也提供相关增值服务。珠海因尔科技有限公司为本项目提供进一步发展的平台,将此创新理念进一步拓展到嵌入式和物联网相关领域。深圳市华谕电子商务有限公司为教材配套网站提供技术支持。在此一并表示衷心的感谢!

该教材电子课件、电子教案、全套视频、实例程序和辅助工具等教学素材,可登录www.51qrs.cn免费下载。试题库、认证考试和竞赛库等其他教学资源也在逐步完善,希望为大家提供一整套的完整教学资源。后期还会开通微信服务号,开发相应的移动应用App,构建完整的单片机生态链。编者2016年4月项目1 构建单片机开发环境项目目标● 通过构造单片机开发环境,了解单片机开发系统结构和流程。建议学时● 2学时。知识要点● 单片机系统开发流程。● 编程工具Keil C51。● 程序烧录。技能掌握● 安装USB驱动;利用Keil C开发环境编辑、编译、调试C51程序的过程;掌握实用程序烧录方法及相关工具。1.1 项目分析

学习单片机之前,必须要掌握构建单片机开发环境的方法。本项目详细讲解USB驱动程序的安装方法,如何安装使用开发软件Keil4,如何烧录程序和使用相关工具。1.2 技术准备1.2.1 单片机系统简介

单片机(Microcontrollers)是一种集成电路芯片,它是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O端口和中断系统、定时器/计数器(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器)等集成到一块硅片上构成的一个微型计算机系统,并在工业控制领域广泛应用。从20世纪80年代起,单片机已由当时的4位、8位单片机,发展到现在的32位的主频超过300M的高速单片机。

在单片机应用系统开发过程中,单片机是整个设计的核心。如图1-1所示,单片机应用系统由硬件和软件组成。硬件是应用系统的基础,软件在硬件的基础上对其资源进行合理调配和使用,从而完成应用系统所要求的任务,二者相互依赖,缺一不可。图1-1 单片机应用系统结构1.2.2 安装USB驱动程序

确保计算机联网。USB口插入开发板后,计算机会自动识别设备,自动联网,安装驱动设备。若计算机未自动安装驱动,打开设备管理器,找到插入开发板后弹出的新设备(未安装好驱动的情况下在“其他设备”中,带有黄色感叹号或问号),右键单击该设备,选择“更新驱动程序软件”→“自动搜索更新的驱动程序软件”即可安装驱动,更新驱动程序软件步骤如图1-2~图1-5所示。图1-2 安装驱动程序软件步骤一图1-3 安装驱动程序软件步骤二图1-4 安装驱动程序软件步骤三图1-5 安装驱动程序软件步骤四1.2.3 单片机程序烧录方法和相关工具

STC单片机的程序烧录方法如下。

第一步,硬件连接。

将配套的USB电源线与串行端口线连上,在锁紧座上放入STC单片机,其他的硬件连接保持原状态,硬件连接完毕,打开电源。

第二步,软件操作。(1)打开软件,出现如图1-6所示界面。图1-6 STC-ISP(V6.85)界面(2)需要设置的几个参数,如图1-7所示。图1-7 STC-ISP(V6.85)设置参数

参数设置在软件中都有详细提示,这里只是再次强调一下。

第三步,下载程序。(1)导入源程序,可查看源代码,如图1-8所示。图1-8 STC-ISP(V6.85)查看代码窗口(2)关闭单片机开发板套件电源为下载做准备。(3)下载程序。

单击“Download/下载”,这时软件信息会提示操作过程,如图1-9和图1-10所示。图1-9 STC-ISP(V6.85)下载过程图1-10 STC-ISP(V6.85)烧录操作成功(4)当提示窗口的内容为给MCU(微控制单元,又称单片机)通电时,打开单片机开发板套件的电源,程序将会自动完成写入。程序写入后,在本书附带的单片机开发板套件中,会立即演示出程序的效果。1.2.4 使用单片机开发软件Keil4

1. 编程工具Keil C51

Keil Software公司推出的Keil µVision是一款基于Windows的软件平台。它是一种用于51系列单片机的集成开发环境(Intergrated Development Enviroment,IDE)。目前的µVision4版本还可以支持ARM编程。µVision提供了功能强大的编辑器和调试器,编辑器可以像一般的文本编辑器一样对源代码进行编辑,调试器使用户能够快速地检查和修改程序。用户还可以选中变量和存储器来观察其值,并可在双层窗口中显示,还可对其进行适当的调整。

Keil同时支持C语言和汇编语言编程,本书只针对C语言进行讲解。Keil C51编译器在遵循ANSI C标准的同时,为51单片机进行了特别的设计和扩展,可为用户提供在应用中需要的所有资源。

Keil C51的库函数含有100多种功能,其中大多数是可载入的。函数库支持所有的ANSI C的程序。库函数中的程序还为硬件提供特殊指令,例如nop、testbit、rol、ror等,方便了应用程序的开发。

2. 用Keil C51编写程序

编程语言都需要开发环境,这样才能完成程序的编写、调试和编译。C51程序开发是在Keil µVision开发环境下进行的。下面首先介绍该开发环境Keil µVision4的使用。该软件启动界面如图1-11所示。图1-11 Keil µVision4软件启动界面(1)单击“Project”→“New µVision Project”新建一个工程,如图1-12所示。图1-12 Keil µVision4新建工程(2)在对话框中,给这个工程取名test1后,保存,不需要填写后缀,如图1-13所示。注意,默认的工程后缀与uVision3及uVision2版本不同,为uvporj。图1-13 Keil µVision4新建工程(3)在弹出的对话框中,CPU类型下选择实际使用的单片机型号。本例找到并选中“Atmel”下的AT89S51,如图1-14所示。图1-14 Keil µVision4选择型号(4)在以上工程创建完毕后,开始建立一个源程序文本,如图1-15所示。图1-15 Keil µVision4新建源程序文本(5)在源程序编辑区写入完整的C程序,如图1-16所示。图1-16 Keil µVision4源程序编辑(6)单击“保存”快捷键,弹出保存对话框,在文件名对话框里输入源程序文件名,此示例输入的文件名为“test”,如图1-17所示。注意,如果使用汇编语言,源程序文件名必须使用“.asm”后缀,如本示例为“test . asm”;如果使用C语言,则源程序文件名必须使用“.c”后缀,如本示例为“test . c”,然后保存。此时可以看到程序文本字体颜色已发生了变化,表明编译器生效。图1-17 Keil µVision4保存文件(7)把刚创建的源程序文件加入到工程项目文件中,如图1-18所示。图1-18 Keil µVision4添加项目(8)单击目标选项(Target Options)按钮“”,先选择“Target(目标)”标签,设置晶振,一般设置为12MHz,方便计算指令时间,如图1-19所示。图1-19 Keil µVision4生成HEX文件(9)在“Output(输出)”标签栏选中“Create HEX File”,使编译器的输出为单片机需要的HEX文件,如图1-20所示。图1-20 Keil µVision4创建HEX文件(10)保存后,单击重新建造(Rebuild)按钮“”进行编译,“Built Output(重建输出)”窗口在文件没有错误的情况下,提示有hex文件输出,如图1-21所示。图1-21 Keil µVision4生成HEX文件

C51程序开发与Windows中运行的项目工程的开发有所不同,在Windows中,一般程序的编译结果是后缀名为“.exe”的可执行文件,该文件在Windows系统中能直接运行,而单片机C51程序的开发属于嵌入式开发,遵循主流的交叉编译模式,即在宿主机(运行Keil µVision4的PC机)上开发编译,在目标机(51系列单片机)上运行。在宿主机上的编译结果为HEX文件,要经过编程器烧录到单片机的程序区(Flash ROM)才能执行。当然也可以通过EDA仿真软件来执行。项目2 了解开发板项目目标● 通过课堂讲解了解本开发板。建议学时● 2学时。知识要点● BST-M51电路图。● BST-M51学习板功能模块图。技能掌握● 熟知BST-M51 开发板。2.1 项目分析

使用开发板之前,必须熟悉各个模块的电路图及功能。2.2 技术准备2.2.1 亚博BST-M51模块电路图

1. CH340烧录模块电路

CH340烧录模块电路如图2-1所示,图中VCC-5V为取自USB的5V电源;VCC为模块供电点;TXD为串行数据输出;RXD为行数据输入;GND为模块接地。图2-1 CH340烧录模块电路

2. 4位数码显示电路

4位数码显示电路如图2-2所示,每位由a~g7段发光二极管(LED)组成。加正电压的发光,加零电压的不能发光,不同亮暗的组合就能显现不同的数字。图2-2 4位数码显示电路

3. WIFI模块电路

WIFI模块电路如图2-3所示。该模块由单5V或3.3V电源供电;工作温度范围为-45℃~+85℃;模块尺寸为32mm×20mm×4.5mm。图2-3 WIFI模块电路

4. 通用红外遥控系统模块电路

通用红外遥控系统模块电路由发射和接收两大部分组成,如图2-4和图2-5所示。应用编/解码专用集成电路芯片进行控制操作。发射部分包括键盘、编码调制、LED红外发送器;接收部分包括光/电转换放大器、解调、解码电路。图2-4 红外发送模块电路图2-5 红外接收模块电路2.2.2 亚博科技BST-M51学习板功能模块图

亚博科技BST-M51学习板功能模块分布如图2-6所示。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载