51 单片机C 语言学习杂记学习单片机实在不是件易事,一来要购买高价格的编程器,仿真器,二来要学习编程语言,还有众多种类的单片机选择真是件让人头痛的事。在众多单片机中51 架构的芯片风行很久,学习资料也相对很多,是初学的较好的选择之一。51 的编程语言常用的有二种,一种是汇编语言,一种是C 语言。汇编语言的机器代码生成效率很高但可读性却并不强,复杂一点的程序就更是难读懂,而C 语言在大多数情况下其机器代码生成效率和汇编语言相当,但可读性和可移植性却远远超过汇编语言,而且C 语言还可以嵌入汇编来解决高时效性的代码编写问题。对于开发周期来说,中大型的软件编写用C 语言的开发周期通常要小于汇编语言很多。综合以上C 语言的优点,我在学习时选择了C 语言。以后的教程也只是我在学习过程中的一些学习笔记和随笔,在这里加以整理和修改,希望和大家一起分享,一起交流,一起学习,一起进步。*注:可以肯定的说这个教程只是为初学或入门者准备的,笔者本人也只是菜鸟一只,第一课 建立您的第一个C 项目使用C 语言肯定要使用到C 编译器,以便把写好的C 程序编译为机器码,这样单片机才能执行编写好的程序。KEIL uVISION2 是众多单片机应用开发软件中优秀的软件之一,它支持众多不同公司的MCS51 架构的芯片,它集编辑,编译,仿真等于一体,同时还支持,PLM,汇编和C 语言的程序设计,它的界面和常用的微软VC++的界面相似,界面友好,易学易用,在调试程序,软件仿真方面也有很强大的功能。因此很多开发51 应用的工程师或普通的单片机爱好者,都对它十分喜欢。以上简单介绍了KEIL51 软件,要使用KEIL51 软件,必需先要安装它。KEIL51 是一个商业的软件,对于我们这些普通爱好者可以到KEIL 中国代理周立功公司的网站上下载一份能编译2K 的DEMO 版软件,基本可以满足一般的个人学习和小型应用的开发。(安装的方法和普通软件相当这里就不做介绍了)安装好后,您是不是迫不及待的想建立自己的第一个C 程序项目呢?下面就让我们一起来建立一个小程序项目吧。或许您手中还没有一块实验板,甚至没有一块单片机,不过没有关系我们可以通过KEIL 软件仿真看到程序运行的结果。首先当然是运行KEIL51 软件。怎么打开?噢,天!那您要从头学电脑了。呵呵,开个玩笑,这个问题我想读者们也不会提的了:P。运行几秒后,出现如图1-1 的屏幕。
上传时间: 2014-01-23
上传用户:yyyyyyyyyy
PIC 单片机C 语言编程简介用C 语言来开发单片机系统软件最大的好处是编写代码效率高、软件调试直观、维护升级方便、代码的重复利用率高、便于跨平台的代码移植等等,因此C 语言编程在单片机系统设计中已得到越来越广泛的运用。针对PIC 单片机的软件开发,同样可以用C 语言实现。但在单片机上用C 语言写程序和在PC 机上写程序绝对不能简单等同。现在的PC 机资源十分丰富,运算能力强大,因此程序员在写PC 机的应用程序时几乎不用关心编译后的可执行代码在运行过程中需要占用多少系统资源,也基本不用担心运行效率有多高。写单片机的C 程序最关键的一点是单片机内的资源非常有限,控制的实时性要求又很高,因此,如果没有对单片机体系结构和硬件资源作详尽的了解,以笔者的愚见认为是无法写出高质量实用的C 语言程序。这就是为什么前面所有章节中的的示范代码全部用基础的汇编指令实现的原因,希望籍此能使读者对PIC 单片机的指令体系和硬件资源有深入了解,在这基础之上再来讨论C 语言编程,就有水到渠成的感觉。本书围绕中档系列PIC 单片机来展开讨论,Microchip 公司自己没有针对中低档系列PIC单片机的C 语言编译器,但很多专业的第三方公司有众多支持PIC 单片机的C 语言编译器提供,常见的有Hitech、CCS、IAR、Bytecraft 等公司。其中笔者最常用的是Hitech 公司的PICC 编译器,它稳定可靠,编译生成的代码效率高,在用PIC 单片机进行系统设计和开发的工程师群体中得到广泛认可。其正式完全版软件需要购置,但在其网站上有限时的试用版供用户评估。另外,Hitech 公司针对广大PIC 的业余爱好者和初学者还提供了完全免费的学习版PICC-Lite 编译器套件,它的使用方式和完全版相同,只是支持的PIC 单片机型号限制在PIC16F84、PIC16F877 和PIC16F628 等几款。这几款Flash 型的单片机因其所具备的丰富的片上资源而最适用于单片机学习入门,因此笔者建议感兴趣的读者可从PICC-Lite 入手掌握PIC 单片机的C 语言编程。
上传时间: 2013-11-17
上传用户:15527161163
单片机的C 语言轻松入门随着单片机开发技术的不断发展,目前已有越来越多的人从普遍使用汇编语言到逐渐使用高级语言开发,其中主要是以C 语言为主,市场上几种常见的单片机均有其C 语言开发环境。这里以最为流行的80C51 单片机为例来学习单片机的C 语言编程技术。本书共分六章,每章一个专题,以一些待完成的任务为中心,围绕该任务介绍C 语言的一些知识,每一个任务都是可以独立完成的,每完成一个任务,都能掌握一定的识,等到所有的任务都完成后,即可以完成C 语言的入门工作。C 语言概述及其开发环境的建立学习一种编程语言,最重要的是建立一个练习环境,边学边练才能学好。Keil 软件是目前最流行开发80C51 系列单片机的软件,Keil 提供了包括C 编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(μVision)将这些部份组合在一起。在学会使用汇编语言后,学习C 语言编程是一件比较容易的事,我们将通过一系列的实例介绍C 语言编程的方法。图1-1 所示电路图使用89S52 单片机作为主芯片,这种单片机性属于80C51 系列,其内部有8K 的FLASH ROM,可以反复擦写,并有ISP 功能,支持在线下载,非常适于做实验。89S52 的P1 引脚上接8 个发光二极管,P3.2~P3.4 引脚上接4 个按钮开关,我们的任务是让接在P1 引脚上的发光二极管按要求发光。
上传时间: 2013-11-04
上传用户:467368609
Keil Cx51 V7.0单片机高级语言编程与uVision2应用实践详细介绍了KeilCx51V7.机C语言编译器和全新Windows集成开发环境μVision2的强大功能和具体使用方法。全面介绍了最新版本Cx51编译器新增加的控制命令,给出了全部Cx51运行库函数及其应用范例,对KeilCx51软件包中各种应用工具,如BL51/Lx51连接定位器、A51/Ax51宏汇编器、LIB51库管理程序以及OH51符号转换程序等都作了详细介绍,还介绍了单片机实时多任务操作系统RTX51及其子集RTX51TINY的具体功能与应用方法。μVision2已经将调试器功能集成于其中,用户可以在单一环境下完成从源程序编写、编译、连接定位一直到目标文件的仿真调试等全部工作,书中详细介绍了μVision2各种功能和应用,包括软件模拟调试和硬件目标板实时在线仿真。第1章 851单片机与KeilCx51基础 1.1 851单片机的存储器组织结构 1.2 KeilCx51开发工具 1.3 Cx51简单编程与调试第2章 Cx51程序设计基础 2.1 标识符与关键字 2.2 Cx51程序设计的基本语法 2.2.1 数据类型 2.2.2 常量 2.2.3 变量及其存储模式 2.2.4 用typedef重新定义数据类型 2.2.5 运算符与表达式 2.3 Cx51程序的基本语句 2.3.1 表达式语句 2.3.2 复合语句 2.3.3 条件语句 2.3.4 开关语句 2.3.5 循环语句 2.3.6 返回语句第3章 函数 3.1 函数的定义; 3.2 函数的调用 3.2.1 函数的调用形式 3.2.2 对被调用函数的说明 3.2.3 函数的参数和函数的返回值 3.2.4 实际参数的传递方式 3.3 函数的递归调用与再入函数
上传时间: 2014-01-16
上传用户:edisonfather
光盘内容1.1例 程 “例程”文件夹中为各章节的程序代码,均在作者的目标板上(自行开发)调试通过,以确保程序正确。n Keil C对中文文件、目录以及空格等可能无法编译连接,所以若要正确调试,须确保所有文件、目录为连续英文名或数字。n 这些程序应用到其他C8051Fxxx系列单片机时,要确保各个操作寄存器的名称、地址与各个控制位相一致,否则需要修改。很多寄存器位的位置并不相同,所以移植程序时,使用者要参考F040寄存器和移植对象单片机的寄存器,以确保正确操作。1.2 原理图及pcb封装“原理图及pcb封装”文件夹里包含作者制作的C8051F040PCB封装和原理图引脚定义文件c8051f040.ddb。其中PCB封装与Silicon Laboratories公司(原Cygnal公司)提供的TQ100封装稍有不同(在cygnalpcb文件中): 作者所做引脚长为2.5 mm,而cygnalpcb文件中的引脚长为1.3 mm。加长引脚焊盘是为了方便手工焊芯片。用户可根据需要和习惯选择封装。
上传时间: 2013-11-19
上传用户:
单片机原理与应用《课程简介》:单片机已成为电子系统中进行数据采集、信息处理、通信联络和实施控制的重要器件。通常利用单片机技术在各种系统、仪器设备或装置中,形成嵌入式智能系统或子系统。因此,单片机技术是电类专业特别是电子信息类学生必须具备的基本功。本课程以51系列单片机为模型,主要向学生介绍单片机的基本结构、工作原理、指令系统与程序设计、系统扩展与工程应用。作为微机原理与接口技术的后续课程,本课程强调实践环节,侧重系统构成与应用设计。力求通过实践环节,软、硬结合,培养初步的单片机开发能力,并使其前导课程讲授的基本概念得到综合与深化。由于课时的限制,综合性的应用设计安排在后续课程《微机应用系统设计》中进行。 课 程 内 容:第一章 单片微型计算机概述单片机的发展与应用 MCS-51系列单片机简介第二章 MCS-51系列单片机结构MCS-51单片机基本结构 CPU 时序简介 存储器空间结构 片内RAM与SFR时钟电路与复位电路 并行I/O口与总线扩展第三章 MCS-51单片机指令系统指令系统简介数据传送指令 数据处理指令 位处理指令 程序控制指令汇编语言程序设计方法 程序调试的常用方法第四章 SCB-I 单片单板机SCB-I 单片单板机结构简介 监控系统简介SCB-I 单片单板机的基本操作 第五章 单片机常用接口电路的软、硬件设计LED显示接口电路与应用编程键盘接口电路与应用编程计数器/定时器工作原理及其应用编程MCS-51中断系统及其应用编程8255扩展并行接口及其应用编程串行通信接口及其应用编程A/D与D/A转换接口及其应用编程*第六章 单片机应用系统设计举例第七章 单片机开发工具简介* 加“*”为选讲内容教学要求:1、 了解单片机的一般性概念及单片机技术的发展。2、 掌握51系列单片机的基本结构与工作原理。3、 掌握51系列单片机的指令系统与程序设计的基本方法。4、 以单片单板机为样板,掌握51系列单片机的系统扩展设计。5、 通过实验,掌握单片机常用接口电路的软硬件设计及其应用。6、 以上为本课程的基本要求。作为提高要求,对有能力、有兴趣的学生,若能较快地完成基本实验,可在规定课时内安排有一定难度的综合性实验,以提高其应用设计的能力。 课时安排和考核方式:1、 讲课40学时,实验20学时,课内外学时比 1:2 ;(实验从第七周开始,7个基本实验,选做1个综合实验)2、 考核方式平时考查 20实验考核 40(含实验过程、实验验收与实验报告)期末笔试 40参考书:《MCS-51单片机应用设计》 张毅刚 等编 哈尔滨工业大学出版社《MCS-51系列单片机原理及应用》 孙涵芳 徐爱卿 编著 北京航空航天大学出版社《单片微机与测控技术》 赵秀菊 等编 东南大学出版社《单片微型机原理、应用与实验》 张友德 等编 复旦大学出版社 《单片机实验》 肖璋 雷兆宜 编 暨南大学讲义
上传时间: 2014-01-08
上传用户:417313137
C8051Fxxx 系列单片机是完全集成的混合信号系统级芯片,具有与8051 兼容的微控制器内核,与MCS-51 指令集完全兼容。除了具有标准8052 的数字外设部件之外,片内还集成了数据采集和控制系统中常用的模拟部件和其它数字外设及功能部件。参见表1.1 的产品选择指南可快速查看每个MCU 的特性。 MCU 中的外设或功能部件包括模拟多路选择器、可编程增益放大器、ADC、DAC、电压比较器、电压基准、温度传感器、SMBus/ I2C、UART、SPI、可编程计数器/定时器阵列(PCA)、定时器、数字I/O 端口、电源监视器、看门狗定时器(WDT)和时钟振荡器等。所有器件都有内置的FLASH 程序存储器和256 字节的内部RAM,有些器件内部还有位于外部数据存储器空间的RAM,即XRAM。C8051Fxxx 单片机采用流水线结构,机器周期由标准的12 个系统时钟周期降为1 个系统时钟周期,处理能力大大提高,峰值性能可达25MIPS。C8051Fxxx 单片机是真正能独立工作的片上系统(SOC)。每个MCU 都能有效地管理模拟和数字外设,可以关闭单个或全部外设以节省功耗。FLASH 存储器还具有在系统重新编程能力,可用于非易失性数据存储,并允许现场更新8051 固件。应用程序可以使用MOVC 和MOVX 指令对FLASH 进行读或改写,每次读或写一个字节。这一特性允许将程序存储器用于非易失性数据存储以及在软件控制下更新程序代码。片内JTAG 调试支持功能允许使用安装在最终应用系统上的产品MCU 进行非侵入式(不占用片内资源)、全速、在系统调试。该调试系统支持观察和修改存储器和寄存器,支持断点、单步、运行和停机命令。在使用JTAG 调试时,所有的模拟和数字外设都可全功能运行。每个MCU 都可在工业温度范围(-45℃到+85℃)内用2.7V-3.6V(F018/019 为2.8V-3.6V)的电压工作。端口I/O、/RST 和JTAG 引脚都容许5V 的输入信号电压。
上传时间: 2013-11-14
上传用户:jiangshandz
第一章 单片机仿真器的开发 第二节 单片机应用系统的开发 第三节 SICE-Ⅳ型单片机仿真器 第四节 用户程序的编辑、汇编、调试、固化及运行? . . .第八章 PL/M语言简介
上传时间: 2013-11-04
上传用户:xiaoyunyun
自制单片机MSP-FET430仿真器 前言:本想到市场买个自制的MSP-FET430仿真工具,但看其做工可不敢恭维。于是打开当时千元购买的FET(1个不够用啊),又参网上提供的自制FET的资料,依南士接插件的外壳尺寸绘制了自认为布板较合理的PCB使用。上图为电路参考原型,注意图中FET 的连接形式(25 针屏蔽电缆转接线,长度小于20 厘米的扁平线),这样的连接更利于下载调试的可靠性。.....
上传时间: 2013-11-20
上传用户:xdqm
为了在小型音乐广播系统中实现对10路发射信号传输频点的控制和对音乐类型数据的接收及存储,提出了一种基于ATmega16单片机和BH1415F调频芯片的播控端软件设计方案并给出了调试仿真方法。该方案中采用ATmega16单片机从I2C主设备接收音乐类型数据、频点控制数据,并且将频点控制数据处理后,转发给BH1415调频芯片,实现频点控制;将音乐类型数据存储起来,供语音录放模块控制播放顺序用。调试仿真和实际应用结果表明,本方案可正确控制调制频点,高效接收和存储音乐类型数据。
上传时间: 2013-10-17
上传用户:1037540470