C8051F021单片机实验指导
C8051F021单片机实验指导
提要:实验项目1、单片机的IO编程实验1 IO开关量输入实验实验2 IO输出驱动继电器(或光电隔离器)实验实验3 IO输入/输出------半导体温度传感器DS18B20实验2、单片机的中断系统实验1 外部外部中断----脉冲计数实验3、单片机的定时器/计数器实验1 计数器实验实验2 秒时钟发生器实验4、单片机的串口特点和编程实验1 P C机串口通讯实验实验2 R S485通讯实验5、存储器实验1 RAM存储器读写实验6、PWM发生器实验1 PWM发生器(模拟)实验实验1 PWM发生器(内部)实验7、WDG看门狗实验1 外扩WDG(MAX813)实验实验2 WDG(内部)实验8、SPI总线实验1 SPI(模拟)实验-----TLC2543 AD转换实验实验2 SPI(模拟)实验-----TLV5616 DA转换实验9、I2C总线实验1 I2C(模拟)实验-----AT24C01读写实验实验2 I2C(内部)实验-----AT24C01读写实验10、综合实验实验1 HD7279LED数码管显示实验实验2 HD7279键盘实验实验3 外部中断---电机转速显示实验11、步进电机正反转实验12、TFT液晶显示彩色条纹实验13、16X16LED点阵显示汉字实验一、单片机的IO编程实验1 IO开关量输入实验目的:学习单片机读取IO引脚状态的的方法。
内容:编程读取IO引脚状态。
设备:EL-EMCU-I试验箱、EXP-C8051F021 CPU板。
编程:首先要把相关的引脚设置在IO的输入状态,然后写一个循环,不停地检测引脚的状态。
步骤:1、将CPU板正确安放在CPU接口插座上,2、连线:用导线将试验箱上MCU部分的IO1--- IO8分别连接到SWITCH 的8个拨码开关的K1---K8的输出端子K1---K8上,连接好仿真器。
3、试验箱上电,在PC机上打开Keil C环境,打开试验程序文件夹IO_INPUT 下的工程文件IO_INPUT.Uv2编译程序,上电,在函数main()的最后一句设置断点,进入调试状态,打开窗口Peripherals-->IO-Port-->P3,改变开关状态,运行程序到断点处,观察窗口的数值与开关的对应关系。
基于C8051F021的剩余电压测量系统设计
2 硬件 电路设计和关键模块分析
种以单片机 C 0 1 01 8 5F 2 为核心控制单元 的智能
微 处 理器 选 用单片机 C 0 10 1 为控 制 85F 2 作
测量系统,实现了对用电没备剩余 电压的测量。
器, 控制电压的通断电以及信号采集 、 显示等工作。
单片机 C 010 1 8 5F 2 的主要特点是 : 内核和指令系
由单片机系统 、相位检 测电路、断电控制电路与
驱动电路、电压采集 电路、L D显示、按键输入 K i C 1 C e — 5 的编译环境,程序代码可读性和移植性 l 等几 部分组成。系统工作流程如下 : 连接测量样品, 强 。
确定接线无误后, 按下开关键 , 系统先进行初始化 , 电源指示灯亮,L D显示交流电压的实时值,操 C 作员通过调压旋钮将 电压稳定到 2 0 在测量前, 2V;
1 系统结构及功能
系统 的结 构框 图如 图 1 示 ,整 个系统 主要 所
统与 MC 一 1 Sபைடு நூலகம்5 系列单片机完全兼容 ; 指令执行速
度高达 2MIS; 5 P 全部 I 、R T T G引脚均允 / S 、JA 0 许5 V输入 ; 运行程序过程中可进行 内部、外部时 钟切换以减小单片机功耗等。软件运行环境采用
s se b r c c e t y t m y p a t a t s. il
Ke wo ds C8 5 F; R e iua Vo mg ; me s r me t y tm y r : 0 1 s l d l e au e n s s e
★基金项 目 : 中国
长基金项 目 《 电器产 品剩余 电压 检测方法的研究 》 2 1J 0 5 o ( 0 0K 1
8051单片机实验报告
8051单片机实验报告练习题一1-1修改例程一的源程序:(1)将A寄存器的初值改为80H(正逻辑,数据位为1表示发光二极管点亮),再对源程序进行简单修改,使程序运行后发光二极管点亮情况与修改前相同。
(2)将LED向左循环移位点亮改为向右循环移位点亮。
(3)加快LED循环移位点亮的速度。
(1)在源程序MOV A,#080H后加CPL A(对A取反,80H取反后为7FH)。
(2)将RR A改为RL A。
(3)删除几个CALL DELAY。
1-2将例程二0-F的循环显示改为0-9的循环显示。
将源程序中CJNE A,#10H,MAIN改为CJNE A,#0AH,MAIN.练习题二2-1通过对例程5的程序进行修改和上机调试,改变原程序的功能。
(1)将KEY2,KEY4的功能对调。
(2)每次停下再启动后,更改发光二极管点亮的循环方向。
(1)将ORG 0003H改为0013H,将ORG 0013H改为0003H;将MOV IP,#01H改为MOV IP,#04H;将SETB EX1改为SETB EX0,将SETB EX0改为SETB EX1,将CLR EX0改为CLR EX1;将CLR IE1改为CLR IE0,将CLR IE0改为CLR IE1;(2)程序如下,主要利用两个循环分别进行左移与右移。
$include (C8051F020.inc)ORG 0000HLJMP INITIALORG 0013HLJMP STARORG 0003HLJMP STOPORG 0100HINITIAL: LCALL Init_DeviceMOV R4,#0FHMOV P3,#0FFHMOV A,#0FFHMOV DPTR,#7F80HMOVX @DPTR,AMOV A,#0FEHMOV R1,#1HMOV IP,#04HMOV TCON,#05HSETB EX0SETB EALOOP1: CLR EACJNE R4,#0FH,LOOP2RL ACJNE R4,#0FH,LOOP2MOV P3,ACJNE R4,#0FH,LOOP2INC R1CJNE R4,#0FH,LOOP2SETB EALCALL DELAY1LCALL DELAY1LCALL DELAY1LCALL DELAY1CJNE R1,#8,LOOP1MOV R1,#0HSJMP LOOP1LOOP2: CLR EACJNE R4,#0F0H,LOOP1RR ACJNE R4,#0F0H,LOOP1MOV P3,ACJNE R4,#0F0H,LOOP1DEC R1SETB EALCALL DELAY1LCALL DELAY1LCALL DELAY1LCALL DELAY1CJNE R1,#0,LOOP2MOV R1,#8SJMP LOOP2STOP: PUSH ACCMOV A,R1MOV DPTR,#TABMOVC A,@A+DPTRMOV DPTR,#7F80HMOVX @DPTR,ASETB EX1JNZ $MOV A,#0FFHMOVX @DPTR,ACLR EX1POP ACCCLR IE0RETISTAR: MOV A,#00HCLR IE1PUSH ACCMOV A,R4CPL AMOV R4,APOP ACCRETITAB: DB 0C0H,0F9H,0A4H,0B0H,099HDB 092H,082H,0F8H,080H DELAY1: MOV R6,#0D1: MOV R7,#0DJNZ R7,$DJNZ R6,D1RET$include (Init_Device.inc) ;END2-2修改例程6,将计数范围由0-F扩展至00-FF(使用定时器/计时器0),并在2位数码管上用10进制数显示计数结果(00-99)。
8051单片机实训指导书
单片机实验指导书基础部分实训1 认识单片机一、单片机概述一台能够工作的计算机要有这样几个部份构成:CPU(进行运算、控制)、RAM (数据存储)、ROM(程序存储)、输入/输出设备(例如:串行口、并行输出口等)。
在个人计算机上这些部份被分成若干块芯片,安装一个称之为主板的印刷线路板上。
而在单片机中,这些部份,全部被做到一块集成电路芯片中了,所以就称为单片(单芯片)机,而且有一些单片机中除了上述部份外,还集成了其它部份如A/D,D/A等。
二、单片机的外部结构(1)单片机的引脚拿到一块芯片,想要使用它,首先必须要知道怎样连线,我们用的一块称之为89C51的芯片,下面我们就看一下如何给它连线。
电源:这当然是必不可少的了。
单片机使用的是5V电源,其中正极接40引脚,负极(地)接20引脚。
振蒎电路:单片机是一种时序电路,必须提供脉冲信号才能正常工作,在单片机内部已集成了振荡器,使用晶体振荡器,接18、19脚。
只要买来晶振,电容,连上就可以了,按图1-1接上即可。
复位引脚:按图1-1中画法连好,至于复位是何含义及为何需要复要复位,在单片机功能中介绍。
EA引脚:EA引脚接到正电源端。
至此,一个单片机就接好,通上电,单片机就开始工作了。
图1-1(二)单片机芯片引脚功能1.主电源引脚(1)GND 接地(2)VCC正常操作时为十5V电源。
2.时钟电路引脚(1)XTAL1:(2)XTAL2:3.控制线与电源复用引脚(1)RST/VPD:RST是复位信号,高电平有效。
VPD为第二功能,即备用电源输入端。
(2)ALE/PROG:ALE为地址锁存允许信号输出引脚。
PROG为编程信号,第二功能,低电平有效。
(3)PSEN:片外ROM选通信号输出端,低电平有效。
(4)EA/VPP:EA为内部和外部ROM控制端当EA=1时,从内ROM开始访问当EA=0时,只访问外部ROMVPP是编程电源输入端4.并行输入/输出引脚(1)P0口:P0.0~P0.7统称为P0口(2)P1口:P1.0~P1.7统称为P1口(3)P2口:P2.0~P2.7统称为P2口(4)P3口:P3.0~P3.7统称为P3口P3口每一位可用作第二功能,而且P3口的每一条引脚都可以独立设置为第一功能的I/O口功能和第二功能。
C8051F021型单片机实现数据采集系统
C8051F021型单片机实现数据采集系统
介绍的功角测量数据采集卡是采用Cygnal 公司C8051F021 型单片机实现的PCI 总线接口卡。
该卡通过2 片双口RAM 分别实现与GPS 接收板和上位机(PC)的数据交换,从而实现高速、可靠的数据采集、处理与传送。
本数据采集卡采用片内12 位高速ADC 并配以片外采样保持电路,通过直接交流采样方法精确快速地实现对电压和电流的采样,保证了电力系统实时测量的要求。
1 引言
实现自动化的过程中,首要环节就是数据采集。
为此我们研究开发了电力系统功角广域测控系统,其中,用C8051F021 型单片机实现的数据采集卡不仅可以准确、高效、实时地进行AD 数据采集并通过双口RAM 和PCI 接口与上位机交换数据,还可以通过与GPS 接收通信接收秒脉冲实现采集数据异地同步。
2 功角及其测量
2.1 发电机的功角
发电机通过变压器、输出线路与无限大容量系统母线联接组成的输电系统如
若
上式也称作发电机的功率特性。
式中Xd∑=Xd+XTL,其中Xd 为发电机d 轴等值电抗,XTL 为发电机与无限大系统间的联系电抗,Eq 为发电机的空载电势,V、I 为系统参考母线电压和电流,ψ为母线电压与电流间的
相位差。
当发电机的电势Eq 和受端电压V 均恒定时,传输功率P 是角度
δ的正弦函数,角度δ为Eq 与V 之间的相位差角。
因功率P 的大小与δ角度切相关,因此称δ为功率角或功角。
C8051F020入门指导
接到端口I/O引脚。
DAC为电压输出方式,有灵活的输出更新机制。这一机制允许 用软件写和定时器2、定时器3及定时器4的溢出信号更新DAC输出。
C8051F020/2的DAC之电压基准由专用的VREFD输入引脚提供,而
C8051F021/3的DAC之电压基准由器件内部的电压基准提供。DAC在 作为比较器的参考电压或为ADC差分输入提供偏移电压时非常有用。
1.9 比较器和DAC
C8051F020/1/2/3系列MCU内部有两个12位DAC和两个比较器。 MCU与每个比较器和DAC之间的数据和控制接口通过特殊功能寄存 器实现。MCU可以将任何一个DAC或比较器置于低功耗关断方式。 比较器的回差电压可以用软件编程。每个比较器都能在上升沿、下 降沿或在两个边沿都产生中断。这些中断能将MCU从休眠方式唤醒。比 较器的输出状态可以用软件查询。可通过设置交叉开关将比较器的输出
1.8 8 位模/数转换器
C8051F020有一个片内8位SAR ADC(ADC1),带有一个8通道输入多路 选择器和可编程增益放大器。该ADC工作在500ksps的最大采样速率时可提供 真正的8位精度,INL为±1LSB。有8个用于测量的输入端。ADC1完全由CIP51通过特殊功能寄存器控制。ADC0的电压基准可以在模拟电源电压(AV+) 和一个外部VREF引脚之间选择。
配置为两个单端输入或一个差分输入。
可编程增益放大器接在模拟多路选择器之后,增益可以用软件设置,从 0.5到16以2的整数次幂递增。 A/D转换有4种启动方式:软件命令、定时器2溢出、定时器3溢出和外部 信号输入。这种灵活性允许用软件事件、外部硬件信号或周期性的定时器 溢出信号触发转换。 转换结束由一个状态位指示,或者产生中断(如果中断被使能)。在转 换完成后,10或12位转换结果数据字被锁存到两个特殊功能寄存器中。这 些数据字可以用软件控制为左对齐或右对齐。
C8051F2xx 开发板用户指南说明书
Rev. 0.6 9/06Copyright © 2006 by Silicon LaboratoriesC8051F2xx-DKXX EVELOPMENT IT SER S UIDE1. Kit ContentsThe C8051F2xx Development Kits contain the following items:•C8051F206 or C8051F226 Target Board•C8051Fxxx Development Kit Quick-Start Guide•Silicon Laboratories IDE and Product Information CD-ROM. CD content includes:•Silicon Laboratories Integrated Development Environment (IDE)•Keil Software 8051 Development Tools (macro assembler, linker, evaluation ‘C’ compiler)•Source code examples and register definition files •Documentation•C8051F2xx Development Kit User’s Guide (this document)•AC to DC Power Adapter•USB Debug Adapter (USB to Debug Interface)•USB Cable2. Hardware Setup using a USB Debug AdapterThe target board is connected to a PC running the Silicon Laboratories IDE via the USB Debug Adapter as shown in Figure 1.1.Connect the USB Debug Adapter to the JTAG connector on the target board with the 10-pin ribbon cable.2.Connect one end of the USB cable to the USB connector on the USB Debug Adapter.3.Connect the other end of the USB cable to a USB Port on the PC.4.Connect the ac/dc power adapter to power jack P1 on the target board.Notes:•Use the Reset button in the IDE to reset the target when connected using a USB Debug Adapter.•Remove power from the target board and the USB Debug Adapter before connecting or disconnecting the ribbon cable from the target board. Connecting or disconnecting the cable when the devices have power can damage the device and/or the USB Debug Adapter.Figure 1. Hardware Setup using a USB Debug AdapterPWRP1.6C8051F2xx-DK3. Software SetupThe included CD-ROM contains the Silicon Laboratories Integrated Development Environment (IDE), Keil software 8051 tools and additional documentation. Insert the CD-ROM into your PC’s CD-ROM drive. An installer will auto-matically launch, allowing you to install the IDE software or read documentation by clicking buttons on the Installa-tion Panel. If the installer does not automatically start when you insert the CD-ROM, run autorun.exe found in the root directory of the CD-ROM. Refer to the readme.txt file on the CD-ROM for the latest information regarding known IDE problems and restrictions.4. Silicon Laboratories Integrated Development EnvironmentThe Silicon Laboratories IDE integrates a source-code editor, source-level debugger and in-system Flash program-mer. The use of third-party compilers and assemblers is also supported. This development kit includes the Keil Software A51 macro assembler, BL51 linker and evaluation version C51 ‘C’ compiler. These tools can be used from within the Silicon Laboratories IDE.4.1. System RequirementsThe Silicon Laboratories IDE requirements:•Pentium-class host PC running Microsoft Windows 98SE or later.•One available COM or USB port.•64 MB RAM and 40MB free HD space recommended.4.2. Assembler and LinkerA full-version Keil A51 macro assembler and BL51 banking linker are included with the development kit and are installed during IDE installation. The complete assembler and linker reference manual can be found under the Help menu in the IDE or in the “SiLabs\MCU\hlp” directory (A51.pdf).4.3. Evaluation C51 ‘C’ CompilerAn evaluation version of the Keil C51 ‘C’ compiler is included with the development kit and is installed during IDE installation. The evaluation version of the C51 compiler is the same as the full professional version except code size is limited to 4kB and the floating point library is not included. The C51 compiler reference manual can be found under the Help menu in the IDE or in the “SiLabs\MCU\hlp” directory (C51.pdf).4.4. Using the Keil Software 8051 Tools with the Silicon Laboratories IDETo perform source-level debugging with the IDE, you must configure the Keil 8051 tools to generate an absolute object file in the OMF-51 format with object extensions and debug records enabled. You may build the OMF-51 absolute object file by calling the Keil 8051 tools at the command line (e.g. batch file or make file) or by using the project manager built into the IDE. The default configuration when using the Silicon Laboratories IDE project manager enables object extension and debug record generation. Refer to Applications Note AN104 - Integrating Keil 8051 Tools Into the Silicon Labs IDE in the “SiLabs\MCU\Documentation\Appnotes” directory on the CD-ROM for additional information on using the Keil 8051 tools with the Silicon Laboratories IDE.To build an absolute object file using the Silicon Laboratories IDE project manager, you must first create a project.A project consists of a set of files, IDE configuration, debug views, and a target build configuration (list of files and tool configurations used as input to the assembler, compiler, and linker when building an output object file).The following sections illustrate the steps necessary to manually create a project with one or more source files, build a program and download the program to the target in preparation for debugging. (The IDE will automatically create a single-file project using the currently open and active source file if you select Build/Make Project before a project is defined.)C8051F2xx-DK4.4.1. Creating a New Project1.Select Project→New Project to open a new project and reset all configuration settings to default.2.Select File→New File to open an editor window. Create your source file(s) and save the file(s) with a rec-ognized extension, such as .c, .h, or .asm, to enable color syntax highlighting.3.Right-click on “New Project” in the Project Window. Select Add files to project. Select files in the filebrowser and click Open. Continue adding files until all project files have been added.4.For each of the files in the Project Window that you want assembled, compiled and linked into the targetbuild, right-click on the file name and select Add file to build. Each file will be assembled or compiled as appropriate (based on file extension) and linked into the build of the absolute object file.Note: If a project contains a large number of files, the “Group” feature of the IDE can be used to organize.Right-click on “New Project” in the Project Window. Select Add Groups to project. Add pre-definedgroups or add customized groups. Right-click on the group name and choose Add file to group. Select files to be added. Continue adding files until all project files have been added.4.4.2. Building and Downloading the Program for Debugging1.Once all source files have been added to the target build, build the project by clicking on the Build/MakeProject button in the toolbar or selecting Project→Build/Make Project from the menu.Note: After the project has been built the first time, the Build/Make Project command will only build the files that have been changed since the previous build. To rebuild all files and project dependencies, click on the Rebuild All button in the toolbar or select Project→Rebuild All from the menu.2.Before connecting to the target device, several connection options may need to be set. Open theConnection Options window by selecting Options→Connection Options... in the IDE menu. First, select the appropriate adapter in the “Serial Adapter” section. Next, the correct “Debug Interface” must be selected.C8051F2xx family devices use the JTAG debug interface. Once all the selections are made, click the OK button to close the window.3.Click the Connect button in the toolbar or select Debug→Connect from the menu to connect to the device.4.Download the project to the target by clicking the Download Code button in the toolbar.Note: To enable automatic downloading if the program build is successful select Enable automatic con-nect/download after build in the Project→Target Build Configuration dialog. If errors occur during the build process, the IDE will not attempt the download.5.Save the project when finished with the debug session to preserve the current target build configuration,editor settings and the location of all open debug views. To save the project, select Project->Save Project As... from the menu. Create a new name for the project and click on Save.C8051F2xx-DK5. Example Source CodeExample source code and register definition files are provided in the “SiLabs\MCU\Examples\C8051F2xx”directory during IDE installation. These files may be used as a template for code development. Example applications include a blinking LED example which configures the green LED on the target board to blink at a fixed rate.5.1. Register Definition FilesRegister definition files C8051F200.inc and C8051F200.h define all SFR registers and bit-addressable control/status bits. They are installed into the “SiLabs\MCU\Examples\C8051F2xx” directory during IDE installation. The register and bit names are identical to those used in the C8051F2xx data sheet. Both register definition files are also installed in the default search path used by the Keil Software 8051 tools. Therefore, when using the Keil 8051 tools included with the development kit (A51, C51), it is not necessary to copy a register definition file to each project’s file directory.5.2. Blinking LED ExampleThe example source files blink.asm and blinky.c show examples of several basic C8051F2xx functions. These include; disabling the watchdog timer (WDT), configuring the Port I/O crossbar, configuring a timer for an interrupt routine, initializing the system clock, and configuring a GPIO port. When compiled/assembled and linked this program flashes the green LED on the target board about five times a second using the interrupt handler with a timer.C8051F2xx-DK 6. Target BoardThe C8051F2xx Development Kit includes a target board with a C8051F206/26 device pre-installed for evaluation and preliminary software development. Numerous input/output (I/O) connections are provided to facilitate prototyping using the target board. Refer to Figure2 for the locations of the various I/O connectors.P1Power connector (accepts input from 7 to 15 VDC unregulated power adapter)J1VDDMonEn, Ties MONEN to +3VD2 or GND to enable/disable the VDD monitorJ264-pin I/O connector providing access to all I/O signalsP2.5Connects SW2 to port pin P2.5LED Connects LED D2 to port pin P2.4PWMIN Connects PWM low-pass filter to port pin P2.7J4JTAG connector for Debug Adapter interfaceJ5Connects P3.0 to analog signal from J6J6Analog I/O configuration connectorJ7Connects P3.1 to analog signal from J6X1Analog I/O terminal blockFigure 2. C8051F206 and C8051F226 Target BoardsC8051F2xx-DK6.1. System Clock SourcesThe C8051F2xx device installed on the target board features a internal oscillator which is enabled as the system clock source on reset. After reset, the internal oscillator operates at a frequency of 2MHz (+/-2%) by default but may be configured by software to operate at other frequencies. Therefore, in many applications an external oscillator is not required. However, an external crystal may be installed on the target board for additional applications. The target board is designed to facilitate the installation of an external crystal at the pads marked Q1. Refer to the C8051F2xx datasheet for more information on configuring the system clock source. Following are a few part numbers of suitable crystals:Freq(MHz)Digikey P/N ECS P/N22.1184X063-ND ECS-221-20-1 (20pF loading capacitance)18.432X146-ND ECS-184-20-1 (20pF loading capacitance)11.0592X089-ND ECS-110.5-20-1 (20pF loading capacitance)6.2. Switches and LEDsTwo switches are provided on the target board. Switch SW1 is connected to the RESET pin of the C8051F2xx device on the target board. Pressing SW1 puts the device into its hardware-reset state. The device will leave the reset state after SW1 is released. Switch SW2 is connected to the device’s general purpose I/O (GPIO) pin through headers. Pressing SW2 generates a logic low signal on the port pin. Remove the shorting block from the header to disconnect SW2 from the port pins. The port pin signal is also routed to a pin on the J2 I/O connector. See Table1 for the port pins and headers corresponding to each switch.Two LEDs are also provided on the target board. The red LED labeled PWR is used to indicate a power connection to the target board. The green LED labeled with a port pin name is connected to the device’s GPIO pin through headers. Remove the shorting block from the header to disconnect the LED from the port pin. The port pin signal is also routed to a pin on the J2 I/O connector. See Table1 for the port pins and headers corresponding to each LED.Table 1. Target Board I/O DescriptionsDescription I/O HeaderSW1Reset noneSW2P2.5P2.5Green LED P2.4LEDRed LED PWR none6.3. Target Board JTAG Interface (J4)The JTAG connector (J4) provides access to the JTAG pins of the C8051F2xx. It is used to connect the Serial Adapter or the USB Debug Adapter to the target board for in-circuit debugging and Flash programming. Table2 shows the JTAG pin definitions.Table 2. JTAG Connector Pin DescriptionsPin #Description1+3VD (+3.3VDC)2, 3, 9GND (Ground)4TCK5TMS6TDO7TDI8, 10Not ConnectedC8051F2xx-DK6.4. Analog I/O (J5, J6, J7, Terminal Block)An Analog I/O Configuration connector (J6) provides the ability to route analog I/O signals from the C8051F2xx to a terminal block in addition to connector J2 by installing shorting blocks on J6. Additionally, if shorting blocks are installed on J5 and J7, the analog signals routed through J6 can be inputs to the C8051F2xx at port pins P3.0 and/or P3.1. The port pins can then be configured as inputs to the on-chip ADC for evaluation. J6 also allows the user to route analog signals from the terminal block to port pins P1.3 and P1.4. These port pin can then be configured as inputs to Comparator 1. The PWM signal from the low-pass filter is also routed to J6 to provide a user controlled analog voltage level. This signal can then be used to evaluate the on-chip ADC by placing a shorting block on J6 (provided the J5 or J7 header is shorted). Refer to Figure3 to determine the shorting block installation positions required to create the desired analog signal paths. Refer to Table3 for terminal block connections and Table4 for J6 pin definitions.Figure 3. J6 Analog I/O Configuration ConnectorTable 3. Terminal Block Pin DescriptionsPin #Description1VREF2GND7AIN28AIN1Table 4. J6 Connector Pin DescriptionsPin #Description1P1.4/CP1-2, 9, 10NC3AIN24P3.0AIN5P1.3/CP1+6PWM7AIN18P3.1AIN6.5. VDD Monitor Disable (J1)The VDD Monitor of the C8051F2xx may be disabled by moving the shorting block on J1 from pins 1-2 to pins 2-3, as shown in Figure4.Figure 4. VDD Monitor Hardware SetupC8051F2xx-DK6.6. Low-pass Filter (PWMIN)The C8051F2xx target board features a low-pass filter that may be connected to port pin P2.7. Install a shorting block on connector “PWMIN” to connect the P2.7 pin of the target device to the low-pass filter input. The output of the low-pass filter is routed to the PWM signal at J6[6]. To route the PWM signal to the ADC on the target device, a shorting block should be placed on “PWMIN”, and a shorting block placed on connector “P3.0AIN” (J5) or “P3.1AIN” (J7). Connector J6 is used to connect the PWM voltage to the P3.0AIN or P3.1AIN signal routed to the corresponding port pins (See Figure3). These port pins are then configured for use by the ADC.The C8051F2xx may be programmed to generate a PWM (Pulse-Width Modulated) waveform which is then input to the low-pass filter to implement a user-controlled PWM digital-to-analog converter. Refer to Applications Note AN110 - Implementing 16-Bit PWM Using an On-Chip Timer in the “Documentation” directory on the CD-ROM for a discussion on generating a programmable dc voltage level with a PWM waveform and low-pass filter.6.7. Expansion I/O Connector (J2)The target board provides access to all C8051F2xx signals (except the four JTAG signals: TCK, TMS, TDO and TDI used to connect the Emulation Cartridge – these are accessed using test points in place near the J4 header) via the 64-pin connector J2. A small through-hole prototyping area is also provided. All I/O signals routed to connector J2 are also routed to through-hole connection points between J2 and the prototyping area (see Figure2). The signal layout pattern of these connection points is identical to the adjacent J2 connector pins. Table5 shows the pin-out of the J2 connector.Table 5. J2 Pin DescriptionsPin Description Pin Description1,46,64+3VD2 (voltage supply)21P2.42XTAL122P2.53P1.623P2.24P1.724P2.35P1.425P2.06P1.526P2.17P1.227P3.68P1.328P3.79P1.029P3.410P1.130P3.511P0.631P3.212P0.732P3.313P0.433P3.014P0.534P3.115P0.236/RST16P0.339,41,42,45,47,63GND17P0.048,50PWM (pulse-width modulator) 18P0.153VREF19P2.662VDDMONEN20P2.7C8051F2xx-DK 7. SchematicC8051F2xx-DKD OCUMENT C HANGE L ISTRevision 0.4 to Revision 0.5⏹Section 1, added USB Debug Adapter and USB Cable.⏹Section 2, changed name from "Hardware Setup" to "Hardware Setup using an EC2 Serial Adapter".⏹Section 2, added 2 Notes bullets.⏹Section 2, removed Note from bottom of page.⏹Added Section 3, "Hardware Setup using a USB Debug Adapter".⏹Section 5.4.2, changed step 2 to include new instructions.⏹Section 7, J4, changed "Serial Adapter" to "Debug Adapter".⏹Target Board DEBUG Interface Section, added USB Debug Adapter.⏹DEBUG Connector Pin Descriptions Table, changed pin 4 to C2D.⏹Changed "jumper" to "header".⏹EC2 Serial Adapter section, added EC2 to the section title, table title and figure title.⏹EC2 Serial Adapter section, changed "JTAG" to "DEBUG".⏹Added "USB Debug Adapter" section.Revision 0.5 to Revision 0.6⏹Removed EC2 Serial Adapter from Kit Contents.⏹Removed Section 2. Hardware Setup using an EC2 Serial Adapter. See RS232 Serial Adapter (EC2) User's Guide.⏹Removed Section 8. EC2 Serial Adapter. See RS232 Serial Adapter (EC2) User's Guide.⏹Removed Section 9. USB Debug Adapter. See USB Debug Adapter User's Guide.DisclaimerSilicon Laboratories intends to provide customers with the latest, accurate, and in-depth documentation of all peripherals and modules available for system and software implementers using or intending to use the Silicon Laboratories products. Characterization data, available modules and peripherals, memory sizes and memory addresses refer to each specific device, and "Typical" parameters provided can and do vary in different applications. Application examples described herein are for illustrative purposes only. Silicon Laboratories reserves the right to make changes without further notice and limitation to product information, specifications, and descriptions herein, and does not give warranties as to the accuracy or completeness of the included information. Silicon Laboratories shall have no liability for the consequences of use of the information supplied herein. This document does not imply or express copyright licenses granted hereunder to design or fabricate any integrated circuits. The products must not be used within any Life Support System without the specific written consent of Silicon Laboratories. A "Life Support System" is any product or system intended to support or sustain life and/or health, which, if it fails, can be reasonably expected to result in significant personal injury or death. Silicon Laboratories products are generally not intended for military applications. Silicon Laboratories products shall under no circumstances be used in weapons of mass destruction including (but not limited to) nuclear, biological or chemical weapons, or missiles capable of delivering such weapons.Trademark InformationSilicon Laboratories Inc., Silicon Laboratories, Silicon Labs, SiLabs and the Silicon Labs logo, CMEMS®, EFM, EFM32, EFR, Energy Micro, Energy Micro logo and combinations thereof, "the world’s most energy friendly microcontrollers", Ember®, EZLink®, EZMac®, EZRadio®, EZRadioPRO®, DSPLL®, ISOmodem ®, Precision32®, ProSLIC®, SiPHY®, USBXpress® and others are trademarks or registered trademarks of Silicon Laboratories Inc. ARM, CORTEX, Cortex-M3 and THUMB are trademarks or registered trademarks of ARM Holdings. Keil is a registered trademark of ARM Limited. All other products or brand names mentioned herein are trademarks of their respective holders. Silicon Laboratories Inc.400 West Cesar ChavezAustin, TX 78701USAIoT Portfolio/IoT SW/HW /simplicity Quality /quality Support and Community 。
80C51单片机原理实验指导书
MCS51单片机实验指导书(第2版)2006.11.8 修改了音乐演奏程序中的有关休止符的BUG淮阴师范学院计算机科学系2006.9实验板结构实验板结构如下图所示:注意:实验板与PC机连接时一定要先连接串行通信电缆,然后再将其电源线插入USB 接口;拆除时先断开其电源,再断开串行通信电缆。
否则极易损坏PC机的串口。
最好先关闭微机电源,再连接或拆除实验板。
实验要求1、实验前预习实验内容,理解实验原理。
2、按规定时间进入实验室,登记领取实验板和连接线,按操作程序将实验板连接到PC 机上,开始实验。
2、实验完毕请指导老师确认后,按操作程序拆除实验板,将连接线收拾好,与实验板一起归还指导老师,方可离开实验室。
3、按时撰写并上交实验报告。
实验报告格式为:(1)实验目的,(2)实验内容,(3)源代码及流程图,(4)结果记录及分析,(5)思考题,(6)体会及设想。
51单片机集成开发环境MedWin V2.39简介1、安装从网站免费下载MedWin V2.39集成开发环境安装程序压缩包,将其释放后,按照默认路径安装到C:\Manley\PmedWin文件夹。
2、设置(1)每次启动MedWin会出现对话框,询问使用仿真器还是模拟仿真,应点击[模拟仿真]按钮。
(2)设置仿真器点击[设置]—[设置仿真器]命令,选择时钟频率为12兆赫兹。
(3)设置工作目录 MedWin 集成开发环境默认的工作目录为C:\MedWin\PMedWin,建议根据需要建立自己的工作目录。
注意:不得使用长文件名或长目录名!(4)设置编译器将C语言编译器C51(文件夹)拷贝到C:\MedWin文件夹下,点击[设置]—[设置编译工具]命令,打开“设置编译工具”对话框,使用汇编语言时选择第一行,使用C语言时选择第二行,如下图所示。
3、使用(1)新建项目点击[项目管理]—[新建项目] 命令,输入项目名称,点击[确定]按钮,出现“添加项目文件”对话框,输入源代码文件名,如T1.C(或T1.ASM),单击[打开]按钮,出现代码窗口,即可开始编程。
C8051F系列实验指导书
第二章 C8051单片机实验内容
三 实验硬件电路,LED电路见图2-1,开关电 路见图2-2,
图2-1 八位LED灯电路图
第二章 C8051单片机实验内容
图2-2 拨档开关电路图
第二章 C8051单片机实验内容
C8051F020/1/2/3 内部有5 个计数器/定时器:其中三个16 位 计数器/定时器与标准8051 中的计数器/定时器兼容,还有两个 16 位自动重装载定时器可用于ADC、SMBus、UART1 或作为 通用定时器使用。
第一章:单片机实验设备简介
(5)、下载代码到FLASH: • 简单地按下生成工具栏中的下载按钮 或 使用Debug 菜单中的“Download”命令,就可 以下载程序到目标处理器的flash 中(注意: 只有在执行“Connect”命令后才能下载代码 到目标硬件)。 • 下载成功之后,点击运行/终止键(绿色圆点/ 红色)运行程序,再点即终止运行,终止后可 修改程序。
单片机与PLC技术实验指导书
实验地点: 一区主楼623房间 指导教师:胡振坤
进实验室领取C8051及PLC实验报告 带相关数据手册或课件,需要查阅。 不用带鞋套。
第一章:单片机实验设备简介
1.1 C8051F系统实验设备的组成 • NCD-CIP51F020 综合实验设备由 C8051F020 CPU 板和系统实验板二部分组 成,见图1-1,应用该设备可进行片上系统 单片机较典型应用的实验。
图2-3 定时器列表
第二章 C8051单片机实验内容
定时器3 是一个16 位的计数器/定时器,由两个8位的SFR组成, TMR3L(低字节)和TMR3H (高字节)。
图2-4 定时器3的工作方式
第二章
1 6 2 10
C8051F020单片机实验接线表
一、C8051F020单片机实验接线表(注:黑体部分已调试通过)3.8 WDT看门狗实验一、实验目的熟悉汇编语言编程,掌握C8051F020内部WDT的应用。
二、实验内容通过改变延时程序的延时值,使延时值分别小于和大于WDT设置的定时间隔,运行程序,观察P0.0控制的发光二极管L8的变化。
三、实验原理介绍MCU内部有一个使用系统时钟的可编程看门狗定时器(WDT)。
当看门狗定时器溢出时,WDT将强制CPU进入复位状态。
为了防止复位,必须在溢出发生前由应用软件重新触发WDT。
如果系统出现了软件/硬件错误,使应用软件不能重新触发WDT,则WDT将溢出并产生复位,这样可以防止系统失控。
WDT是一个使用系统时钟的21位定时器。
该定时器检测对其控制寄存器的两次写操作的时间间隔。
如果这个时间间隔超过了编程的极限值,将产生WDT复位。
可以根据需要用软件允许和禁止WDT,或根据需要将其设置为永久性允许状态。
可以通过看门狗定时器控制寄存器(WDTCN)控制看门狗的功能。
(1)允许/复位WDT看门狗定时器的允许和复位是通过向WDTCN寄存器写入0xA5来实现的。
用户的应用软件应周期性地向WDTCN写入0xA5,以防止看门狗定时器溢出。
每次系统复位都将允许并启动WDT。
(2)禁止WDT向WDTCN寄存器写入0xDE后再写入 0xAD将禁止WDT。
下面的代码说明禁止WDT的过程:CLR EA ;禁止所有中断MOV WDTCN,#0DEh ;禁止看门狗定时器MOV WDTCN,#0ADhSETB EA ;重新允许中断必须在4个时钟周期之内写0xDE和写0xAD,否则禁止操作将被忽略。
在这个过程期间应禁止中断,以避免两次写操作之间延时。
(3)锁定WDT向WDTCN写入0xFF将使禁止功能无效。
WDT一旦被锁定,在下一次复位之前禁止操作将被忽略,写0xFF并不允许或复位看门狗定时器。
如果应用程序想一直使用看门狗,则应在初始化代码中向WDTCN写入0Xff.(4)设置WDT定时间隔WDTCN.[2~0]控制看门狗的超时间隔。
C8051F单片机的IO口设置
C8051F单片机的IO口设置c8051f020 I/O配置小结2007-04-06 23:05020的每个I/O口引脚都可以被配置为推挽或漏极开路输出。
同时引入了数字交叉开关,允许将内部数字系统资源映射到P0、P1、P2和P3的端口引脚。
通过设置交叉开关寄存器可将片内的计数器/定时器、串行总线、硬件中断、ADC转换启动输入、比较器输出以及微控制器内部的其他数字信号配置为出现在端口I/O引脚。
必须在访问这些外设的I/O之前配置和允许交叉开关。
注意的问题:1.低端口既能按位寻址,也可以按字节寻址;高端口只能按字节寻址。
2.没有被分配到的引脚作为一般的数字通用I/O口。
3.P1口还可以用作ADC1的模拟输入。
4.P0MDOUT~P3MDOUT用于控制I/O端口每一位的输出状态。
5.EMIF(外部存储器接口)是用于CPU与片外XRAM之间的数据传输通道,通过寄存器EMI0CF和EMI0CN选择和管理端口实现数据的传输。
6.为了能访问片外存储器空间,必须设置EMI0CN寄存器的内容为片外存储器的空间页地址。
7.如果把外部存储器接口(EMIF)设置在高端口则首先要把EMI0CF的PRTSEL位设置为1,选择高端口,同时选择地址的复用或非复用方式,在把XBR的外部寄存器的EMIFLE位设置为0。
8.复用方式配置:在复用方式下,数据总线和地址总线的第8位共用相同的引脚(AD0~AD7)。
在该方式下,要用一个外部锁存器(如74HC373或相同功能的锁存器)保持RAM地址的低8位。
外部锁存器由ALE(地址锁存使能)信号控制,ALE 信号由外部存储器接口逻辑驱动。
9.在总线复用时,需要把地址数据复用端口配置为漏极开路。
10.ALE高/低脉宽占1个SYSCLK周期,地址建立/保持时间占0个SYSCLK周期,/WR和/RD占12个SYSCLK周期,EMIF工作在地址/数据复用方式,即:EMI0CF |= 0x2c;EMI0TC |= 0x2c;配置EMIF的步骤是:先将EMIF选到低端口或高端口;然后选择复用方式或非复用方式;再选择存储器的模式(只用片内存储器、不带块选择的分片方式、带块选择的分片方式或只用片外存储器);然后设置EMI0TC;最后通过寄存器PnMDOUT和P74OUT选择所期望的相关端口的输出方式。
C8051F020实验指导书
单片机真验指挥书籍之阳早格格创做目录第一章:真验设备简介11.1 系统真验设备的组成11.2 Silicon Labs C8051F 单片机开垦工具简介11.3 DICE-C8051F嵌进式真验/开垦系统简介3第二章集成开垦环境KEIL C硬件使用指北7 2.1 KEIL C硬件简曲使用证明7第三章真验指挥193.1 C8051F 单片机I/O 心接叉开关树坐193.2 数字I/O端心真验213.3 定时器真验233.4 中部中断真验253.5 键盘隐现真验273.6 六位动背LED数码管隐现真验293.7 RS3232串心通讯真验313.8 概括安排33使用特天证明:(1) 屡屡真验前,请小心阅读真验指挥,连线完成,查看无误后,圆可挨开电源.即连线时必须正在断电状态下.(2) 步调运止历程中,不要关关电源,如果要断电,必须停止运止步调,而且退出步调调试状态,可则会引起KEIL C硬件非仄常退出,以至引起DICE-EC5仿真器处事非常十分.(3) 如出现上述(2)的的误支配,引起DICE-EC5仿真器处事非常十分,可对于DICE-EC5仿真器举止复位.(正在光盘中找到文献夹“USB Reset”中的“USB Debug AdapterFirmware Reset”文献,单打运止,正在弹出的对于话框中面打“Update firmware”按钮,正在提示乐成后,面打“OK”按钮,退出复位步调.DICE-EC5仿真器即可仄常处事.正在下一次调试、下载步调时会提示“Do you want to update serial adapternow? ”,面打“决定”即可.第一章:真验设备简介1.1 系统真验设备的组成DICE-C8051F嵌进式真验/开垦系统由C8051F020 CPU 板、DICE-EC5仿真器战系统真验板三部分组成,应用该设备可举止片上系统单片机较典型应用的真验,请拜睹以下介绍.1.2 Silicon Labs C8051F 单片机开垦工具简介1.2.1 开垦工具概括Silicon Labs 的开垦工具真量上便是估计机IDE 调试环境硬件及估计机USB 到C8051F单片机JTAG 心的协议变换器(DICE-EC5)的推拢.SiliconLabs C8051F 系列所有的单片机片内均安排有调试电路,该调试电路通过鸿沟扫描办法获与单片机片内疑息,通过4 线的JTAG接心与开垦工具对接以便于举止对于单片机正在片编程调试.DICE-C8051F嵌进式真验/开垦系统中的C8051F020 CPU 板上的单片机为C8051F 系列中的F020.仿真器(DICE-EC5)一端与估计机贯串,另一端与C8051F 单片机JTAG 心贯串,应用Keil 的uVision2 调试环境便不妨举止非侵进式、齐速的正在系统编程(ISP)战调试.Silicon Labs 开垦工具支援瞅察战建改死存器战寄存器支援断面、瞅察面、堆栈指示器、单步、运止战停止下令.调试时不需要特殊的目标RAM、步调死存器、定时器大概通疑通讲,而且所有的模拟战数字中设皆仄常处事.1.2.2 开垦工具主要技能指标●支援的目标系统:所有C8051Fxxx 系列单片机.●系统时钟:最大可达25Mhz.●通过USB 接心与PC 机对接.●支援汇编谈话战C51 源代码级调试.●工具支援(Keil C).1.2.3 IDE 硬件运止环境央供PC 机不妨运止开垦工具硬件并能与串止适配器通疑.对于PC 机犹如下系统央供:● Windows 95/98/Me/NT/2000/XP 支配系统● 32Mb RAM● 40Mb 自由硬盘空间●空忙的USB 心1.2.4 开垦工具与PC 机硬件对接正在系统编程战调试环境如图下所示.硬件对接及硬件拆置:●将USB 串止电缆的一端与教教机的DICE-EC5仿真器USB接心对接;●对接USB 串止电缆的另一端到PC;●给目标系统上电;●拔出CD 并运止“”,将IDE 硬件拆置到您的PC 机;●正在PC 机的开初菜单的“步调”项中采用keil uVision2图标,运止IDE 硬件.1.3 DICE-C8051F嵌进式真验/开垦系统简介1.3.1 C8051F020 CPU 板概括C8051F020 CPU 板是为了便于拆置而安排的;C8051F020 CPU 板是将C8051F020的所有引足(100 个引足)引到四个单排针;该四组单排针可与分歧用户安排的应用系统对接,如正在该教教系统上将战系统真验板对接.证明: C8051F020 CPU 板是将C8051F020的所有引足(100 个引足)引到四个单排针,分别为JX1、JX2、JX3、JX4,四个单排针的内圈100个排针(内圈每个引足证明引足含意)与C8051F020芯片的对于应引足对接.而四个单排针的中圈100个排针(中圈标有引足号)部分引足悬空,而大部分引足已经与真验仪上的真验模块对接.(简曲对接请瞅硬件对接本理图).果此,本真验/开垦系统大部分真验模块只消将其相映引足的短路块插佳,即可真止与C8051F020单片机系统的对接.而一部分独力真验模块,必须通过导线与C8051F020单片机对接,对接前把要用到的引足上的短路块拔掉,而后用导线将内圈对于应引足与中部模块对接.真验完成后再把相映的短路块插佳.1.3.2 C8051F020 片上系统单片机片内资材①、模拟中设(1) 逐次迫近型8 路12 位ADC0变换速率最大100ksps可编程删益搁大器PGA温度传感器(2) 8 路8 位ADC1 输进与P1 心复用变换速率500ksps可编程删益搁大器PGA(3) 二个12 位DAC(4) 二个模拟电压比较器(5) 电压基准里里提供中部基准可输进(6) 透彻的VDD 监视器②、下速8051 微统造器内核流火线式指令结构速度可达25MIPS22 个矢量中断源③、死存器片内4352 字节数据RAM64KB Flash 步调死存器可做非易得性死存中部可扩展的64KB 数据死存器接心④、数字中设8 个8 位的端心I/OI2C、SPI、2 个巩固型UART 串心可编程的16 位计数器/定时器阵列(PCA)5 个通用16 位计数器/定时器博用的瞅门狗WDT更小心资料可拜睹Silicon Labs C8051F02x datasheet1.3.3DICE-C8051F嵌进式真验/开垦系统硬件组成(1)CPU板:CPU核心模块采与C8051F020芯片,该芯片是C8051F系列单片机中功能最为其齐的一款;(2)片内:64K FLASH, 4K XRAM片中扩展:256K FLASH, 32K XRAM(3)CPU板C8051F020芯片I/0引足局部引出,不妨战用户中部电路对接;(4)真验系统戴有JTAG接心,并配有DICE-EC3型USB下速通讯仿真器,通过4足的JTAG接心不妨举止非侵进式、齐速的正在线系统调试、仿真;(5)4*4阵列式键盘;(6)8位逻辑电仄开关输出、8位LED逻辑电仄隐现;(7)6位动背八段LED数码管;(8)2路单脉冲旗号爆收电路战1路8MHZ时钟爆收电路;(9)时钟分频电路;(10)模拟量爆收器电路战逻辑笔电路;(11)8*8LED面阵及启动电路;(12)128*64 LCD液晶隐现屏;(13)蜂鸣器电路;(14)曲流电机测速电路;(15)四相步进电机及启动电路;(16)继电器电路及接心;(17)单通讲RS-232 接心;(18)SPI 接心,LED 数码管隐现;(19)IIC 接心,接24C01 串止EEPROM;(20)IIC 接心,PCF8563日历时钟;(21)8 路12 位AD,2 路12 位DA 接心;(22)D12 USB 从机通疑;(23)SL811 USB 主机通疑;(24)RTL8019 10M 以太网通疑;1.3.4DICE-C8051F嵌进式真验/开垦系统天面及初初化证明●天面调配如下:0x0000-0x7fff,数据死存器SRAM天十范畴0x8000-0x87ff,D12_CS片选0x8800-0x8fff,SL811_CS片选0x9000-0x97ff,RTL8019_CS片选0x9800-0x9fff,LCD_CS片选0xA000-0xA7ff,死存0xA800-0xAfff,死存0xB000-0xB7ff,死存0xB800-0xBfff,死存0xc000-0xffff(x16),Flash,片选天面由P4 矮4 位端心决定●系统初初化:C8051F020 CPU板使用中部22.1184M 晶振,系统初初化后应用中部22.1184M 晶振,如果不举止系统初初化,系统将使用里里晶振,默认值为2M,也不妨通过树坐OSCICN 寄存器改变里里晶振的大小(可选值为2M、4M、8M、16M).●端心初初化:咱们根据c8051F020 CPU板及真验系统安排规划,摆设接叉开关,为UART0、SPI、SMBus、UART1、CEX0、CP0、T0、T1、INT0、INT1、INT2 战INT3 调配端心引足.其余,咱们将中部死存器接心摆设为复用办法并使用下端心.摆设步调如下:(1) 按CP0E=1,ECI0E=0,PCA0ME=001,UART0EN=1,SPI0EN=1,SMB0EN=1 树坐XBR0=0x8f;(2) 按SYSCKE=0,T2EXE=0,T2E=0,INT1E=1,T1E=1,INT 0E=1,T0E=1,CPI1E=0 树坐XBR1=0x1e;(3) 按WEAKPUD=0,XBARE=1,位5为0 用T4EXE=0,T4E=0,UART1E=1,EMIFLE=0,CNVSTE=0 树坐XBR2=0x44(4) 将中部死存器接心摆设为复用办法,并使用下端心,有PRTSEL=1,EMD2=0.(5) 将动做数字输进的端心1 引足摆设为数字输进办法,树坐P1MDIN 为0xFF.(6) 通过树坐P0MDOUT=0x34 、P1MDOUT=0xfd 、P2MDOUT= 0xf0 、P3MDOUT = 0xff,将矮端心输出办法树坐为推挽办法.树坐下端心输出办法P74OUT=0xf7;总线输出办法应试虑处事频次战启动本领,正在下速战下启动时总线应树坐为推挽办法,正在矮速战矮启动时漏极开路也可谦足央供,但是宁静性不下.(7) 树坐中部死存器摆设EMI0CF=0x2d;树坐中部死存器时序统造EMI0TC=0x9e;如果LCD 不克不迭仄常隐现不妨使EMI0CF=0x2f,EMI0TC=0xff 树坐为最大值;也不妨减小中部晶振大概使用里里晶振.第二章集成开垦环境KEIL C硬件使用指北2.1 KEIL C硬件简曲使用证明Keil C 拆置:睹..\tools\KeilC51v751a_Full\拆置证明.txt;拆置完成后,如果要使用DICE-EC5仿真器去仿真C8051F系统单片机,还需要拆置启动步调:加进“”,面打“SiC8051F_uv2”,曲至拆置完成.加进 Keil C51 后,屏幕如下图所示.几秒钟后出现编写界开用Keil C51时的屏幕加进Keil C51后的编写界里简朴步调的调试:教习步调安排谈话、教习某种步调硬件,最佳的要领是间接支配试验.底下通过简朴的编程、调试,带领大家教习Keil C51硬件的基础使用要领战基础的调试本领. 1)建坐一个新工程单打Project菜单,正在弹出的下推菜单中选中New Project选项2)而后采用您要死存的路径,输进工程文献的名字,比圆死存到C51目录里,工程文献的名字为C51.如下图所示,而后面打死存.3)那时会弹出一个对于话框,央供您采用单片机的型号,您不妨根据您使用的单片机去采用,keil c51险些支援所有的51核的单片机,尔那里仍旧以大家用的比较多的Atmel 的89C51去证明,如下图所示,采用89C51之后,左边栏是对于那个单片机的基础的证明,而后面打决定.(注意:咱们真验系统使用的单片机为Silicon Laboratories公司的C8051F020芯片).4)完成上一步调后,屏幕如下图所示到目前为止,咱们还不编写一句步调,底下开初编写咱们的第一个步调.5)正在下图中,单打“File”菜单,再正在下推菜单中单打“New”选项新建文献后屏幕如下图所示此时光标正在编写窗心里闪烁,那时不妨键进用户的应用步调了,但是笔者提议最先死存该空黑的文献,单打菜单上的“File”,正在下推菜单中选中“Save As”选项单打,屏幕如下图所示,正在“文献名”栏左侧的编写框中,键进欲使用的文献名,共时,必须键进透彻的扩展名.注意,如果用C谈话编写步调,则扩展名为(.c);如果用汇编谈话编写步调,则扩展名必须为(.asm).而后,单打“死存”6)回到编写界里后,单打“Target1”前里的“+”号,而后正在“Source Group 1”上单打左键,弹出如下菜单而后单打“Add File to Group ‘Source Group 1’”屏幕如下图所示选中Test.c,而后单打“Add”屏幕佳下图所示“Source Group 1”文献夹中多了一身材项“Text1.c”了吗?子项的几与所减少的源步调的几相共 .7)目前,请输进如下的C谈话源步调: #include<reg52.h> //包罗文献#include<stdio.h>void main(void) //主函数{SCON=0x52;TMOD=0x20; TH1=0xf3;TR1=1; //此止及以上3止为PRINTF函数所必须printf(“Hello I am KEIL. \n”);//挨印步调真止的疑息printf(“I will be your friend.\n”);while(1);} 正在输进上述步调时,读者已经瞅到了预先死存待编写的文献的佳处了吧,即Keil c51会自动辨别关键字,并以分歧的颜色提示用户加以注意,那样会使用户少犯过得,有用处普及编程效用.步调输进完成后,如下图所示:8)正在上图中,单打“Project”菜单,再正在下推菜单中单打“Built Target”选项(大概者使用快速键F7),编译乐成后,再单打“Project”菜单,正在下推菜单中单打“Start/Stop Debug Session”(大概者使用快速键Ctrl+F5),屏幕如下所示 :9)调试步调:正在上图中,单打“Debug”菜单,正在下推菜单中单打“Go”选项,(大概者使用快速键F5),而后再单打“Debug”菜单,正在下推菜单中单打“Stop Running”选项(大概者使用快速键Esc);再单打“View”菜单,再正在下推菜单中单打“Serial Windows #1”选项,便不妨瞅到步调运止后的截止,其截止如下图所示至此,咱们正在Keil C51上搞了一个完备工程的齐历程.但是那不过杂硬件的开垦历程,怎么样使用步调下载器瞅一瞅步调运止的截止呢?下一节咱们将介绍Keil C硬件与DICE-EC3仿真器的摆设证明.2.2 KEIL C 硬件与DICE-EC5仿真器摆设证明1.本摆设是针对于本公司的仿真开垦工具DICE-EC5的摆设要领;2.Keil C 硬件摆设如下:挨开Keil 硬件,新建一工程,采用Silicon Laboratories公司的C8051F020 动做CPU(根据本量CPU):(1)采用摆设如下图:(2)隐现如下图:(3)OUTPUT选项摆设:(4)A51汇编选项:(5)DEBUG选项:面打”Settings”此时必须决定DICE-EC5仿真器与PC处于联机状态!!!面打决定,完成树坐.第三章真验指挥3.1 C8051F 单片机I/O 心接叉开关树坐劣先权接叉开关译码器,大概称为“接叉开关”,按劣先权程序将端心0 – 3 的引足调配给器件上的数字中设(UART、SMBus、PCA、定时器等).端心引足的调配程序是从开初,不妨背去调配到P3.7.UART0有最下劣先权,而CNVSTR具备最矮劣先权.为数字中设调配端心引足的劣先权程序列于下图.当接叉开关摆设寄存器XBR0、XBR1 战XBR2 中中设的对于应允许位被树坐为逻辑‘1’时,接叉开关将端心引足调配给中设,相关的特殊功能寄存器的定义睹数据脚册大概相关书籍籍.接叉开关引足调配示例:正在本例中,咱们将摆设接叉开关,为UART0、SMBus、UART1、/INT0 战/INT1 调配端心引足(共8 个引足).其余,咱们将中部死存器接心摆设为复用办法并使用矮端心.咱们还将、P1.3 战P1.4 摆设为模拟输进,以便用ADC1 丈量加正在那些引足上的电压.摆设步调如下:(1)按UART0EN = 1、SMB0EN = 1、INT0E = 1、INT1E = 1 战EMIFLE =1 树坐XBR0、XBR1 战XBR2,则有:XBR0 = 0x05,XBR1 = 0x14,XBR2 = 0x02.(2)将中部死存器接心摆设为复用办法并使用矮端心,有:PRTSEL = 0,EMD2 = 0.(3)将动做模拟输进的端心1 引足摆设为模拟输进办法:树坐P1MDIN 为0xE3(、P1.3 战P1.2 为模拟输进,所以它们的对于应P1MDIN 被树坐为逻辑‘0’).(4)树坐XBARE = 1 以允许接叉开关:XBR2=0x42.●UART0 有最下劣先权,所以P0.0 被调配给TX0,P0.1 被调配给RX0.●SMBus 的劣先权次之,所以P0.2 被调配给SDA,P0.3 被调配给SCL.●接下去是UART1,所以P0.4 被调配给TX1.由于中部死存器接心选正在矮端心(EMIFLE = 1),所以接叉开关跳过P0.6(/RD)战P0.7(/WR).又果为中部死存器接心被摆设为复用办法,所以接叉开关也跳过P0.5(ALE).下一个已被跳过的引足P1.0 被调配给RX1.●接下去是/INT0,被调配到引足.●将P1MDIN 树坐为0xE3,使、P1.3 战P1.4 被摆设为模拟输进,引导接叉开关跳过那些引足.●底下劣先权下的是/INT1,所以下一个已跳过的引足P1.5 被调配给/INT1.●正在真止对于片中支配的MOVX 指令功夫,中部死存器接心将启动端心2 战端心3.(5)咱们将UART0 的TX 引足(TX0,)、UART1 的TX 引足(TX1,)、ALE、/RD、/WR(P0.[7:3])的输出树坐为推挽办法,通过树坐P0MDOUT = 0xF1 去真止.(6)咱们通过树坐P2MDOUT = 0xFF 战P3MDOUT = 0xFF 将EMIF 端心(P2、P3)的输出办法摆设为推挽办法.咱们通过树坐P1MDOUT = 0x00(摆设输出为漏极开路)战P1 = 0xFF(逻辑‘1’采用下阻态)克制3 个模拟输进引足的输出启动器.3.2 数字I/O端心真验一、真验脚段掌握C8051F020 I/0的使用,教习延时子步调的编写.二、真验真量P1心输出心,接八只收光二极管,编写步调,使收光二极管循环面明.三、真验本理介绍C8051F020有8位端心构造的64个数字I/O引足.矮端心(P0、P1、P2、P3)既不妨按位觅址,也不妨按字节觅址.下端心(P4、P5、P6、P7)只可按字节觅址.所有引足皆耐5V电压,皆不妨被摆设为漏极开路大概推挽输出办法战强上推.C8051F020器件有洪量的数字资材需要通过4个矮端I/O端心P0,P1,P2,P3才搞使用.但是本真验中主要介绍的I/O心主要动做通用的端心I/O (GPIO)引足去使用.每个端心引足的输出办法皆可被摆设为漏极开初大概推挽办法,缺省状态为漏极开路.正在推挽办法,背端心数据寄存器中的相映位写逻辑0将使端心引足被启动到GND,写逻辑1将使端心引足被启动到VDD.正在漏极开路办法,背端心数据寄存器中的相映位写逻辑0将使端心引足被启动到GND,写逻辑1将使端心引足处于下阻状态.当系统中分歧器件的端心引足有共享对接,即多个输出对接到共一个物理线时(比圆SMBus对接中的SDA旗号),使用漏极开路办法不妨预防分歧器件之间的争用.I/O端心的输出办法由PnMOUT寄存器中的对于应位决断.本真验中咱们用P1心启动收光二极管面明,果此必须将P1心定义为推挽办法.四、电路本理图五、真验步调框图六、真验步调步调功能:由P1心启动收光二极管循环面明.P1.0~P1.7接L1~L8(JP14)3.3 定时器真验一、真验脚段掌握C8051F020里里定时器/计数器的应用.二、真验真量本文献是LED灯闪烁真验步调;使用定时器0定时1秒,LED灯每隔1秒明1秒;使用中部22.1184MHz晶振.三、真验本理介绍C8051F020里里有5个计数器/定时器T0,T1,T2,T3战T4.那些计数器/定时器皆是16位,其中T0、T1、T2与尺度8051中的计数器/定时器兼容.T3、T4可用于ADC、SMBus大概动做通用定时器使用,T4还可用做C8051F02x中第二串心(UART1)的波特率爆收器.那些计数器/定时器不妨用于丈量时间隔断,对于中部事变计数大概爆收周期性的中断哀供.定时器0战定时器1险些真足相共,有4种处事办法.定时器2减少了一些时器0战定时器1中所不的功能.定是器3与定时器2类似,但是不捕获战波特率爆收器办法.定时器4与定时器2真足相共,可用做UART1的波特率爆收器.下表所列为定时器的处事办法:本真验中使定时器0处事正在办法1(TMOD=0x01),TIM0定时器时钟为系统时钟的1/12(CKCON=0x00).简曲寄存器定义请参照教科书籍.四、真验步调框图(注:真验时不需要液晶隐现)五、真验步调确认P3.5心与引足49上插有短路块,则收光二极管L1与P3.5已连.调进步调、拆载、运止,瞅察收光二极管是可每隔1秒明1次.3.4 中部中断真验一、真验脚段认识C8051F020 中部中断6/7 的使用.二、真验真量此步调尝试C8051F020的中断6、7,可正在相映的二其中断中设断面瞅察,当单脉冲按钮按下之后,加进中断处理时P4.4统造蜂鸣器鸣喊一声,收光二极管也共时闪烁一次.三、真验本理介绍CIP-51包罗一个扩展的中断系统,支援22其中断源,每其中断源有二个劣先级.中断源正在片内中设与中部输进之间的调配随器件的分歧而变更.每其中断源不妨正在一个SFR中有一个大概多其中断标记.当一其中设大概中部源谦足灵验的中断条件时,相映的中断标记被置为逻辑1.如果中断被允许,正在中断标记被置位时爆收中断.一朝目前指令真止完,CPU爆收一个LCALL到预约天面,开初真止中断服务步调(ISR).每个ISR必须以RETI指令中断,使步调回到中断前真止的那条指令的下一条指令.如果中断已被允许,中断标记将被硬件忽略,步调继承仄常真止(中断标记置1与可不受中断允许/克制状态的做用).每一其中断源皆不妨用一个SFR(IE~EIE2)中的相关中断允许位去允许大概克制,但是必须先将EA位(IE.7)置1,以包管每个单独的中断允许位灵验.不管每其中断允许位的树坐怎么样,EA位浑0将克制所有中断.本真验主要介绍C8051F020 中部中断6/7(对于应P3.6战P3.7).P3.6战P3.7可被摆设为边沿触收的中断源.用IE6CF(P3IF.2)战IE7CF (P3IF.3)位不妨将那二其中断源摆设为下落沿大概降下沿触收.当检测到引足P3.6战P3.7有下落沿大概降下沿爆收时,P3IF寄存器中对于应的中部中断标记(IE6大概IE7)将被置1.如果对于应的中断被允许,将会爆收中断,CPU将转背对于应的中断背量天面.端心3中断标记位:位7 IE7 中部中断7标记位0当检测到P3.7引足的下落沿大概降下沿时,该标记由硬件置位位6 IE6 中部中断6标记位0当检测到P3.7引足的下落沿大概降下沿时,该标记由硬件置位位5~4 已使用.读=00b,写=忽略位3 IE7CF 中部中断7边沿摆设位0中部中断7由IE7输进的下落沿触收1中部中断7由IE7输进的降下沿触收位2 IE6CF 中部中断6边沿摆设位0中部中断6由IE6输进的下落沿触收1中部中断6由IE6输进的降下沿触收位1~0 已使用.读=00b,写=忽略四、真验步调框图五、真验步调P2.0接L7;P2.1接L8;P3.6接JP7;P3.7接JP7;P4.4用短路块接蜂鸣器.按下单脉冲按钮,JP7爆收一个下落沿脉冲,加进中断后,蜂鸣器鸣喊一声,相映收光二极管也共时闪烁一次.3.5键盘隐现真验一、真验脚段掌握止列式键盘的处事本理.二、真验真量每按下一个键,蜂鸣器响一声,并正在LED数码管上隐现相映的字符.三、真验本理介绍正在键盘中按键数量较多时,为了缩小I/O心的占用,常常将按键排列成矩阵形式,也便是常道的止列式键盘.止列式键盘中的键本量上便是一个板滞开关,该开关位于止线战列线的接面处.当键被按下时,其接面的止线战列线接通,相映止线大概列线上的电仄爆收变更,进而决定被按下的功能键.时常使用的键辨别要领有:止扫描法、线翻转法战利用8279键盘接心的中断法.前二种要领相称于查询法,需要反复查询按键的状态,会占用洪量的CPU时间;后一种要领正在有键按下时背CPU申请中断,通常本去不需要占用CPU时间.本真验中咱们介绍止扫描法,其按键识别的历程如下:A:将局部止线SEL0~SEL3置为矮电仄,而后检测列线的状态.只消有一列的电仄为矮,则表示键盘中有键被按下,而且关合的键位于矮电仄线与4根止线相接叉的4个按键之中.若所列线均为下电仄,则键盘中无键按下.B:推断关合键天圆的位子.正在确认有键按下后,即可加进决定简曲关合键的历程.其要领是:依次将止线置为矮电仄,即正在置某根止线为矮电通常,其线为下电仄.正在决定某根止线位子为矮电仄后,再逐止检测各列线的电仄状态.若某列为矮,则该列线与置为矮电仄的止线接叉处的按键便是关合的按键.四、真验本理图五、真验步调框图(注:真验时只需LED数码管隐现)六、真验步调定义16个键为'0'~'F',每按下一个键,蜂鸣器响一声,并正在LED数码管上隐现相映的字符.P5.0~P5.3接SEL0~SEL3,P5.4~P5.7接RL0~RL3,P4.4接ALARM,P3.5接L1(JP14)(以上连线里里已经连佳,只消将对于应的短路块插上即可.),P1.0~P1.7接a~dp(JP18,LED段码端),P0.0接LED大众端所有一端(JP17).3.6 六位动背LED数码管隐现真验一、真验脚段认识并掌握LED七段数码管的处事本理,并掌握动背数码管的步调编写.二、真验真量本真验主假如六位八段LED数码管动背隐现,例步调隐现“123456”.三、真验本理介绍正在单片机应用系统中可利用LED隐现块机动天形成所央供位数的隐现器.N位LED隐现器有N 根位选线战8×N根段选线.根据隐现办法的分歧,位选线战段选线的对接要领有所分歧.段选线统造字符采用,位选线统造隐现位的明大概暗.LED隐现器有二种隐现办法:固态隐现战动背隐现.本真验介绍动背LED数码管的处事本理.LED动背隐现是将所有位的段选线并接正在一个I/O心上,共阳极度大概共阳极度分别由相映的I/O心线统造.每一位的段选线皆接正在一个I/O心上,所以每支一个段选码,每位LED数码管皆隐现共一个字符,那种隐现器是不克不迭用的.办理此问题的要领是利用的视觉滞留,从段选线上按位次分别支隐现字符的段选码,正在位选统造心也按相映的序次分别选通相映的隐现位(共阳极支矮电仄,共阳极支下电仄),选通位便隐现相映字符,并脆持几亳秒的延时,已选通位不隐现字符(脆持燃烧).那样,对于诸位隐现便是一个循环历程.从估计机的处事去瞅,正在一个瞬时惟有一位隐现字符,而其余位皆是燃烧的,但是果为人的视觉滞留,那种动背变更是觉察不到的.从效验上瞅,诸位隐现器能连绝而宁静天隐现分歧的字符.那便是动背隐现.四、真验本理图五、真验步调框图六、真验步调本步调主假如六位八段LED数码管动背隐现,例步调隐现“123456”.p1.0~p1.7接JP18(a~dp LED段码端);p0.0~p0.5接JP17(L1~L6 LED大众端);注意:拿掉相映足的短路块,用导线对接,并注意引足程序.3.7 RS3232串心通讯真验一、真验脚段掌握RS-232 串心通疑步调的安排战支配.二、真验真量(1)此例程是用UART0 动做串心通疑,硬件将其摆设到P0.0 战;(2)UART0是串心的中接心,为举止串心通疑,正在PC 端用串心调试帮脚硬件协共调试(利用其余串心通疑步调也不妨),用一根串心线将UART0串止心共PC 的串心贯串,波特率牢固为115200,通疑要领:1 位起初位,8 位数据位,1 位停止位.(3)MAX3232芯片将单片机收出的TTL 电仄转移为RS-232 电仄旗号,支/收旗号从9 芯插座UART0通过RS-232 电缆传递到PC 机.三、真验本理介绍每个C8051F MCU皆有能举止同步传输的串止心(UART).C8051F020有二个功能真足相共的UART(分别为UART0战UART1),它们除了具备8051尺度串止心的功能中,还具备帧过得检测战天面辨别硬件,称为巩固型串止心UART.UART不妨处事正在齐单工同步办法大概半单工共步办法,而且支援多处理器通疑.接支数据被久存于一个脆持寄存器中,那便允许UART 正在硬件尚已读与前一个数据字节的情况下开初接支第二个输进数据字节.一个接支覆盖位用于指示新的接支数据已被锁存到接支慢冲器而前一个接支数据尚已被读与.对于UART的统造战考察是通过相关的特殊。
8051单片机实验课件_单片机实验.
2019/8/9
电子工程设计中心
2019/8/9
电子工程设计中心
通过总线扩展实现的数码管点亮控制
55 ++ 38 p AA bd c a g d f e P fgedcDba DS2LA5021R 90124567 1 560X8 5 + D N 256900 G 2569111121 01234567 D QQQQQQQQ N VCC G K T L 01234567 S C RDDDDDDDD 3 USN74HC273N 13478 13478 11111 0 0 S C 01234567 DDDDDDDD
MOV P1,A
AJMP19/8/9
MOV MOV DJNZ DJNZ RET END
R5,#0H R6,#0H R6,$ R5,D1
;延时子程序
电子工程设计中心
调试 ① 全速运行(3种方法)
观察发光二极管点亮位置移动方向,那 条指令决定发光二极管移动方向。
本节作业
1. 观察与思考1-1到1-5
2. 练习题一 1-1/1-2
1-1要求: ① 解决问题的思路/理由 ② 解决方法—用什么指令 ② 修改后的源程序,该过或添加的 指令加下划线
2019/8/9
电子工程设计中心
中断控制操作程序调试练习
中断控制原理
IE
INT0
IT0
1 边沿 0 电平
C/T0
TCON EX0
调试 运行到光标 光标放在源程序第11行,运行至光标 然后单步执行第11、12、13行指令
2019/8/9
电子工程设计中心
2019/8/9
电子工程设计中心
利用P3口的部分口线实现并行数据输入
C8051F021单片机实验指导
提要:实验项目1、单片机的IO编程实验1 IO开关量输入实验实验2 IO输出驱动继电器(或光电隔离器)实验实验3 IO输入/输出------半导体温度传感器DS18B20实验2、单片机的中断系统实验1 外部外部中断----脉冲计数实验3、单片机的定时器/计数器实验1 计数器实验实验2 秒时钟发生器实验4、单片机的串口特点和编程实验1 P C机串口通讯实验实验2 R S485通讯实验5、存储器实验1 RAM存储器读写实验6、PWM发生器实验1 PWM发生器(模拟)实验实验1 PWM发生器(内部)实验7、WDG看门狗实验1 外扩WDG(MAX813)实验实验2 WDG(内部)实验8、SPI总线实验1 SPI(模拟)实验-----TLC2543 AD转换实验实验2 SPI(模拟)实验-----TLV5616 DA转换实验9、I2C总线实验1 I2C(模拟)实验-----AT24C01读写实验实验2 I2C(内部)实验-----AT24C01读写实验10、综合实验实验1 HD7279LED数码管显示实验实验2 HD7279键盘实验实验3 外部中断---电机转速显示实验11、步进电机正反转实验12、TFT液晶显示彩色条纹实验13、16X16LED点阵显示汉字实验一、单片机的IO编程实验1 IO开关量输入实验目的:学习单片机读取IO引脚状态的的方法。
内容:编程读取IO引脚状态。
设备:EL-EMCU-I试验箱、EXP-C8051F021 CPU板。
编程:首先要把相关的引脚设置在IO的输入状态,然后写一个循环,不停地检测引脚的状态。
步骤:1、将CPU板正确安放在CPU接口插座上,2、连线:用导线将试验箱上MCU部分的IO1--- IO8分别连接到SWITCH 的8个拨码开关的K1---K8的输出端子K1---K8上,连接好仿真器。
3、试验箱上电,在PC机上打开Keil C环境,打开试验程序文件夹IO_INPUT 下的工程文件IO_INPUT.Uv2编译程序,上电,在函数main()的最后一句设置断点,进入调试状态,打开窗口Peripherals-->IO-Port-->P3,改变开关状态,运行程序到断点处,观察窗口的数值与开关的对应关系。
C8051F实验指导书
第五章 Keil c 编程 ........................................................................................................................37 5.1 Keil C 快速入门 ....................................................................................37 5.1.1 文件载入...............................................................................................................37 5.1.2 端口硬件操作.......................................................................................................40 5.1.3 中断操作...............................................................................................................43 5.1.4 存储空间分配.......................................................................................................46 5.1.5 指针.......................................................................................................................48 5.2 keilc 库函数......................................................................................................................54 5.2.1 CTYPE.H 字符函数 ..............................................................................................54
C8051单片机实验指导书
基于C8051F单片机的远程温湿度监控系统
系统采用F940触摸屏∞。4J,编程软件采用GT.
Designer,利用文本、线、矩形、数据输入、数据输出、触 摸键、历史曲线等部件组成B1一B5等5个基本画面
42
Instrument Technique and Sensor
Dec.2005
(Base Image),其中: (1)B1画面为系统整体监控画面(起始画面、上电
Abstract:Introduced design of the multi-room me.asurement and control system of temperature and humidity in drug storeroom.
Based on C8051F MCU and RS一485,all rooms combined to one DCS system.The temperature and humidity measurement Was aecom-
复位
Iy I__一
7
fA i、
Xi
;、
;
B .C
:一
,{
一
i
一;1 D
X l卜一主机可采样y
卜A’争E—-.—-
F
}
’;
门! !门铲一要
图5单总线器件位操作时序波形图
对DSl8820的操作:在CPU命令所有DSl8820开 始温度 万测方量数及据转换时,无需确定器件地址,这可以通
过先发Skip ROM命令,然后发Convert T命令,这样启 动5片DSl8820同时开始转换;转换结束后,CPU必须 逐个访问DSl8820,读取它们的温度值,即总线复位 后,CPU先发送1个Match ROM命令和相应的64位器 件ROM注册码,然后发Read Semtchpad命令,读出温 度转换值并相应处理,接着重复上述过程(从复位总 线开始),读出其余4片DSl8820的温度值。具体流程
C8051F020实验指导书
单片机实验指导书目录第一章:实验设备简介 (1)1.1 系统实验设备的组成 (1)1.2 Silicon Labs C8051F 单片机开发工具简介 (1)1.3 DICE-C8051F嵌入式实验/开发系统简介 (3)第二章集成开发环境KEIL C软件使用指南 (7)2.1 KEIL C软件具体使用说明 (7)第三章实验指导 (19)3.1 C8051F 单片机I/O 口交叉开关设置 (19)3.2 数字I/O端口实验 (21)3.3 定时器实验 (23)3.4 外部中断实验 (25)3.5 键盘显示实验 (27)3.6 六位动态LED数码管显示实验 (29)3.7 RS3232串口通讯实验 (31)3.8 综合设计 (33)使用特别说明:(1) 每次实验前,请仔细阅读实验指导,连线完毕,检查无误后,方可打开电源。
即连线时必须在断电状态下。
(2) 程序运行过程中,不要关闭电源,如果要断电,必须停止运行程序,并且退出程序调试状态,否则会引起KEIL C软件非正常退出,甚至引起DICE-EC5仿真器工作异常。
(3) 如出现上述(2)的的误操作,引起DICE-EC5仿真器工作异常,可对DICE-EC5仿真器进行复位。
(在光盘中找到文件夹“USB Reset”中的“USB Debug Adapter Firmware Reset”文件,双击运行,在弹出的对话框中点击“Update firmware”按钮,在提示成功后,点击“OK”按钮,退出复位程序。
DICE-EC5仿真器即可正常工作。
在下一次调试、下载程序时会提示“Do you want to update serial adapter now? ”,点击“确定”即可。
第一章:实验设备简介1.1 系统实验设备的组成DICE-C8051F嵌入式实验/开发系统由C8051F020 CPU 板、DICE-EC5仿真器和系统实验板三部分组成,应用该设备可进行片上系统单片机较典型应用的实验,请参见以下介绍。
C8051F020 最小系统 实验指导手册
工程的建立及配置........................................................................................7 Configuration Wizard 2 的使用介绍............................................................9 液晶显示......................................................................................................15 4.1.1 4.1.2 4.1.3 4.1.4 4.1.5 4.1.6 液晶显示模块简介............................................................................15 硬件连接............................................................................................16 地址计算方法....................................................................................17 RA8835 底层驱动程序..................................................................... 18 程序示例............................................................................................19 综合程序示例....................................................................................21 行列扫描原理介绍............................................................................23 硬件连接............................................................................................23 软件流程图........................................................................................24 示例源程序........................................................................................25 示例工程............................................................................................26 硬件连接............................................................................................30 软件设计............................................................................................30 相关寄存器设置................................................................................31 程序示例............................................................................................34
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
提要:实验项目1、单片机的IO编程实验1 IO开关量输入实验实验2 IO输出驱动继电器(或光电隔离器)实验实验3 IO输入/输出------半导体温度传感器DS18B20实验2、单片机的中断系统实验1 外部外部中断----脉冲计数实验3、单片机的定时器/计数器实验1 计数器实验实验2 秒时钟发生器实验4、单片机的串口特点和编程实验1 P C机串口通讯实验实验2 R S485通讯实验5、存储器实验1 RAM存储器读写实验6、PWM发生器实验1 PWM发生器(模拟)实验实验1 PWM发生器(内部)实验7、WDG看门狗实验1 外扩WDG(MAX813)实验实验2 WDG(内部)实验8、SPI总线实验1 SPI(模拟)实验-----TLC2543 AD转换实验实验2 SPI(模拟)实验-----TLV5616 DA转换实验9、I2C总线实验1 I2C(模拟)实验-----AT24C01读写实验实验2 I2C(内部)实验-----AT24C01读写实验10、综合实验实验1 HD7279LED数码管显示实验实验2 HD7279键盘实验实验3 外部中断---电机转速显示实验11、步进电机正反转实验12、TFT液晶显示彩色条纹实验13、16X16LED点阵显示汉字实验一、单片机的IO编程实验1 IO开关量输入实验目的:学习单片机读取IO引脚状态的的方法。
内容:编程读取IO引脚状态。
设备:EL-EMCU-I试验箱、EXP-C8051F021 CPU板。
编程:首先要把相关的引脚设置在IO的输入状态,然后写一个循环,不停地检测引脚的状态。
步骤:1、将CPU板正确安放在CPU接口插座上,2、连线:用导线将试验箱上MCU部分的IO1--- IO8分别连接到SWITCH 的8个拨码开关的K1---K8的输出端子K1---K8上,连接好仿真器。
3、试验箱上电,在PC机上打开Keil C环境,打开试验程序文件夹IO_INPUT 下的工程文件IO_INPUT.Uv2编译程序,上电,在函数main()的最后一句设置断点,进入调试状态,打开窗口Peripherals-->IO-Port-->P3,改变开关状态,运行程序到断点处,观察窗口的数值与开关的对应关系。
实验2 IO输出驱动继电器(或光电隔离器)实验目的:学习IO输出控制方法。
内容:通过单片机的IO引脚驱动继电器动作。
设备:EL-EMCU-I试验箱、EXP-C8051F021 CPU板。
编程:首先要把相关的引脚设置在IO的输出状态,然后写一个循环,依次输出高低电平。
步骤:1、将CPU板正确安放在CPU接口插座上,2、连线:用导线将MCU的IO1、IO2分别连接到RELAY的R_IN和光电隔离的输入P_IN上,R_OUT和P_OUT分别连接到发光二极管L1和L2的输入孔L1和L2上,连接好仿真器。
3、试验箱上电,在PC机上打开Keil C环境,打开试验程序文件夹IO_OUTPUT下的工程文件IO_OUTPUT.Uv2编译程序,上电,进入调试状态,打开窗口Peripherals-->IO-Port-->P3,单步运行程序,观察窗口的数值变化。
4、全速运行程序,观察继电器的发光二极管的亮灭变化,同时确定继电器动作(或光电隔离器导通)与IO输出电平的关系。
实验3 IO输入/输出------半导体温度传感器DS18B20实验目的:学习IO引脚编程实现交替输入、输出的方法。
内容:通过单片机的IO引脚与半导体温度传感器实现单线通讯。
设备:EL-EMCU-I试验箱、EXP-C8051F021 CPU板。
编程:根据18B20的资料(见备注),将IO引脚设置在输出状态,分别模拟出不同的命令时序,例如复位、读寄存器等;再改变IO引脚的为输入状态,接收传感器输出的数据。
步骤:1、将CPU板正确安放在CPU接口插座上,2、连线:用导线将MCU的IO1连接到传感器的接口端子DQ上,连接好仿真器。
3、试验箱上电,在PC机上打开Keil C环境,打开试验程序文件夹IO_INOUTPUT下的工程文件IO_INOUTPUT.Uv2编译程序,上电,进入调试状态,打开窗口VIEW-- Watch &Call stack Windows,按照程序注释说明设置断点,全速运行程序到断点处,观察变量i的数据,用手摸住传感器DS18B20芯片,再运行到断点处,观察窗口的变量数值的变化。
4、备注:DSl8B20数字温度计提供9位(二进制)温度读数指示,器件的温度信息经过单线接口送入DSl8B20或从DSl8B20送出,因此从主机CPU到DSl8B20仅需一条线(和地线),DSl8B20的电源可以由数据线本身提供而不需要外部电源。
因为每一个DSl8B20在出厂时已经给定了唯一的序号,因此任意多个DSl8B20可以存放在同一条单线总线上,这允许在许多不同的地方放置温度敏感器件。
DSl8B20的测量范围从-55到+125增量值为0.5可在l s(典型值)内把温度变换成数字。
二、单片机的中断系统实验1外部中断----脉冲计数实验目的:学习单片机的外部中断使用方法。
内容:对外部中断计数显示。
设备:EL-EMCU-I试验箱、EXP-C8051F021 CPU板。
编程:首先第一步设置单片机的IO为输入状态,第二步设置引脚的中断触发方式,一般设置为边沿触发,第三步,设置外部中断的优先级,第四步,编写中断服务程序,包括中断入口跳转等,第五步,设置中断使能,允许外部引脚触发中断。
第六步,设置死循环,主程序结束,交给中断服务程序完成计数。
步骤:1、将CPU板正确安放在CPU插座上,CPU板上跳线J7短接在INT0处;2、连线:用导线将MCU的INT0连接到单脉冲输出孔P-,连接好仿真器。
3、试验箱上电,在PC机上打开Keil C环境,打开试验程序文件夹EXT_INT1下的工程文件EXT_INT1.Uv2,编译程序,上电,进入调试状态,打开窗口VIEW-- Watch &Call stack Windows,按照程序注释说明设置断点,全速运行程序,每按下一次单脉冲开关Paulse,程序运行到断点处一次,观察变量num的变化。
三、单片机的定时器/计数器实验1 计数器实验目的:学习单片机的定时/计数器的计数功能使用方法。
内容:对外部单脉冲信号进行计数,计数10个后产生计数中断。
设备:EL-EMCU-I试验箱、EXP-C8051F021 CPU板。
编程:使用定时/计数器的计数功能,将外部时钟信号加在计数器的计数时钟输入引脚上,当计数10次后,计数器溢出,触发标志位,编程控制分频输出引脚电平翻转,产生分频后的时钟信号。
步骤:1、将CPU板正确安放在CPU接口插座上,2、连线:用导线将MCU的T0连接到DDS信号源的OUTPUT上(设置信号源的Vpp=2~5V之间;使之符合TTL电平的要求,高电平约在3~5V之间,低电平约在0~0.8V之间)。
此外将跳线J8跳到T1位置,连接好仿真器。
3、试验箱上电,在PC机上打开Keil C环境,打开试验程序文件夹COUNTER 下的工程文件COUNTER.Uv2,编译程序,上电,进入调试状态,单步运行程序观察每条语句执行后相关寄存器的变化。
4、上电全速运行程序,用示波器的两个通道观察时钟信号发生器的输出信号OUTPUT和单片机的MCU_IO1的波形,比较二者的频率关系实验2 秒时钟发生器实验目的:学习单片机的定时/计数器的定时功能使用方法。
内容:产生频率为0.5Hz的时钟输出。
设备:EL-EMCU-I试验箱、EXP-C8051F021 CPU板。
编程:使用定时/计数器的定时功能,时钟源采用系统时钟,根据时钟源的频率配置初值寄存器,使能定时器中断,在中断服务程序中翻转一个IO引脚输出,产生0.5Hz的时钟输出。
步骤:1、将CPU板正确安放在CPU接口插座上,2、连线:用导线将MCU的IO1连接到发光二极管L1的输入L1上,连接好仿真器。
3、试验箱上电,在PC机上打开Keil C环境,打开试验程序文件夹TIMER_SECOND下的工程文件TIMER_SECOND.Uv2,编译程序,上电,进入调试状态,单步运行程序观察每条语句执行后相关寄存器的变化。
4、全速运行程序,观察发光二极管的亮灭情况。
5、备注:现在的单片机系统时钟较高,难于产生1秒的定时中断,所以,可以设置定时时间为50毫秒,在中断服务程序中设置程序计数,当累加到1秒后,控制输出IO引脚电平翻转,驱动发光二极管。
四、单片机的串口特点和编程实验1 PC机串口通讯实验目的:学习单片机串口的使用方法。
内容:与PC机实现通讯。
设备:EL-EMCU-I试验箱、EXP-C8051F021 CPU板。
编程:第一步,配置串口工作在8位,波特率可变异步通讯工作方式,波特率由定时器1确定,同时使能其中断并清除其中断标志位;第二步,配置定时器1,工作在8位自动重装入模式,根据波特率计算其初值。
第三步,编写串口中断服务程序,只处理接收中断,对发送中断只清除标志,不做其他处理。
第四步,设置死循环,交由中断服务程序处理。
步骤:1、将CPU板正确安放在CPU接口插座上;2、连线:用导线将MCU的INT0 (TXD)、SOMI (RXD)分别连接到RS232的232TXD、232RXD,用附带的直连串口线连接试验箱的DB9和计算机的串口,接好仿真器。
3、试验箱上电,在PC机上打开Keil C环境,打开试验程序文件夹RS232下的工程文件RS232.Uv2,编译程序,上电,进入调试状态,单步运行程序观察每条语句执行后相关寄存器的变化。
4、打开PC机的超级终端,设置波特率115200、数据位8、无流控、无校验等信息,PC机全速运行试验程序,在超级终端里输入可显示字符,观察超级终端的显示,断开连接的串口线,再输入字符,观察显示有什么不同。
5、备注:在串口中断服务程序中,要清除中断标志位。
在发送数据前,要检测发送状态位在发送结束状态。
实验2 RS485通讯实验目的:学习单片机串口的使用方法以及RS485通讯。
内容:使用Max485芯片进行电平转换,实现差分方式通讯。
设备:EL-EMCU-I试验箱、EXP-C8051F021 CPU板。
(需2套)步骤:1、将两个实验箱的CPU板正确安放在CPU接口插座上,CPU板上的跳线J7均短接在INT0处。
2、连线:发送设备:(1)用导线将MCU的INT0 (TXD)、SOMI (RXD)、IO1、INT0分别连接到RS485的TXD、RXD、E485和单脉冲输出P-孔;CPU板上跳线J7短接在INT0处;(3)用两根导线顺序连接两个实验箱的UR1差分接口(上、下分别对接)。