《单片机Proteus仿真C51参考程序实验》

合集下载

实验3 C51程序设计与Proteus应用

实验3 C51程序设计与Proteus应用

6、程序的编译和链接
依次点击屏幕上方左下角的编译和建造目标图标 对文件进行编译和链接,观察左下角的调试 程序信息显示,如有错可根据该栏提示的信息进行修 改,修改后要重新保存和编译,直到无错误提示。
7、点击调试图标 ,进入程序调试画面,此时 黄箭头所指是将要执行的指令。
(1)调试界面分为4部分:
proteus中常用元器件和仿真仪表中英文对照表
7407 驱动门 、1N914 二极管 、74Ls00 与非门
74LS04 非门、74LS08 与门
74LS390 TTL 双十进制计数器 7SEG 4针BCD-LED 输出从0-9 对应于4根线的BCD码
7SEG 3-8译码器电路BCD-7SEG转换电路
Optoelectronics 各种发光器件 发光二极管,LED, 液晶等等;Resistors 各种电阻 ;Simulator Primitives 常用的器件 ;Speakers & Sounders 扬 声器 Switches & Relays 开关,继电器,键盘 Transistors 晶体管(三极管,场效应管) TTL 74 series 、TTL 74ALS series 、TTL 74AS series 、TTL 74F series 、TTL 74HC series TTL 74HCT series 、TTL 74LS series 、TTL 74S series
器件:单片机:AT89C51 1片,电容: CAP/ 33PF 2片,晶振: CRYSTAL/ 12MHZ 1个,按钮 Button, 电阻: RES/10K 1个、 100Ω 1个、300Ω1个,电解电容:CAP-ELEC 1片 22μF,LED灯 1个。 例如:输入RES,点Resistors,挑选适合的电阻,将元件放 置到原理图编辑窗口的合适位置。

51单片机C语言实例(350例)Proteus仿真和代码都有

51单片机C语言实例(350例)Proteus仿真和代码都有

51单片机C语言实例(350例)Proteus仿真和代码都有51单片机C语言实例(400例)所有实例程序均经测试过,适合新手学习。

