190 likes | 398 Views
技能实训 3 可编程单片机实现 PWM 波. 一、实验目的 二、实验设备 三、实验原理 四、实验步骤 五、实验要求及注意事项 六、问题思考. 一、实验目的. 1 、熟悉单片机基本使用方法 2 、熟练编写单片机 PWM 程序 3 、在微控制器领域里的开始. 二、实验设备. PC 机一台、双通道示波器一台、 STC89C52 单片机下载器一个、光伏逆变原理与检测实验箱一台. 三、实验原理. 1.1 STC89C52 单片机
E N D
一、实验目的 二、实验设备 三、实验原理 四、实验步骤 五、实验要求及注意事项 六、问题思考
一、实验目的 1、熟悉单片机基本使用方法 2、熟练编写单片机PWM程序 3、在微控制器领域里的开始
二、实验设备 PC机一台、双通道示波器一台、STC89C52单片机下载器一个、光伏逆变原理与检测实验箱一台
三、实验原理 1.1 STC89C52单片机 单片微型计算机简称单片机,是典型的嵌入式微控制器。单片机芯片常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。单片机由运算器、控制器、存储器、输入输出设备构成,相当于一个微型的计算机(最小系统),和计算机相比,单片机缺少了外围设备等。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。它最早是被用在工业控制领域。
由于单片机在工业控制领域的广泛应用,单片机由仅有CPU的专用处理器芯片发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。由于单片机在工业控制领域的广泛应用,单片机由仅有CPU的专用处理器芯片发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。 STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
具有以下标准功能:8k字节Flash,512字节RAM,32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,3个16 位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。另外STC89C52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。
1.2 程序编写软件keil3及烧写软件 Keil公司是一家业界领先的微控制器(MCU)软件开发工具的独立供应商。Keil公司由两家私人公司联合运营,分别是德国慕尼黑的Keil Elektronik GmbH和美国德克萨斯的Keil Software Inc。Keil公司制造和销售种类广泛的开发工具,包括ANSI C编译器、宏汇编程序、调试器、连接器、库管理器、固件和实时操作系统核心(real-time kernel)。有超过10万名微控制器开发人员在使用这种得到业界认可的解决方案。其Keil C51编译器自1988年引入市场以来成为事实上的行业标准,并支持超过500种8051变种。
Keil 3是2006年1月30日Keil推出全新的针对各种嵌入式处理器的软件开发工具,集成Keil μVision3的RealView MDK开发环境。RealView MDK开发工具KeilμVision3源自Keil公司。RealView MDK集成了业内领先的技术,包括Keil μVision3集成开发环境与RealView编译器。支持ARM7、ARM9和最新的Cortex-M3核处理器,自动配置启动代码,集成Flash烧写模块,强大的Simulation设备模拟,性能分析等功能,与ARM之前的工具包ADS等相比,RealView编译器的最新版本可将性能改善超过20%。
1.3 单片机产生PWM波 单片机产生PWM波的方式有好几种,可利用Timer0、Timer1、Timer2、IO延时循环输出等。
四、实验步骤 1、用keil3新建工程 首先安装keil3后将其打开,点击菜单栏的文件新建工程,为目标选择设备,选择Atmel中的AT89C52。AT89C52与STC89C52结构相同,keil3中没有STC89C52这款单片机,所以选择AT89C52。
再点击菜单栏的文件,新建文件,键入代码后,保存为.C文件。再点击菜单栏的文件,新建文件,键入代码后,保存为.C文件。 再将该C文件工程的文件组中,编译文件,直到修改到没有错误为止。点击目标选项,在项目一栏选择16M晶振、输出点击产生HEX文件。
2、用STC-ISP烧写程序 现将下载器接入电脑的USB端口,再在电脑上打开设备管理器,查看下载器是端口(COM和LPT)中的哪个端口,打开STC-ISP软件,在MCU选择STC89C52,打开文件为需要烧写的HEX文件,COM端选择下载器所处的COM端,波特率选择9600,点击下载后,给单片机冷启动,即先不上电再上电。上电开关是面板上的ISP下载端右边的绿色按钮。
3、观察单片机输出波形 打开电源开关、用示波器观察单片机输出端是否有方波,用示波器两个通道同时测单片机输出是否反相,示波器负端接117口。
五、实验要求及注意事项 本次实验前需认真预习51系列单片机知识,才能充分掌握本次试验的原理。 由于硬件关系,程序的PWM波输出口只能用P1.4口,才能看到现象。注意:此次实验时只打开试验箱的电源开关,其它开关均都不打开。
六、问题思考 1、编写一个PWM占空比每秒增加1%的程序,从1%—99%循环变化,并用示波器观察。 2、SPWM是什么?