1-IO输出-点亮1个LED灯方法1 10-LED循环左移100-24c02记忆开机次数101-24c02存储上次使用中状态102-DS1302 时钟原理103-DS1302可调时钟104-DS1302时钟串口自动更新时间105-1602液晶显示DS1302时钟106-字库ST7920 12864液晶基础显示107-按键 12864显示108-PCF8591 1路AD数码管显示109-PCF8591 4路AD数码管显示11-LED循环右移110-PCF8591 DA输出模拟111-PCF8591 输出锯齿波112-PCF8591 1602液晶显示113-串口通讯114-串口通讯中断应用115-RS485基本通讯原理116-红外接收原理117-红外解码数码管显示118-红外解码1602液晶显示119-红外发射原理12-查表显示LED灯120-红外收发测试121-双红外发射避障原理测试122-1个18B20 温度传感器数码管显示123-1个18b20温度传感器1602液晶显示124-多个18b20温度传感器1602液晶显示125-超温报警测试126-温度可调上下限1602126-温度可调上下限1602显示127-PS2键盘输入1602液晶显示128-双色点阵1种颜色显示测试129-双色点阵2种颜色显示测试13-双灯左移右移闪烁130-双色点阵显示特定图形131-双色点阵交替图形显示132-双色点阵双色交替动态显示133-热敏电阻测试数码管显示134-光敏电阻测试数码管显示135-自动调光测试136-串转并数字芯片测试137-非门数字芯片测试138-电子琴139-实用99分钟倒计时器14-花样灯140-外部频率测试141-定时做普通时钟可调142-1602液晶显示的密码锁143-实用密码锁144-1602液晶显示的计算器145-秒表146-串口测温电脑显示147-交通灯测试148-点阵模拟电梯上行下行149-点阵流动广告模拟15-PWM调光150-综合测试程序151-12位AD_DS1621与12864液晶152-闪烁灯一153-闪烁灯二154-流水灯A155-51单片机12864大液晶屏proteus仿真156-流水灯B157-数码管显示158-12864LCD显示计算器键盘按键实验159-数码管显示(锁存器)16-共阳数码管静态显示160-数码管动态显示161-数码管滚动显示162-数码管字符显示163-独立按键164-矩阵键盘165-矩阵键盘(LCD)166-用DS1302与12864LCD设计的可调式中文电子日历167-定时器的使用(方式1)168-12864LCD图形滚动演示169-用PG12864LCD设计的指针式电子钟17-1个共阳数码管显示变化数字170-定时器的使用(方式2)171-外部中断的使用172-定时器和外部中断173-开关控制12864LCD串行模式显示174-点阵显示175-液晶1602显示176-12864带字库测试程序177-串行12864显示178-遥控键值解码-12864LCD显示179-液晶12864并行18-单个数码管模拟水流180-液晶12864并行2181-串口发送试验182-串口接收试验183-串口接收(1602)184-蜂鸣器发声185-直流电机调速186-蜂鸣器间断发声187-lcd-12864应用188-继电器控制189-直流电机调速19-按键控制单个数码管显示190-步进电机191-存储AT24C02192-PCF8591T AD实验193-PCF8591T芯片DA实验194-温度采集DS18B20195-EEPROM_24C02196-12864LCD显示24C08保存的开机画面197-红外解码198-12864LCD显示EPROM2764保存的开机画面199-时钟DS1302(LCD)2-IO输出-点亮1个LED灯方法220-单个数码管指示逻辑电平200-宏晶看门狗201-SD卡202-秒表203-普通定时器时钟204-彩屏控制205-彩屏图片显示206-12864+DS1302时钟+18B20温度计207-12864测试程序208-12864串行驱动演示209-12864生产厂程序21-8位数码管显示其中之一210-12864中文显示测试211-LCD12864212-12864M液晶显示(有字库)程序(汇编)213-超声波测距LCD12864显示214-红外遥控键值解码12864液晶显示(汇编语言)215-用DS1302与12864LCD设计的可调式中文电子日历216-中文12864217-中文12864LCD显示红外遥控解码实验218-IO端口输出219-IO端口输入22-8位数码管静态显示其中之二220-流水灯221-数码管显示223-独立按键224-独立按键去抖动225-定时器0226-定时器1227-定时器2228-外部中断0电平触发229-外部中断0边沿触发23-8位数码管动态扫描显示230-外部中断1231-矩阵键盘232-液晶LCM1602233-LCD1602动态显示234-EEPROM24c02235-开机次数记忆236-红外解码LCD1602液晶显示237-红外解码数码管显示238-喇叭239-液晶背光控制24-8位数码管动态扫描原理演示240-与电脑串口通信241-步进电机242-字库LCD12864液晶测试243-液晶数码综合显示244-99秒计时245-99倒计时246-抢答器247-PWM调光248-LED点阵249-直流电机调速250-按键计数器251-秒表252-数码管移动253-花样灯254-红绿灯255-音乐播放256-红外收发演示257-普通定时器时钟258-继电器控制259-ps2键盘LCD1602液晶显示26-9累加260-RTC实时时钟DS1302液晶显示261-单线温度传感器18b20262-串口测温263-带停机步进电机正反转264-步进电机正反转265-AD_DA_PCF8591266-液晶AD_DA_PCF8591267-秒手动记数268-功能感受269-流水登27-99累加270-点亮一个二极管271-用单片机控制一个灯闪烁272-将P1口状态送入P0、P2、P3273-P3口流水灯274-通过对P3口地址的操作流水点亮8位LED 275-用不同数据类型控制灯闪烁时间276-用P0口、P1 口分别显示加法和减法运算结果277-用P0、P1口显示乘法运算结果278-用P1、P0口显示除法运算结果279-用自增运算控制P0口8位LED流水花样28-999累加280-用P0口显示逻辑与运算结果281-用P0口显示条件运算结果282-用P0口显示按位异或运算结果283-用P0显示左移运算结果284-万能逻辑电路实验285-用右移运算流水点亮P1口8位LED286-用if语句控制P0口8位LED的流水方向287-用swtich语句的控制P0口8位LED的点亮状态288-用for语句控制蜂鸣器鸣笛次数289-包含单片机寄存器的头文件29-9999累加290-用do-while语句控制P0口8位LED流水点亮291-用字符型数组控制P0口8位LED流水点亮292-用P0口显示字符串常量293-用P0 口显示指针运算结果294-用指针数组控制P0口8位LED流水点亮295-用数组的指针控制P0 口8 位LED流水点亮296-用P0 、P1口显示整型函数返回值297-用有参函数控制P0口8位LED流水速度298-用数组作函数参数控制流水花样299-用数组作函数参数控制流水花样3-IO输出-点亮多个LED灯方法130-9累减300-用函数型指针控制P1口灯花样301-用指针数组作为函数的参数显示多个字符串302-字符函数ctype.h应用举例303-内部函数intrins.h应用举例304-标准函数stdlib.h应用举例305-字符串函数string.h应用举例306-宏定义应用举例307-文件包应用举例308-条件编译应用举例309-用定时器T0查询方式P2口8位控制LED闪烁31-99累减310-用定时器T1查询方式控制单片机发出1KHz音频311-将计数器T0计数的结果送P1口8位LED显示311-用定时器T0的中断控制1位LED闪烁312-用定时器T0的中断实现长时间定时313-用定时器T1中断控制两个LED以不同周期闪烁314-用计数器T1的中断控制蜂鸣器发出1KHz音频315-用定时器T0的中断实现渴望主题曲的播放316-输出50个矩形脉冲317-输出正脉宽为250微秒的方波318-用定时器T0控制输出高低宽度不同的矩形波319-用外中断0的中断方式进行数据采集32-999累减320-输出负脉宽为200微秒的方波321-方式0控制流水灯循环点亮322-数据发送程序323-数据接收程序324-单片机向PC发送数据325-单片机接收PC发出的数据326-用LED数码显示数字5327-用LED数码显示器循环显示数字0~9328-用数码管慢速动态扫描显示数字1234329-用LED数码显示器伪静态显示数字123433-9999累减330-用数码管显示动态检测结果331-数码秒表设计332-数码时钟设计333-用LED数码管显示计数器T0的计数值334-静态显示数字“59”335-无软件消抖的独立式键盘输入实验336-软件消抖的独立式键盘输入实验337-CPU控制的独立式键盘扫描实验338-定时器中断控制的独立式键盘扫描实验339-独立式键盘控制的4级变速流水灯34-显示小数点340-独立式键盘的按键功能扩展:以一当四341-独立式键盘调时的数码时钟实验342-独立式键盘控制步进电机实验343-矩阵式键盘按键值的数码管显示实验344-矩阵式键盘按键音345-简易电子琴346-矩阵式键盘实现的电子密码锁347-用LCD显示字符'A'348-用LCD循环右移显示Welcome to China 349-将数据0x0f写入AT24C02再读出送P1口显示35-数码管消隐350-液晶时钟设计36-数码管递加递减带消隐37-数码管左移38-数码管右移38-数码管右移139-数码管右移24-IO输出-点亮多个LED灯方法240-数码管循环左移41-数码管循环右移41-数码管循环右移142-数码管循环右移243-数码管闪烁44-数码管局部闪烁45-定时器046-定时器147-定时器248-产生1mS方波49-产生200mS方波5-闪烁1个LED50-产生多路不同频率方波51-1个独立按键控制LED52-1个独立按键控制LED状态转换53-2按键加减操作53-2按键加减操作数码管显示54-多位数按键加减(闪烁)54-多位数按键加减(闪烁)数码管显示55-多位数按键加减(不闪烁)55-多位数按键加减(不闪烁)数码管显示56-定时器扫描数码管(不闪烁)57-按键长按短按效果58-抢答器59-独立按键依次输入数据6-不同频率闪烁1个LED灯60-按键从右至左输入61-8位端口检测8独立按键62-矩阵键盘行列扫描63-矩阵键盘反转扫描64-矩阵键盘中断扫描65-矩阵键盘密码锁66-矩阵键盘简易计算器67-外部中断0电平触发68-外部中断1电平触发69-外部中断0下降沿触发7-不同频率闪烁多个LED灯70-外部中断1下降沿触发71-T0外部计数输入72-T1外部计数输入73-看门狗溢出测试74-按键喂狗75-喇叭发声原理76-警车声音77-救护车声音78-喇叭滴答声79-报警发声8-8位LED左移80-消防车警报81-音乐播放82-步进电机转动原理83-步进电机正反转84-步进电机按键控制85-步进电机转速数码管显示86-双步进电机综合控制86-步进电机调速原理87-双步进电机综合控制87-步进电机综合控制87-步进电机调速原理88-直流电机按键控制89-直流电机调速控制9-8位LED右移90-继电器控制原理91-双继电器模拟洗衣机电机控制92-1602液晶静态显示93-1602液晶动态显示94-1602液晶滚动显示95-1602液晶移动显示96-1602液晶按键输入显示97-2402存储1个数据98-24c02存储多个数据99-24c02存储花样流水灯。

51单片机数字时钟-proteus仿真原理图及keil C51编译的C51程序

51单片机数字时钟-proteus仿真原理图及keil C51编译的C51程序

51单片机数字时钟-proteus仿真原理图及keil C51编译的C51程序该实验采用proteus 7.4 sp3进行的仿真,仿真原理图如下图所示,该实验采用定时器0的工作方式1定时500ms,等待20次定时1s进行时钟计数。

通过定时器1的工作方式1定时500ms,用来调整数码管闪烁的时间。

K1是用来选中时分秒,按一下选中时,再按一下选中分,再按一下选中秒,再按一下退出选中状态。

K2按一下数加一,K3按一下数减一。

在调整时间时,时钟停走。

/******************************************************************* **** 程序名; 时钟实验* 功能: 数码管通过动态扫描显示时间,时间可设定,调整时间时时钟不走.* 编程者: ZPZ* 编程时间:2009/8/9******************************************************************** **/#include<reg52.h>#define uint unsigned int#define uchar unsigned charsbit _led=P2^7;sbit key1=P2^0;sbit key2=P2^1;sbit key3=P2^2;uchar num=0,temp=0,count=0; uchar aa;uchar hour,min,sec;uchar codetable[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};void delay(uint z);void display(uchar a,uchar b,uchar c,uchar d,uchar e,uchar f,uchar aa);void read_key();void led();void time_change();/****************** 主函数 *******************/void main(){P2=0xff;hour=12;min=0;sec=0;TMOD=0x11;TH0=(65536-50000)/256;TL0=(65536-50000)%256;TH1=(65536-50000)/256;TL1=(65536-50000)%256;EA=1;ET0=1;ET1=1;TR0=1;TR1=1;aa=0xff;while(1){time_change();display(table[hour/10],table[hour%10],table[min/10], table[min%10],table[sec/10],table[sec%10],0xff);}}。

单片机原理及应用——C51编程+Proteus仿真(第3版)课件第3章 C51语言编程基础

单片机原理及应用——C51编程+Proteus仿真(第3版)课件第3章 C51语言编程基础
3.1.1 C51语言与8051汇编语言比较
与8051汇编语言相比, C51有如下优点。 (1)可读性好。C51语言程序比汇编语言程序的可读性好,编程效率 高,程序便于修改、维护以及升级。
5
(2)模块化开发与资源共享。用C51开发的程序模块可不经修改,直 接被其他工程所用,使得开发者能够很好地利用已有的大量标准C程序 资源与丰富的库函数,减少重复劳动,同时也有利于多个工程师进行协 同开发。
16
3.数据存储类型
在讨论C51数据类型时,须同时提及它的存储类型,以及它与8051单 片机存储器结构的关系,因为C51定义的任何数Байду номын сангаас类型必须以一定的方 式,定位在8051单片机的某一存储区中,否则没有任何实际意义。
8051有片内、片外数据存储区,还有程序存储区。
片内的数据存储区是可读写的,8051的衍生系列最多可有256字节的 内部数据存储区(例如AT89S52单片机),其中低128字节可直接寻址, 高128字节(80H~FFH)只能间接寻址,从地址20H开始的16字节可位寻 址。
9
(5)标准C语言没有处理单片机中断的定义,而C51语言中有专门的中 断函数。
(6)头文件不同。C51语言头文件必须把8051单片机内部的外设硬件资 源(如定时器、中断、I/O等)相应的特殊功能寄存器写入到头文件内,而 标准C不用。
(7)程序结构的差异。由于8051单片机的硬件资源有限,它的编译系 统不允许太多的程序嵌套。
2
3.3 C51语言的函数 3.3.1 函数的分类 3.3.2 中断服务函数 3.3.3 变量及存储方式 3.3.4 宏定义与文件包含 3.3.5 库函数
3
单片机应用系统日趋复杂,对程序的可读性、升级与维护以及模块化要 求越来越高,对软件编程要求也越来越高,要求编程人员在短时间内编写 出执行效率高、运行可靠的程序代码。同时,也要方便多个编程人员来进 行协同开发。

51单片机四路抢答器PROTEUS仿真报告(含C语言程序)

51单片机四路抢答器PROTEUS仿真报告(含C语言程序)

HEFEI UNIVERSITY四路抢答器仿真设计题目四路抢答器仿真设计班级自动化(1)班成员 YCT 11050310**PT 11050310**WW 11050310**时间 2014.5.19四路抢答器仿真设计目录一、前言 (1)二、方案设计 (1)三、理论分析 (2)四、电路设计 (2)1、晶体振荡器电路 (2)2、复位电路 (3)3、按键扫描部分 (3)4、显示部分 (4)五、软件模块 (6)六、系统组装调试 (8)七、总结 (8)参考文献 (9)附录 (10)四路抢答器仿真设计一、前言本设计要求能够在主持人按下开始键后,四个参赛者开始抢按自己的按键,谁的按键先按下,谁面前的灯就会亮并且有相应的提示,当参赛者耗时太多时又会有相应的提示。

根据设计的要求,本系统采用独立式按键,通过单片机不停的扫描按键来控制LED灯和蜂鸣器,并用定时器T0来定超时的时间,当超时的时候让蜂鸣器响。

二、方案设计(1)、总体设计方案一:采用可编程I/O口扩展芯片82558255作为单片机的扩展接口能实现很多功能,但是这个系统并不复杂,用8155会浪费很多的资源,而且8255要用P0和P2端口作为地址线对它进行读写,这样不仅浪费端口还使得编程变的复杂。

从节省资源和简化编程的角度考虑,放弃了此方案。

方案二:直接采用AT89C52单片机直接用单片机不仅编程被简化,还有效的利用了各个端口。

8051单片机的资源完全够这个系统的要求。

所以最终选择了此方案。

(2)、模块方案一:采用4*4矩阵键盘此种键盘是常用的按键扫描方法,但是本系统只需要六个按键,这样就会浪费十个,而且矩阵按键扫描要送数读数,对于编程很复杂,最终放弃了此方案。

方案二:采用独立式键盘本系统只要六个按键就可以,用独立式键盘不仅节省端口还使编程变得简单。

程序只要不停的读数检查就行。

所以,最终选择此方案。

2、系统总体设计方案与实现框图采用六个独立式的键盘作为按键输入,当在开始后有按键按下时,就会有对应于这个按键的灯亮并且蜂鸣器响一声,其它按键再按也无效。

单片机原理及应用——C51编程+Proteus仿真(第3版)课件第2章 硬件结构

单片机原理及应用——C51编程+Proteus仿真(第3版)课件第2章  硬件结构
件都集成在一个尺寸有限的集成电路芯片上。
图2-1 AT89S52单片机片内结构
6
片内各外围功能部件通过片内单一总线连接而成(见图2-1),基本结 构依旧是CPU 加上外围芯片的传统微机结构。
CPU对各种功能部件的控制是采用特殊功能寄存器(SFR,Special Function Register)的集中控制方式。
入引脚。
21
注意:AT89S51与AT89S52引脚的差别仅仅是在1脚(P1.0)与2脚( P1.1)上,AT89S52的1脚(P1.0)与2脚(P1.1)分别增加了定时器/计数 器T2的两个外部引脚T2和T2EX的复用功能。
当AT89S52单片机不使用片内的T2的两个引脚T2(P1.0)和T2EX( P1.1)的复用功能时,AT89S51以及各种8051兼容机与AT89S52的引脚功 能则完全相同,它们的外设硬件接口电路是完全相互通用的。
但是如果使用定时器T2的外部计数输入T2(P1.0)和“捕捉”输入 T2EX (P1.1)的功能时,则AT89S52的P1.0脚和P1.1脚就不能作为通用 I/O使用,这是AT89S52与AT89S51(或AT89C51)在外围接口电路设计上 的微小差别。
22
(3)P2口:P2.7~P2.0引脚 准双向I/O口,引脚内部接有上拉电阻,可驱动4个LS型TTL负载。 当AT89S52访问外部存储器及I/O口时,P2口作为高8位地址总线使用,
3
2.7 复位操作和复位电路 2.7.1 复位操作 2.7.2 复位电路设计
2.8 AT89S52单片机的最小应用系统
2.9 看门狗定时器(WDT)功能及应用
2.10 低功耗节电模式 2.10.1 空闲模式 2.10.2 掉电运行模式

《单片机原理与应用》KeilC51软件使用实验

《单片机原理与应用》KeilC51软件使用实验

《单片机原理与应用》KeilC51软件使用实验
一、实验目的和要求
熟悉51单片机的基本输入输出应用,掌握Proteus ISIS模块原理图绘图方法及单片机系统仿真运行方法。

二、实验内容和原理
(1)观察Proteus模块的软件结构,熟悉菜单栏、工具栏、对话框等基本单元功能。

(2)学会选择元件、画导线、画总线、修改属性等操作。

(3)学会可执行文件加载及程序仿真运行。

(4)验证计数显示器的功能。

三、主要仪器设备
电脑、keil c51、Proteus
四、操作方法与实验步骤
(1)提前阅读与实验1相关的阅读材料;
(2)参考实验1电路原理图和元件清单,在ISIS中完成电路原理图的绘制;(3)加载可执行文件,观察仿真结果,检验电路图绘制的正确性。

五、实验数据记录和处理
代码:
电路图:
六、实验结果与分析运行结果:
实验分析:
由实验结果可知,这是通过开关控制计数器显示,按一次开关计数器计一次数,即加一。

七、讨论和心得
通过本次数码管进行51计数器显示实验,让我知道了对教材应该熟悉,因为教材是基础的,只有把基础的搞好了才能够进行其它层次的学习。

其次,此次实验我还懂得了有时候可以通过软件的仿真来验证书上的一些理论性的东西。

通过C语言的编程,对数码管及51的应用让我对单片机理解更加明了。

单片机KEIL51和proteus仿真软件的使用

单片机KEIL51和proteus仿真软件的使用

实验:KEIL51和proteus仿真软件的使用一、实验目的1、掌握KEIL51软件的使用方法2、掌握proteus仿真软件的使用方法二、实验设备及软件1、单片机实验板2、PC机3、KEIL514、proteus三、实验任务KEILC和proteus仿真软件的使用方法四、实验步骤1、Proteus ISIS 设计单片机电路的基本步骤:(1) 新建设计文件夹或打开一个现有的设计文件。

(2) 选择元器件(通过关键字或分类检索)。

(3) 将元器件放入设计窗口。

(4) 添加其他模型(电源、地线、信号源等)和相关的虚拟仪器。

(5) 编辑和连接电路。

(6) 编写单片机所需的源程序。

(7) 加入源程序,并通过构造,得到仿真程序或目标程序。

(8) 根据需要,设置对象的属性,如将单片机的”Program File”属性设置为上述仿真调试程序或目标程序。

(9) 启动仿真功能,对电路进行仿真操作,验证其功能。

2、Keil 51基本步骤(1)单击Project菜单项,选择New Project项。

此时弹出Create New Project对话框,选择合适的路径口,在文件名一栏中填入新工程的名字。

单击保存。

(2)根据所用的器件,选择CPU的型号,单击确定。

(3)Keil51询问是否生成默认的配置文件,这个可选可不选。

单击NO,观察项目文件管理窗口的变化。

(4)在File菜单下单击New选项,新建文件。

此时在代码窗口出现一“Text1”空白文档。

(5)在“Text1”中编辑完代码后,单击File菜单中的保存项,弹出保存对话框。

注意在对文件命名时必须加扩展名.asm。

(6) 在项目导航栏中Source Group 上单击右键,选Add File to Group ‘Source Group 1’。

弹出Add File 对话框。

选中刚才保存的xxxx.asm.文件,单击Add,然后关闭对话框。

此时在项目文件管理窗口中就会出现刚才所添加的文件xxxt.asm。

proteus的C51仿真

proteus的C51仿真

proteus的C51仿真
Proteus的C51仿真
1、实验原理
Proteus是对C51仿真效果⽐较好的软件了,可以利⽤丰富的数字资源的外设实现⽐较接近实际的设计。

仿真⽅法也⽐较简单,不需要下载,只需要将仿真⽂件导出到器件的属性中就可以实现仿真。

2、实验操作
(1)硬件设计
前⾯已经接触过proteus基本的组合逻辑以及数字逻辑设计的⽅法,可以有效的构建C51外围的数字电路。

就是找元件,然后搭电路。

(2)软件设计
这部分采⽤keil软件,这个软件好久没见过了,基本上不⼤清楚操作了。

这⾥主要记录这个软件的操作界⾯,⽅便以后快速查询。

先看⼀下什么都没有的初始界⾯图。

还是熟悉的布局。

只不过project单独列出来,⽽不是放在file⼯具栏中。

然后⼤体的步骤就是新建project》新建main》设置hex输出⽂件》编译
这个流程还是⽐较熟悉的⼯程设置的套路。

设置HEX⽂件输出在如下所⽰位置:
这个对话框是右击target(默认⽬标)的Option中调出来的。

图中create HEX file 就是⽣成仿真⽂件。

主函数添加到Source Group即可。

如果是移植他⼈的⼯程,h⽂件放在同⼀个⽬录下即可⾃动调⽤,添加时只需加⼊c⽂件。

剩下的就是C51的编程了,这⾥不多说明。

3、实验结果
简单回忆⼀下C51的使⽤的基本流程。

⼤致记录⼀下相应的界⾯。

仿真还是⽐较简单的,只需要⽣成⽂件就没有问题。

好像还可以C51和proteus联合,这个没试过,⽤的也不多,就不记录了。

单片机原理及应用C51编程+Proteus仿真课程设计

单片机原理及应用C51编程+Proteus仿真课程设计

单片机原理及应用C51编程+Proteus仿真课程设计引言单片机作为一种广泛应用于各种电子设备中的CPU,其原理及应用已经越来越引起人们的重视。

而随着单片机市场的逐渐扩大,相应地,其应用的各个方面也有不断的发展。

C51编程和Proteus仿真则成为了单片机应用的重要部分。

在本文中,将会介绍单片机原理及应用C51编程+Proteus仿真的课程设计。

单片机原理概述单片机是一种基于微处理器的计算机,只不过在一个芯片上将所需要的各个部分集成在一起。

因为这种芯片还要集成内存、输入/输出接口以及带有复杂定时器/计数器的时钟电路,所以单片机相比微处理器要更容易应用。

单片机广泛应用于计算机外围设备、电子玩具、家用电器、汽车电子和移动通讯产品等。

C51编程C51是一种基于C语言的嵌入式系统开发的编程语言,也是一种使用最广泛的单片机编程语言。

C51编程可以对单片机内部的各种功能模块进行编程控制,包括输入输出、定时器、串口、中断等。

C51编程采用的是线性方式,程序由主函数和其他功能模块的函数调用组合而成。

C51编程语法C51编程语法和C语言基本类似,但也有一些不同之处。

以下是C51编程语言的部分语法:#include<reg52.h>// 引用单片机头文件void mn()// 主函数{...}void timer0() interrupt 1// 定时器0中断{...}C51编程常用命令以下是C51编程中常用的一些命令:•sbit: 用于定义单个I/O口•sfr: 用于定义特殊功能寄存器•xdata: 用于定义外部数据空间•idata: 用于定义内部数据空间•code: 用于定义程序空间Proteus仿真Proteus是一款电子设计自动化(EDA)软件,可以模拟电路、编程等各个方面。

Proteus可以在虚拟环境中对电路进行仿真,让设计者能够在软件中对电路进行分析、测试和验证。

在单片机原理及应用C51编程+Proteus仿真的课程设计中,Proteus可以很好地完成电路仿真的任务。

单片机原理及应用——C51编程+Proteus仿真(第3版)课件第4章-keil与Proteus的使

单片机原理及应用——C51编程+Proteus仿真(第3版)课件第4章-keil与Proteus的使
图4-20 hex文件生成的提示信息
35
占用程序存储器共89字节。最后生成的.hex文件名为“流水灯.hex”,至 此,整个程序编译过程就结束了,生成的.hex文件就可在后面介绍的 Proteus环境下进行虚拟仿真时,装入单片机运行。
下面对用于编译、连接时的快捷按钮
与 作简要说明:
(1) 用于编译正在操作的文件。。
这些图标大多数是与菜单栏命令【Debug】下拉菜单中的各项子命令是 相对应的,只是快捷按钮图标要比下拉菜单使用起来更加方便快捷。
24
图4-15与图4-16中常用的快捷按钮图标的功能介绍图4-14中各个窗口的开与关。
25
(2)各调试功能的快捷按钮
片机可以运行的二进制文件(.hex格式文件),文件的扩展名为.hex。 (2)Select Folder for objects—选择最终的目标文件所在的文件夹,默认
与项目文件在同一文件夹中,通常选默认。 (3)Name of Executable—用于指定最终生成的目标文件的名字,默认与
项目文件相同,通常选默认。
(2) 按钮—用于编译修改过的文件,并生成相应的目标程序(.hex文 件),供单片机直接下载。
(3) 按钮—用于重新编译当前项目中的所有文件,并生成相应的目标 程序(.hex文件),供单片机直接下载。主要用在当项目文件有改动时 ,来全部重建整个项目。
36
因为一个项目不止一个文件,当有多个文件时,可用本按钮进行编译。 用C51编写的源代码程序不能直接使用,一定要对该源代码程序编译,生
窗口会出现一个空白的文件编辑画面,用户可在这里输入编写的程序源 代码。
11
(2)单击图4-1中快捷按钮
图4-7 建立新文件
(2)单击图4-1中快捷按钮 ,保存用户程序文件,这时会弹出如图4-8 所示窗口。,保存用户程序文件,这时会弹出如图4-8所示窗口。

单片机原理----C51编程及Proteus仿真 习题答案 (金宁治) 习题2答案

单片机原理----C51编程及Proteus仿真  习题答案 (金宁治) 习题2答案

一、填空 1 .程序状态字寄存器PSW 的CY 位代表 进位标志位,AC 位代表 辅助进位标志位, 0V 位代表溢出标志位,P 位代表奇偶校验位。

2 .执行3CH 和F6H 两个有符号数相加的指令后,累加器(A) = 32H , CY=J, AC =L , OV =0, P=J o3.程序计数器PC 的位数是」6位,因此它可对64KB 的程序存储器进行寻址。

4.堆栈操作遵循的原那么是先入后出。

5 .如果堆栈指针SP 指向30H 单元,那么在执行一次入栈指令和两次出栈指令后,(SP)= 2FHo6. 8051的机器周期等于12个时钟振荡周期。

7. 8051的晶振频率为24MHz,那么一个机器周期为2”。

8 . 8051的晶振频率为12MHz,那么ALE 引脚的输出频率为2MHz 。

9 .复位后,堆栈指针SP 的内容为07H ,程序计数器PC 指向程序存储器的地址为 0000H , P0〜P3 口的状态为FFH 。

10 .在RST 引脚持续加上2个机器周期以上的高电平,系统才能可靠复位。

11 .微型计算机的存储器有两种基本结构:一种是将程序和数据合用为一个存储器空间, 称为普利斯顿结构;另一种是将程序存储器和数据存储器截然分开,称为哈佛结构。

12 .当STC89C52RC 的函引脚接高电平时,优先寻址片内ROM 的0000H 〜1FFFH 单 元;而当地址范围超出低8K B 之外时,自动转向访问片外ROM 从2000H 开始编址的存 储单元,且最多可以扩展的片外存储容量为56KB 。

13 .复位后,自动选择第 Q 组工作寄存器组,堆栈指针SP 指向该组的工作寄存器上2。

14 .如果选择第」一组工作寄存器组,那么需要设置状态位RS1RS0为“01”,当前工作寄 存器R0〜R7的地址为08H 〜0FH 。

15.片内RAM 的20H 〜2FH 单元为位寻址区,这一区域包含」2幺个可寻址位。

16.位寻址区中20H 单元D7位的位地址表示为 17 . 8051有4个8位双向并行I/O 口,其中唯一的单功能□为P1 口。

单片机Keil C51和PROTEUS实验指导书

单片机Keil C51和PROTEUS实验指导书

目录实验一单片机仿真开发系统的使用 (2)1.1 Keil C51 集成开发环境介绍 (2)1.2 用Proteus仿真软件 (6)1.3 实现单片机最小系统的简单应用。

(8)实验二显示及驱动电路设计用 (10)实验三简单输入/输出实验 (12)实验四外部中断的运用 (14)实验五单片机内部定时/计数器实验 (15)实验六串行口通信设计 (17)实验七直流电机控制 (18)实验八步进马达控制 (19)实验一单片机仿真开发系统的使用1.1 Keil C51 集成开发环境介绍①、运行keil C51编辑软件,软件界面如图1-1所示②、建立一个新的工程项目单击Project菜单,在弹出的下拉菜单中选中New Project选项③、保存工程项目a、选择要保存的文件路径,输入工程项目文件的名称,如保存的路径为C51文件夹,工程项目的名称为C51,如图所示,单击保存b、为工程项目选择单片机型号在弹出的对话框中选择需要的单片机型号,如图所示,这里选择51核单片机中使用较多的89S51,选定型号后,单击确定,出现如图所示的开发平台界面④、新建源程序文件在下图中单击“File”菜单,选择下拉菜单中的New选项,新建文件后得到如图的界面:⑤、保存源程序文件单击“File”菜单,选择下拉菜单中的Save选项,在弹出的对话框中选择保存的路径及源程序的名称,如图所示。

此时光标在编辑窗口里闪烁,这时可以键入用户的应用程序了,建议首先保存该空白的文件,单击菜单上的“File”,在下拉菜单中选中“Save As”选项单击,屏幕如下图所示,在“文件名”栏右侧的编辑框中,键入欲使用的文件名,同时必须键程序录入区域入正确的.扩展名。

注意,如果用C语言编写程序,则扩展名为(.c);如果用汇编语言编写程序,则扩展名必须为(.asm)。

然后,单击“保存”按钮⑥、为工程项目添加源程序文件在编辑界面中,单击“Target”前面的“+”,再在“Source Group”上单击右键,得到如图所示的对话框,选择“Add File to Group’Source Group 1’”,弹出如图所示的对话框,选中要添加的源程序文件,单击“Add”,得到如图所示的界面,同时,在“Source Group 1”文件夹中多了一个添加的“Text1.c”文件。

单片机C51程序设计实验报告书

单片机C51程序设计实验报告书

实验一并行输入输出口的使用一、实验目的:学会设计proteus 7仿真电路,学习P1口的使用方法和延时子程序的编写用Keil uVision 3编程实现发光二极管的流水点亮。

二、实验原理:P1口为8位准双向I/O口,它的每一位都可以分别定义为输入线或输出线(作为输入时,口锁存器必须置1)。

P1口作为输出,接8个发光二极管D1~D8三、实验代码:#include<reg51.h>#include<intrins.h> //移位库函数包含于此头文件中void delay(unsigned int d) //定义延时子函数{ while(--d>0);}void main(){ unsigned char i,sel;while(1){ sel=0xfe;for(i=0;i<=8;i++){ P1=sel; //显示变量赋给P1口delay(50000); //延时sel=_crol_(sel,1); //改变显示变量}}}四、实验结论:用while语句实现发光二极管循环流水点亮,从上到下一次点亮。

实验二C51分支程序设计一、实验目的:学习多分支选择结构和switch语句,了解循环的嵌套。

二、实验原理:do while 循环先执行后判断是否循环,switch括号中的表达式的值与某case后的常量表达式的值相同时,就执行它后面的语句,遇到break语句则退出switch语句。

本实验仿真电路图、流程图如下:(仿真电路图)(流程图)三、实验代码:#include <reg51.h>void main(){ char a;do{ P1=0xff;a=P1;a=a&0x03;switch(a){ case 0:P2=0x0e;break;case 1:P2=0x0d;break;case 2:P2=0x0b;break;case 3:P2=0x07;break;}}while(1);}四、实验结论:多分支选择的switch/case语句,可直接处理并行多分支选择问题,从匹配表达式的括号开始执行,不再进行判断。

单片机原理与应用基于C51及Proteus仿真课程设计

单片机原理与应用基于C51及Proteus仿真课程设计

单片机原理与应用基于C51及Proteus仿真课程设计一、课程设计综述1.1 课程设计目的本课程旨在学习单片机的基本原理和应用,并采用C51单片机和Proteus仿真软件进行课程设计,从而使学生能够掌握单片机的应用和仿真技术。

1.2 课程设计内容本课程包括以下几个部分:1.单片机基本原理2.Keil C51单片机编译器的使用3.单片机电路设计基础4.基于C51的单片机应用程序编写5.Proteus仿真技术1.3 课程设计学时本课程为64学时。

二、课程设计教学方法2.1 教学形式本课程采用面授和实验相结合的教学形式。

面授部分主要讲解单片机基本原理和基于C51的单片机应用程序编写;实验部分主要通过Proteus仿真软件进行实现。

2.2 实验设计实验设计具体包括以下几个方面:1.使用Keil C51编译器编写简单的单片机程序2.加入单片机外设并编写相应的程序3.制作简单的电路并进行仿真4.接口编程实现多个模块之间的通信2.3 学生自主设计本课程不仅要求学生完成老师布置的实验,而且要求学生自主设计单片机程序,并完成相应的仿真。

三、课程设计教学难点与重点3.1 难点本课程设计的教学难点主要有以下几个方面:1.单片机原理的学习2.Keil C51编译器的使用3.Proteus仿真技术的应用3.2 重点本课程设计的教学重点主要有以下几个方面:1.单片机应用程序的编写2.仿真实验设计和仿真数据分析四、课程设计实验器材实验器材主要由以下内容组成:•单片机主板•串口调试助手•USB数据线•LED灯•按键开关•电阻、电容等元器件•电路板•PC机五、课程设计评分标准5.1 总分总分100分,其中实验分占60分,课程论文占40分。

5.2 实验分实验分包括设计+仿真+实验操作三个方面,其中设计分占30分,仿真分占15分,实验分占15分。

5.3 课程论文课程论文满分为40分,主要分为以下几个方面:1.论文格式,4分2.论文要求,6分3.技术要求满足程度,10分4.技术难度和创新,10分5.实用性及可行性,10分六、课程设计参考书目1.《Keil C51单片机编程与实例分析》2.《Proteus仿真技术详解》3.《单片机原理及应用》七、结语以上为本课程设计的整体方案和教学内容。

单片机原理及应用——C51编程 Proteus仿真(第二版)

单片机原理及应用——C51编程 Proteus仿真(第二版)

作者简介
作者简介
张毅刚,哈尔滨工业大学电气工程及其自动化学院自动化测试与控制系教授,国家精品课、国家精品资源共 享课、中国大学MOOC《单片机原理》课程负责人,中国高等教育学会仪器科学及测控技术专业委员会副主任。
赵光权,男,汉族,工学博士,哈尔滨工业大学电子与信息工程学院副教授,硕士生导师。 张京超,男,1984年生,哈尔滨工业大学电子与信息工程学院副研究员,硕士生导师。研究方向为基于稀疏 先验的采样理论及优化方法,高过载条件下的试验测试技术,雷达回波信号实时仿真技术。
教材目录
教材目录
(注:目录排版顺序为从左列至右列)
教学资源
教学资源
《单片机原理及应用——C51编程+Proteus仿真(第二版)》的数字课程与纸质教材一体化设计。数字课程 涵盖数字课程介绍、该书全部12章内容的电子讲稿(PPT文件)、案例运行文件的50个文件夹,书中所有案例 的.dsn文件及.hex文件,两个可执行的视频多媒体文件、PROTEUS整体功能介绍,PROTEUS的ISIS与ARES演示 (视频),以流水灯设计为例,介绍了在Proteus下如何进行电路原理图设计、软件编程调试的实际操作以及印 制板图的绘制操作,介绍Proteus V8版本的PPT文件,对新版本V8与先前版本在功能上的改进进行了说明等板 块。
该书共15章,介绍了美国ATMEL公司的AT89S51/AT89S52单片机片内硬件资源及工作原理,采用C51语言编程、 虚拟仿真平台Proteus作为设计与开发工具来对案例进行仿真与验证。从应用角度出发,重点介绍了单片机应用 的各种技术实现,如信息的显示与输入、中断、定时/计数、串行通信、模数与数模转换以及系统的并行与串行扩 展等。此外还简要介绍了C51编程基础以及先进的开发工具Proteus与Keil μVision3的使用。结合各种应用, 书中给出的较多典型案例设计可为读者的应用设计提供参考与借鉴。

单片机原理及应用C51编程+Proteus仿真第二版教学设计

单片机原理及应用C51编程+Proteus仿真第二版教学设计

单片机原理及应用C51编程+Proteus仿真第二版教学设计前言单片机作为一个流行的嵌入式系统开发工具,被广泛应用于各个领域。

同时,C语言作为一种广泛应用于嵌入式系统编程的高级语言,也成为了单片机开发的主要方式。

本文将介绍单片机原理及应用C51编程+Proteus仿真第二版教学设计。

教学目标本教学设计的目标是使学生掌握以下内容:1.学习单片机基本运行原理及其应用;2.掌握C51编程方法;3.熟悉Proteus仿真工具;4.实现单片机项目开发、调试及运行。

教学内容第一章单片机基本原理本章将介绍单片机的基本概念、基本构成及其工作原理。

包括:1.单片机的发展历程;2.单片机基本概念及体系结构;3.单片机存储器及其使用;4.单片机输入输出及中断机制。

第二章 C51编程及编译本章将介绍C语言在单片机编程中的应用,包括:1.C51编程环境搭建及程序框架;2.C语言基础知识及语法;3.单片机中断编程;4.C51编译及烧录操作。

第三章 Proteus仿真工具本章将介绍Proteus仿真工具的基本概念及使用方法,包括:1.Proteus软件环境搭建;2.Proteus元器件选用及电路连接;3.Proteus仿真参数设置及仿真操作;4.故障排除及仿真结果分析。

第四章单片机应用实例本章将介绍单片机在实际开发中的应用实例,包括:1.键盘输入及显示控制;2.温度传感器数据采集及处理;3.LED灯控制及存储器应用;4.其他应用扩展实例。

教学方法本教学设计将使用多种教学手段,包括:1.理论授课:通过PPT及黑板讲解单片机原理、C语言编程及Proteus仿真工具使用方法等;2.实验操作:通过实验操作,让学生掌握单片机开发流程,熟悉各种开发工具的使用方法;3.课后作业:布置课后作业,以巩固学生学习成果。

教学资源本教学设计除了PPT外,还将提供以下资源:1.单片机芯片及相应开发板;2.C51编程及烧录软件;3.Proteus仿真软件;4.相应开发板的电路连接图、程序框架及注意事项。

单片机原理及应用——C51编程+Proteus仿真(第3版)课件第12章 各种应用设计

单片机原理及应用——C51编程+Proteus仿真(第3版)课件第12章 各种应用设计
理论上,测频法适于较高频率测量,测周法适于较低频率测量。
本例采用测频法。
20
2. 电路设计与软件编程 【例12-3】设计以单片机为核心的频率测量装置,测量加在P3.4脚上数字
时钟信号频率,并在外部扩展的6位LED数码管上显示测量频率值。原理电路 与仿真见图12-5。
本频率计测量的信号由数字时钟源“DCLOCK”产生,在电路中添加数 字时钟源的具体操作与设置Proteus的使用说明。手动改变被测时钟信号源 频率,观察是否与LED数码管上显示的测量结果相同。
2
12.1 单片机控制步进电机的设计 步进电机是将脉冲信号转变为角位移或线位移的开环控制元件。 非超载的情况下,电机转速、停止位置只取决于脉冲信号的频率和脉冲
数,而不受负载变化的影响,给电机加一脉冲信号,电机则转过一个步距 角。因而步进电机只有周期性误差而无累积误差,在速度、位置等控制领 域有较为广泛的应用。
TH1=0x3c; TL1=0xb0;
//定时器T1的中断函数
27
cnt_t1++; }
void t0_func() interrupt 1 {
cnt_t0++; }
//定时器T0的中断函数
12.4 电话机拨号的模拟
1. 设计要求
i=250; while(--i); i=249; while(--i); } }
//延时函数
10
12.2 单片机控制直流电机
直流电机多用在无交流电源、方便移动场合,具有低速大力矩等特点。 下面介绍如何用单片机控制直流电机。
1. 控制直流电机的工作原理
对直流电机可精确控制其旋转速度或转矩,通过两个磁场相互作用产生 旋转。结构见图12-3(a),定子装设一对直流励磁的静止主磁极N和S,在转 子上装设电枢铁心。定子与转子间有一气隙。在电枢铁心上放置了由两根 导体连成的电枢线圈,线圈首端和末端分别连到两个圆弧形铜片上,此铜 片称为换向片。由换向片构成的整体称为换向器。
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

班级:
学号:
姓名
实验二 定时计数器中断实验
一、实验目的
利用单片机的定时计数器和外部中断,实现 LED 流水灯轮流发光,流水时间以定时器 的方式来控制,利用计数器进行计数改变流水灯的状态,输入外部脉冲产生外部中断改变流 水灯的状态。
二、实验原理
1.在 Proteus 环境下建立如下仿真原理图,并保存为文件;
uchar t;while(x--)for(t=0;t<120;t++); }
班级:
学号:
姓名
void main() {
uchar i,j=0x01; while(1) {
P2=j; j=_crol_(j,1); delay_ms(100); } } 将以上程序补充完整,流水时间间隔为 100ms。 3.将.HEX 文件导入仿真图,运行并观察结果;
R11uF
200
29
R2 30
1k 31
PSEN ALE EA
P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15
21 22 23 24 25 26 27 28
1 2 3 4 5 6 7 8
P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7
2.在 Keil 环境下建立源程序并保存为.C 文件,生成.HEX 文件;
参考程序如下:
#include<reg51.h>
班级:
学号:
姓名
#include<intrins.h> #define uchar unsigned char #define uint unsigned int void delay_ms(uint x) {
1.在 Proteus 环境下建立如下仿真原理图,并保存为文件;
C1
30pF
C2
30pF
X1
19
CRYSTAL
18
U1
XTAL1
XTAL2
C3
9 RST
P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7
39 38 37 36 35 34 33 32
三、主要实验设备
实验室电脑及配套软件。
四、实验内容
1.编写出对应的 C51 程序; 2.改变流水灯的时间间隔; 3.改变流水灯方向。
五、实验总结
进行软硬件仿真时,观察到 8 支 LED 发光二极管流水发光。
六、预习及思考
1.如何让改变流水方向? 2.若将 R3 至 R10 上拉电阻省略,8 支 LED 还能正常发光吗? 3.如果将 LED 接到 P0 口与接到 P2 口硬件设计时应注意什么问题?
班级:
学号:
姓名
} 将以上程序补充完整,流水时间间隔,闪烁时间间隔为 250ms。 3.将.HEX 文件导入仿真图,运行并观察结果;
39 38 37 36 35 34 33 32
P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15
21 22 23 24 25 26 27 28
P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1
2.在 Keil 环境下建立源程序并保存为.C 文件,生成.HEX 文件;
参考程序如下:
#include<reg51.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int
void delay_ms(uint x) {
P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD
10 11 12 13 14 15 16 17
R11
1k
原理图中常用库元件的名称:
无极性电容:CAP 极性电容:CAP-ELEC 单片机:AT89C51
晶体振荡器:CRYSTAL电阻:RES
按键:BUTTON
发光二极管:红色 LED-RED 绿色 LED-GREEN 蓝色 LED-BLUE 黄色 LED-YELLOW
班级:
学号:
姓名
实验一 I/O口的实验
一、实验目的
1.掌握在Keil环境下建立项目、添加、保存源文件文件、编译源程序的方法; 2.掌握运行、步进、步越、运行到光标处等几种调试程序的方法; 3.掌握在Proteus环境下建立文件原理图的方法; 4.实现Proteus与Keil联调软件仿真。
二、实验原理
uchar t;while(x--)for(t=0;t<120;t++); } void main() {
uchar i,j=0x80; IT0=1; EX0=1; EA=1; while(1) {
P1=j; j=_cror_(j,1) delay_ms(250); } } void EX0_INT()interrupt 0 { uchar i; for(i=0;i<5;i++) { P1=0xff; delay_ms(250); P1=0x00; delay_ms(250); }
C1
30pF
C2 30pF C3 R1 1uF
200
U1 X1 19 XTAL1
18 XTAL2
9 RST
R2 29
1k 30 31
PSEN ALE EA
1 2 3 4 5 6 7 8
P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7
AT89C51
P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7
P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1
P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD
10 11 12 13 14 15 16 17
AT89C51 PROGRAM=..\KEIL\shiyan2.hex
原理图中常用库元件的名称:
R3 R4 R5 R6 R7 R8 R9 R10ຫໍສະໝຸດ 1k1k1k
1k
1k
1k
1k
1k
D1 D2 D3 D4 D5 D6 D7 D8
无极性电容:CAP 极性电容:CAP-ELEC 单片机:AT89C51
晶体振荡器:CRYSTAL 电阻:RES
按键:BUTTON
发光二极管:红色 LED-RED 绿色 LED-GREEN 蓝色 LED-BLUE 黄色 LED-YELLOW
相关文档
最新文档