文档库 最新最全的文档下载
当前位置:文档库 › 用Proteus和Keil建立单片机仿真工程的步骤

用Proteus和Keil建立单片机仿真工程的步骤

用Proteus和Keil建立单片机仿真工程的步骤
用Proteus和Keil建立单片机仿真工程的步骤

1.新建工程目录:最好是英文名称,如e盘的sy1

2.打开Proteus软件(桌面上的ISIS.EXE)

3.添加元件

单片机AT89C52

电容CAP

电解电容CAP-ELEC

晶振Crystal

电阻RES

发光二极管LED-GREEN/LED-RED/LED-BLUE/LED-YELLOW 4.放置元件,设置参数,连线,绘制原理图

5.保存到工程目录sy1

6.打开keil软件

7.新建工程

右击Target 1

新建源程序文件并保存,注意,后缀要是.c

添加源程序到工程

编写程序并编译生成hex文件

目录下生成了hex文件

回到Proteus界面,双击单片机添加hex文件

运行,查看结果

如果达不到满意的效果,只需要在Keil中修改程序,编译,然后在Proteus中重新运行就可以查看新的运行结果了。

Proteus仿真单片机实例

引言 单片机体积小,重量轻,具有很强的灵活性而且价格便宜,具有逻辑判断,定时计数等多种功能,广泛应用于仪器仪表,家用电器,医用设备的智能化管理和过程控制等领域。以单片机为核心的嵌入式系统已经成为目前电子设计最活跃的领域之一。在嵌入式系统的中,开发板成本高,特别是对于大量的初学者而言,还可能由于设计的错误导致开发板损坏。利用Proteus我们可以很好地解决这个问题,由此我们可以快速地建立一个仿真系统。 2.Proteus介绍 Proteus是英国Labcenter Electro-nics公司开发的一款电路仿真软件,软件由两部分组成:一部分是智能原理图输入系统ISIS(Intelligent Schematic Input System)和虚拟系统模型VSM(Virtual Model System);另一部分是高级布线及编辑软件ARES(Adv-Ancd Routing And Editing Software)也就是PCB. 2.1 Proteus VSM的仿真 Proteus可以仿真模拟电路及数字电路,也可以仿真模拟数字混合电路。 Proteus可提供30多种元件库,超过8000种模拟、数字元器件。可以按照设计的要求选择不同生产厂家的元器件。此外,对于元器件库中没有的元件,设计者也可以通过软件自己创建。 除拥有丰富的元器件外,Proteus还提供了各种虚拟仪器,如常用的电流表,电压表,示波器,计数/定时/频率计,SPI调试器等虚拟终端。支持图形化的分析功能等。 Proteus特别适合对嵌入式系统进行软硬件协同设计与仿真,其最大的特点是可以仿真8051,PIA,A VR,ARM等多种系列的处理器。Protues包含强大的调试工具,具有对寄存器和存储器、断点和单步模式IAR C-SPY,Keil、MPLAB等开发工具的源程序进行调试的功能;能够观察代码在仿真硬件上的实时运行效果;对显示,按钮,键盘等外设的交互可视化进行仿真。 2.2 Proteus PCB Proteus 的PCB设计除了有自动布线仿真功能外,还集成了PCB设计,支持多达16个布线层,可以任意角度放置元件和焊接连线;集成了高智能的布线算法,可以方便地进行PCB设计。 3. 基于Protesus的简单数据采集系统。 3.1 软件的编写 本例题采用可调电阻调节电压值作为模拟信号的输入量,通过A/D转换芯片AD0808把模拟信号转换为数字量传送到单片机的P1口,并在P0口把转换的结果显示出来。 软件的编写可以在Keil C51 环境下进行,芯片的型号选择AT89C51,编写data.c文件,利用Keil C51进行编译,编译成功后生成data.hex文件。 3.2 绘制电路图 运行Proteus的ISIS,进入仿真软件的主界面,如图1所示。主界面分为菜单栏,工具栏,模型显示窗口,模型选择区,元件列表区等。

STMv3.5固件库在keil4中建立工程的具体过程

首先建立一个文件夹用来装工程(文件夹名自定,笔者建立的文件名为“ggyy_Proj”文件夹)。 在“ggyy_Proj”文件夹下,建立两个文件夹“User”和“Project”。 将库文件STM32F10x_StdPeriph_Lib_V3.5.0下的“Libraries”文件夹全部拷入“ggyy_Proj”文件夹下。 将“ggyy_Proj”文件夹下的“Project”文件夹下建立三个文件夹“List”、“Obj”和“Pro”。其中Pro用来存放工程。 将“ggyy_Proj”文件夹下的“User”文件夹下建立两个文件夹“inc”和“src”。

然后将需要用到的文件拷贝到相应的文件夹中: 将以下5个.h文件考进ggyy_Proj下User下的inc文件夹中: ···ggyy_Proj\Libraries\CMSIS\CM3\CoreSupport\core_cm3.h ···ggyy_Proj\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\system_stm32f10x.h \stm32f10x.h 固件库中: ·STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template\stm32f10x_conf.h \stm32f10x_it.h 将以下2个.c文件考进ggyy_Proj下User下的src文件夹中: 固件库中: ···STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template\stm32f10x_it.c \main.c 现在打开keil,并点击在Project菜单栏下的New uVision Project…来新建工程。

51单片机+proteus仿真PWM

#include unsigned char flag; unsigned int x; unsigned int y; #define time 800 void main() { EA=1; //开总中断 ET0=1; //定时器T0中断允许 TMOD=0x02; //使用定时器T0的模式2 TH0=0; //定时器T0的高8位赋初值 TL0=0; //定时器T0的高8位赋初值 TR0=1; //启动定时器T0 x=time; y=0; while(1)//无限循环等待中断 ; } /************************************************************** 函数功能:定时器T0的中断服务程序 **************************************************************/ void Time0(void) interrupt 1 using 0 //“interrupt”声明函数为中断服务函数 //其后的1为定时器T0的中断编号;0表示使用第0组工作寄存器{ if(flag==0) { TH0=256-y; //定时器T0的高8位重新赋初值 TL0=256-y; //定时器T0的高8位重新赋初

P1=1; if((--x)==0) { flag=1; x=time; if((--y)==0) { y=100; } } } if(flag==1) { TH0=y; //定时器T0的高8位重新赋初值 TL0=y; //定时器T0的高8位重新赋初 P1=0; if((--x)==0) { flag=0; x=time; if((--y)==0) { y=100; } } } }

单片机原理与应用—基于Proteus和KeilC课后答案复习题解答.doc

第 2 章 MCS-51 单片机结构及原理习题 1. MSC- 51 单片机部由哪些功能部件组成,各有什么功能? 答:以 80C51 单片机为例,其部功能部件有: 控制器:是对取自程序存储器中的指令进行译码,在规定的时刻发出各种操作所需的控制信 号,完成指令所规定的功能; 运算器:根据控制器发来的信号,执行算术逻辑运算操作; 存储器:包括程序存储和数据存储器; 定时器计数器: 2 个 16 位定时器 / 计数器,可对机器周期计数,也可对外部输入脉冲计数; 中断系统:可响应三个部中断源和两个外部中断源的中断请求;输入输出接口: 4 个 8 位并行 口和一个全双工串行口; 2. MSC- 51 单片机外部引脚的名称是什么?各有什么功能? 答: (1)电源及晶振引脚 VCC(40 脚 ) : +5V 电源引脚 VSS(20 脚 ) :接地引脚 XTAL1(19 脚 ) ;外接晶振引脚(置放大器输入端) XTAL2(18 脚 ) :外接晶振引脚(置放大器输出端) (2)控制引脚 RST/VPD(9)为复位 /备用电源引脚 ALE/PROG(30)为地址锁存使能输出/编程脉冲输入 PSEN(29):输出访问片外程序存储器读选通信号 EA/ VPP (31):外部ROM允许访问/编程电源输入 (3)并行 I/O 口引脚 P0.0 ~ P0.7 ( 39~ 32 脚)—— P0 口; P1.0 ~ P1.7 ( 1~ 8 脚)—— P1 口; P2.0 ~ P2.7 ( 21~ 28 脚)—— P2 口; P3.0 ~ P3.7 ( 10~ 17 脚)—— P3 口。 3. 51 系列单片机的封装有哪些类型?请说明每一种封装引脚之间的距离。 答: 51 系列单片机的封装有: 40 引脚双列直插封装( DIP—— dual in-line package ),引脚之间的距离是 100mil(2.54mm) ; 44 引脚方形扁平封装( QFP —— quad flat package )方式,引脚之间的距离是 2.54mm;44 引脚带引线的塑料芯片载体PLCC(Plastic Leaded Chip Carrier) 。 4.什么是复位?单片机复位电路有哪几种,工作原理分别是什么? 答:复位——使单片机恢复原始默认状态的操作。 单片机复位电路有: 上电复位电路,由电阻和电容构成,通过上电时,电容相当于短路而使 复位引脚在晶振有效的情况下保持 2 个机器周期的高电平;按钮开关复位电路,由两个电阻

GD32 Keil5工程创建步骤

第一步:安装DFP软件包 (1)按照Keil uVision5, 步骤略。我的keil版本如下: (2)下载GD3210X的DFP软件包。 下载地址: 插件包下载完成后,有3个文件。 (3)安装DFP软件包。双击.pack文件进行安装,如下图所示:

点击next,将包文件复制到上面的路径位置。如下图: GigaDevice文件夹就是安装好的软件包。 第二步:创建Keil工程 (1)通常要新建3个文件夹。如下图所示: (2)打开keil5,新建project.将工程文件放到Mdk-Arm目录下面。弹出器件选择界面:在Device下拉框,选择Software Packs,选择GD32F103RB,点击OK

接着弹出Mannage RTM界面,选中CMSIS的CORE和设备外围库文件,如下所示: 点击OK,CMSIS工具自动添加库文件到./Mdk-Arm/RTE目录中,工程目录如下所示:

(3)在Keil5中,打开文件管理界面: 依次创建文件组:Application/Utilites/Documents (4)将main.c gd32f10x_it.c sysstick.c相关文件拷贝到userr文件夹,并添加到Application 文件组中。 (5)设置编译的头文件目录:将DFP包的CMSIS相关头文件路径都加进去,将 RTE_Components.h配置头文件路径加进去。如下图所示:

Main文件内容如下: 注意: (1)此项目是用MDK CMSIS配置工具建立的,CMSIS配置工具会自动将选用的标准库源码的C文件从Kiel5的DFP包标准库目录下拷贝到当前的项目中:./Mdk-Arm/RTE路径下,但是没有将头文件拷贝过来。所以此项目的编译依赖实际的Keil5安装环境:没有安装DFP包或头文件目录跟工程设置的包含路径不对应的话,就会出现编译失败。也就是说,将一个项目拷贝到另一台电脑时,编译可能失败。 (2)main.c/systick.c和gd32f10x_it.c是从例程中拷贝过来的. (3)头文件的前面出现感叹号,表示没有正确的引用。 (4)也可以不用MDK CMSIS配置工具,手动拷贝相应的CMSIS库文件,进入DFP软件包目录下,将GD32F10x_DFP文件夹整体拷贝到过来。再将 C:\Keil_v5\ARM\PACK\ARM\CMSIS\4.5.0\CMSIS目录下的Include目录拷贝过来。再将启动文件也拷贝过来,(注:位置应该是GD32F10x_DFP\2.0.0\Device\Source\ARM, 此处我选的MCU 是GD32F103RB,所以用md.s),将其拷贝到过来。手动拷贝库文件建立工程的方法跟用CMSIS 配置工具建立工程的方法大同小异,只是工程里面添加了标准库文件之后,记得要手动配置对应的头文件。而借助CMSIS工具,则会自动通过更改RTE_Components.h文件实现。

单片机温度传感器proteus仿真

仿真程序仿真: LED_0 EQU 30H LED_1 EQU 31H LED_2 EQU 32H ADC EQU 35H TCNTA EQU 36H TCNTB EQU 37H H_TEMP EQU 38H L_TEMP EQU 39H FLAG BIT 00H H_ALM BIT P3.0 L_ALM BIT P3.1 SOUND BIT P3.7 CLOCK BIT P2.4 ST BIT P2.5 EOC BIT P2.6 OE BIT P2.7 ORG 00H SJMP START ORG 0BH LJMP INT_T0 ORG 1BH LJMP INT_T1 START:MOV LED_0,#00H

MOV LED_1,#00H MOV LED_2,#00H MOV DPTR,#TABLE MOV H_TEMP,#153 MOV L_TEMP,#77 MOV TMOD,#12H MOV TH0,#245 MOV TL0,#0 MOV TH1,#(65536-1000)/256 MOV TL1,#(65536-1000)/256 MOV IE,#8AH CLR C SETB TR0 WAIT:SETB H_ALM SETB L_ALM CLR ST SETB ST CLR ST JNB EOC,$ SETB OE MOV ADC,P1 CLR OE MOV A,ADC SUBB A,L_TEMP JC LALM MOV A,H_TEMP MOV R0,ADC SUBB A,R0 JC HALM CLR TR1 LJMP PROC1 LALM:CLR L_ALM SETB TR1 CLR FLAG LJMP PROC1 HALM:CLR H_ALM SETB TR1 SETB FLAG LJMP PROC1 PROC1:MOV A,ADC MOV B,#100 DIV AB MOV LED_2,A MOV A,B

Proteus软件的单片机仿真(ATM)

摘要 基于Proteus软件的单片机自动取款机(ATM)仿真系统设计,硬件电路需要单片机开发板和12864液晶显示器,能够实现自动取款的全部功能。通过在在计算机上用C语言编程来将生成文件下载到单片机控制其它外围器件工作。但是在EDA新技术的引入使得系统的开发成本降低而且灵活性增强,在Proteus软件中都可以找到上述硬件元件,通过电路图连接完全可以实现仿真功能。在Keil软件环境下通过C语言编程,编译调试后生成单片机下载的HEX(十六进制)文件,硬件电路图是在Proteus 软件中进行建模。通过Proteus和Keil结合建立的虚拟系统实现联合仿真,单片机实时控制12864LCD实现汉字的显示,扫描键盘从而达到用户与ATM的信息交换,使得ATM系统设计变为现实。 ATM系统,是一个有数据库组成的应用系统。用户的初始信息通过E2PROM存放,这样免去了掉电丢失数据的弊端。系统功能有用户在ATM上提取现金、查询账户余额、修改密码、账户冻结、密码保护、自动存款及转账功能。可以仿真实现最基本的银行服务。 关键词:ATM;51单片机;Proteus;Keil;12864LCD;E2PROM;虚拟仿真

Abstract Automatic Teller Machine system is based on Proteus 51-microcontroller.Hardware circuit includes microcontroller developer board and 12864LCD display. All features of ATM can be well worked on it. Programming on PC then download created file to 51-microcontroller to control outer circuit. However, with the introduction of EDA, new technology, which lower the cost of system exploration and enhance flexibility. Programing with C language, compiling and debugging under the environment of Keil software,creating a HEX file which will be downloaded by microcontroller later. Hardware schematic diagrams are established with Proteus software. According to the combination of Proteus and Keil , making a virtual system , successfully achieve united simulation. Microcontroller controls 12864LCD to display Chinese words, scans keyboard to exchange information between customer and ATM, which makes virtual ATM system becoming reality. ATM system includes databases, which are used for the storage of customers’ initial information, leading to emerge from the disadvantage of data lost when power cuts. The functions of ATM are as follows: withdraw cash, search client and remaining modify password, client freezed, password protection, automatic deposit and transfer client. This system simulates to realize the bank’s fundamental services. Keywords:ATM;51microcontroller;Proteus;Keil;12864LCD;E2PROM;virtual simulation

单片机PROTEUS仿真100实例

《单片机C语言程序设计实训100例—基于8051+Proteus仿真》案例 第01 篇基础程序设计 01 闪烁的LED /* 名称:闪烁的LED 说明:LED按设定的时间间隔闪烁 */ #include #define uchar unsigned char #define uint unsigned int sbit LED=P1^0; //延时 void DelayMS(uint x) { uchar i; while(x--) { for(i=0;i<120;i++); } } //主程序 void main() { while(1) { LED=~LED; DelayMS(150); } } 02 从左到右的流水灯 /* 名称:从左到右的流水灯 说明:接在P0口的8个LED 从左到右循环依次点亮,产生走 马灯效果 */ #include #include #define uchar unsigned char #define uint unsigned int

//延时 void DelayMS(uint x) { uchar i; while(x--) { for(i=0;i<120;i++); } } //主程序 void main() { P0=0xfe; while(1) { P0=_crol_(P0,1); //P0的值向左循环移动 DelayMS(150); } } 03 8只LED左右来回点亮 /* 名称:8只LED左右来回点亮 说明:程序利用循环移位函数_crol_和_cror_形成来回滚动的效果*/ #include #include #define uchar unsigned char #define uint unsigned int //延时 void DelayMS(uint x) { uchar i; while(x--) { for(i=0;i<120;i++); } } //主程序 void main() { uchar i; P2=0x01; while(1) {

(完整版)单片机原理及应用——基于Proteus和Keil_C 林立_张俊亮毕业论文

第一章习题 1.什么是单片机?单片机和通用微机相比有何特点? 答:单片机又称为单片微计算机,它的结构特点是将微型计算机的基本功能部件(如中央处理器(CPU)、存储器、输入接口、输出接口、定时计数器及终端系统等)全部集成在一个半导体芯片上。虽然单片机只是一个芯片,但无论从组成还是从逻辑功能上来看,都具有微机系统的定义。与通用的微型计算机相比,单片机体积小巧,可以嵌入到应用系统中作为指挥决策中心,是应用系统实现智能化。 2.单片机的发展有哪几个阶段?8位单片机会不会过时,为什么? 答:单片机诞生于1971年,经历了SCM、MCU、SOC三大阶段,早期的SCM 单片机都是8位或4位的。其中最成功的是INTEL的8031,此后在8031上发展出了MCS51系列MCU系统。基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。90年代后随着消费电子产品大发展,单片机技术得到了巨大提高。随着INTEL i960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。然而,由于各应用领域大量需要的仍是8位单片机,因此各大公司纷纷推出高性能、大容量、多功能的新型8位单片机。 目前,单片机正朝着高性能和多品种发展,但由于MCS-51系列8位单片机仍能满足绝大多数应用领域的需要,可以肯定,以MCS-51系列为主的8位单片机,在当前及以后的相当一段时间内仍将占据单片机应用的主导地位。

3.举例说明单片机的主要应用领域。 答:单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:智能仪器单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、电流、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。例如精密的测量设备(电压表、功率计,示波器,各种分析仪)。 工业控制 单片机具有体积小、控制功能强、功耗低、环境适应能力强、扩展灵活和使用方便等优点,用单片机可以构成形式多样的控制系统、数据采集系统、通信系统、信号检测系统、无线感知系统、测控系统、机器人等应用控制系统。例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。家用电器现在的家用电器广泛采用了单片机控制,从电饭煲、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子秤量设备和白色家电等。 网络和通信 现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。医用设备领域

51单片机行列式键盘的应用proteus仿真+源程序

51单片机行列式键盘的应用proteus仿真本人喜好单片机设计,精通单片机编程和硬件电路设计,在空余之际编一些小程序与大家分享,有哪位路过,请多多指教,希望大家在一起能互相学习,互相进步。这里的程序已经测试通过。发表出来,一来可以帮助同样爱好单片机的朋友们,二来,希望能结交一些同道中人,共同学习。 源程序: #include #include void delayms(unsigned char ms); unsigned char data dis_digit; unsigned char code dis_code[11]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0xff}; unsigned char data dis_index; void main() { P2=0xff; P1=0x00; dis_index=0; dis_digit=0x01; while(1) { P2=dis_code[dis_index]; P1=dis_digit; delayms(1); P1=0x00; dis_digit=_crol_(dis_digit,1); dis_index++; dis_index &=0x07; } } void delayms(unsigned char ms) { unsigned char i; while (ms--) {

for(i=0;i<120;i++); } } 仿真图:

如果您想做项目开发,或者是做课题,或者您只是有一个想法,亲联系我们,我们会尽最大努力帮您完成,您的需要就是我们奋斗的方向! 本人有给学生做课程设计的经验,欢迎亲们来本店咨询哦 淘宝店铺地址:https://www.wendangku.net/doc/718346261.html, ; https://www.wendangku.net/doc/718346261.html, QQ:1203026348;496617571 邮箱:1203026348@https://www.wendangku.net/doc/718346261.html, ;496617571@https://www.wendangku.net/doc/718346261.html, 电话:小陈:152******** 小张:158******** 阿里旺旺:tb3569_1968 ;zwjyln 我们拥有40G!!超大容量!!!是单片机入门者的首选经典资料!!! 您在单片机方面有任何问题,请及时和我们联系,我们会竭诚为您服务!! 承接单片机项目开发,同时包括软件开发和硬件开发。我们是一组拥有扎实的单片机基础知识的大学生,我们可以给您提供从项目开始到项目的完成整个过程的技术支持,其中包括原理图的设计、电路图的proteus软件仿真、程序的编写以及相关软件的使用等

基于Proteus和_Keil的串行通信系统仿真

聊城大学 本科生毕业论文(设计)题目:基于Proteus和keil的串行通信 系统仿真 专业代码:交通运输(081201) 作者姓名:管国阳 学号: 单位:汽车与交通工程学院 指导教师: 2012年5月19日

原创性声明 本人郑重声明:所提交的学位论文是本人在导师指导下,独立进行研究取得的成果。除文中已经注明引用的内容外,论文中不含其他人已经发表或撰写过的研究成果,也不包含为获得聊城大学或其他教育机构的学位证书而使用过的材料。对本文的研究作出重要贡献的个人和集体,均已在文中以明确方式标明。本人承担本声明的相应责任。 学位论文作者签名:日期 指导教师签名: 日期

摘要 本文主要是基于I2C技术,应用proteus和keil软件,设计虚拟I2C总线串行通信外围扩展。介绍了I2C串行通信的基本原理,I2C总线设计系统的优点,虚拟I2C总线技术,I2C总线与E2PROM,ADC/DAC,I/O接口等外围器件接线方法,时序,及其寻址方法。 关键词:I2C总线技术;串行通信;I2C总线虚拟技术;串行外围扩

Abstract This article is based on I2C technology, application Proteus keil software, designing virtual I2C bus serial communications peripherals expansion. It has Introduced the basic principles of I2C serial communication, Design of I2C bus system,virtual I2C bus, I2C bus and E2PROM, ADC / DAC, I / O ports and other peripheral device connection method, timing, and addressing methods. Key Words: I2C bus technology; serial communication; I2C bus virtual technology; serial peripheral expansion

基于Proteus和Keil的单片机课程设计

第5期(总第70期) 2008年10月济南职业学院学报 Journal of Jinan Vocational College Oct .2008 No .5(Serial No .70) ·· 112单片机应用技术是电类专业的一门重要课程,也是理论和实践结合性很强的一门课程,所以课程设计环节尤为重要。课程设计环节的任务和目的是让每个学生亲自参与到其中的设计细节,提高单片机开发的能力。考虑到目前实验器材少,设计过程中容易造成器件和仪器仪表的损坏,以及离开实验室学生得不到充分的锻炼,从而借助于Proteus和Keil进行课程设计。实践证明,这样可以很好地解决上述问题,节省设计成本,提高设计速度。 1 Proteus和Keil简介1.1 Proteus简介 Proteus是一个完整的嵌入式系统软、硬件设计仿真平台,它包括原理图输入系统ISIS、带扩展的Prospice混合模型仿真器、动态器件库、高级图形分析模块和处理器虚拟系统仿真模型VSM。ISIS是Proteus系统的中心,具有超强的控制原理图设计环境。Proteus VSM最重要的特点是,它能把微处理器软件作用在处理器上,并和该处理器的任何模拟和数字器件协同仿真。仿真执行目标码就像在真正的单片机系统上运行,VSM CPU 模型能完整仿真I/O口、中断、定时器、通用外设口和其他与CPU有关的外设,甚至能仿 真多个处理器。 1.2 Keil简介 Keil是一个功能强大的开发平台,它包括项目管理器、CX51编译器、AX51宏汇编器、BL51/Lx51连接定位器、RTX51实时操作系统、Simulator软件模拟器以及Monitor51硬件目标调试器。它是一种集成化的文件管理编译环境,主要的功能特点为:编译C源程序、汇编源程序或混合语言源程序,链接和定位目标文件和库,创建HEX文件、调试目标程序等,是目前最好的51单片机开发工具之一。Keil支持软件模拟仿真(Simulator )和用户目标板调试(Monitor51)两种工作模式,前者不需要任何单片机硬件即可完成用户程序仿真调试,后者利用硬件目标板中的监控程序可以直接调试目标硬件系统。 2 应用举例 下面结合课程设计中四项八拍步进电机正反转电路的单片机实现,具体说明如何基于Proteus和Keil进行单片机仿真。电路的功能是,通过点击正反转按钮,让步进电机自如进行正反转的切换。 2.1 硬件的实现 打开Proteus ISIS编辑环境,通过对象选择按 基于Proteus和Keil的单片机课程设计 宫亚梅 (常州信息职业技术学院 机电工程系,江苏 常州 213164) 摘 要:本文介绍了Proteus和Keil的功能特点,结合步进电机正反转实例,详细给出了两种软件在单片机课 程设计中的具体应用。 关键词:Proteus;Keil;单片机;设计 中图分类号:TP391 文献标识码:A 文章编号:1673-4270(2008)05-0112-02 收稿日期:2008-09-08 作者简介:宫亚梅(1979—),女,江苏姜堰人,常州信息职业技术学院机电工程系助教。

基于proteus和keil的单片机课程设计

2008年10fl 第5期(总第70期) 济南职业学院学报 JournalnfJinanVocationalCoRege Om.2008 No.5(SerialⅣ仉70) 基于Proteus和Keilfl匀单片机课程设计 宫亚梅 (常州信息职业技术学院机电工程系,江苏常州213164) 摘要:本文介.绍TProteus和Keil的功能特点,结合步进电机正反转实例,详细给出了两种软件在单片机课程设计中的具体应用。 关键词:Proteus;Keil;单片机;设计 中图分类号:TP391文献标识码:A文章编号:1673—4270(2008J05—0112—02 单片机应用技术是电类专业的一门重要课程,也是理论和实践结合性很强的一门课程,所以课程设计环节尤为萤要。课程设计环节的任务和目的是让每个学生亲自参与到其中的设计细节,提高单片机开发的能力。考虑到目前实验器材允设计过程中容易造成器件和仪器仪表的损坏,以及离开实验室学生得不到充分的锻炼,从而借助于Proteus和Keil进行课程设讯实践证明,这样可以很好地解决上述问题,节省设计成本,提高设计速度。 1Proteus和Keil简介 1.1Proteus简介 Proteus是一个完整的嵌入式系统软、硬件设计仿真平台,它包括原理图输入系统ISIS、带扩展的Prospice混合模型仿真器、动态器件库、高级图形分析模块和处理器虚拟系统仿真模型VSM。ISIS是Proteus系统的中心,具有超强的控制原理图设计环境。ProteusVSM最重要的特点是,它能把微处理器软件作用在处理器上,并和该处理器的任何模拟和数字器件协同仿真。仿真执行目标码就像在真正的单片机系统上运行,VSMCPU模型能完整仿真I/Ol=i、中断、定时器、通用外设口和其他与CPU有关的外设,甚至能仿真多个处理器。 1.2Keil简介 Keil是一个功能强大的开发平台,它包括项目管理器、CX51编译器、AX51宏汇编器、BL51/Lx51连接定位器、RTX51实时操作系统、Simulator软件模拟器以及Monitor51硬件目标调试器。它是一种集成化的文件管理编译环境,主要的功能特点为:编译C源程序、汇编源程序或混合语言源程序,链接和定位目标文件和库,创建HEX文件、调试目标程序等,是目前最好的5l单片机开发工具之一。Keil支持软件模拟仿真(Simulator)和用户目标板调试(Monitor51)两种工作模式,前者不需要任何单片机硬件即可完成用户程序仿真调试,后者利用硬件目标板中的监控程序可以直接调试目标硬件系统。 2应用举例 下面结合课程设计中四项八拍步进电机正反转电路的单片机实现,具体说明如何基于Proteus和Keil进行单片机仿真。电路的功能是,通过点击正反转按钮,让步进电机自如进行正反转的切换。 2.1硬件的实现 打开ProteusISIS编辑环境,通过对象选择按 收稿日期:2008—09一08 作者简介:宫亚梅(1979一),女,江苏姜堰人。常州信息职业技术学院机电工程系助教。 ?112? 万方数据

keil编程步骤

-、双击打开keil编程软件,图标如下图所示 二、新建工程:在“菜单栏”-“Project”-“New”-“μvision Project”-输入要保存的工程名。

根据单片机的型号选择CPU,然后点击“确定”。 选择“否”。 三、新建文件 点击新建文件。 四、保存文件 注意:文件名要带扩展名。用C语言编写的程序,扩展名为“.c”;用汇编语言编写的程序,扩展名为“.asm”。点击“保存”。

五、添加文件到工程 在工程管理器中,用鼠标右键点击“Source Group 1”,选择“Add File to Group ‘Source Groutp 1’”,如果要添加的文件是汇编文件,文件类型选择如下图所示的类型;如果是C语言文件,文件类型选择“*.c”。双击要添加文件,然后点击”close”。

在工程管理器中,可以看到刚刚添加的文件 六、编写程序 七、编译当前文件 点击按钮 八、修改错误 根据输出框里的提示信息修改程序中的错误 九、生成烧录文件 在工程管理器中,鼠标右键单击,按下图操作。

将“create HEX file”前复选框前选上。“02”是文件名,可以改成其他的名,文件名前“select folder for objects”是此文件要保存的位置,默认情况下和当前工程保存在同一目录下,如果要保存在其他位置,可以点击此外进行修改。 点击编译工程图标,在输出框里会有提示信息 ,说明生成了hex文件。注意:必须在编译当前 文件没有错误的情况下才能生成hex文件。 十、将程序下载到单片机

双击烧录软件图标,打开软件。按下图所示设置“编程器及接口”、“编程”。“选择芯片”:根据你当前的单片机选择型号。 点击图标, 找到生成的HEX文件打开。点击图标,将程序烧录到单片机。

用PROTEUS对单片机进行仿真的方法与实例

用PROTEUS对单片机进行仿真的方法与实例 Proteus软件是英国Labcenter Electronics公司的一款电路设计与仿真软件,它包括ISIS、ARES等软件模块,ARES模块主要用来完成PCB的设计;ISIS模块用来完成电路原理图的布图和仿真。它可以进行模拟电路仿真、数字电路仿真,也可以进行单片机及其外围电路组成的系统的仿真;软件提供了各种虚拟仪器,如示波器、逻辑分析仪、信号发生器、电压表、电流表等。和其它仿真软件相比,Proteus ISIS最大特色是对单片机系统的仿真,目前支持的单片机类型有:68000系列、8051系列、ARM系列、AVR系列、PIC系列、Z80系列、HC11系列等。本文主要介绍Proteus 软件在单片机方面的仿真功能,即ISIS模块的用法。 在单片机学习开发的过程中,程序的调试是一个很重要的环节,要安装电路进行实验,而且电路在调试过程中往往要进行调整和改变,这不紧增加了费用和难度,而且也影响了学习和开发的进度,这也成了一些初学者学习的障碍。如果使用Proteus 软件就可以大大节省时间和开发费用,可以在软件仿真通过后再制作印刷电路板进行电路实验。 一、Proteus ISIS软件的工作环境和一些基本使用方法 下面通过一个流水灯的实例来说明Proteus的基本使用方法,使用的软件版本是Proteus.Professional 7.1 SP2。

流水灯使用AT89C51单片机,用P2口作输出口。先在Keil uVision编译器中输入下列程序: #include <reg51.h> void Delay1ms(unsigned int count)//延时子程序 { unsigned int i,j; for(i=0;i<count;i++) for(j=0;j<120;j++); } main() //主程序 { unsigned char LEDIndex = 0; bit LEDDirection = 1; while(1) { if(LEDDirection) P2 = ~(0x01<<LEDIndex); else P2 = ~(0x80>>LEDIndex); if(LEDIndex==7) LEDDirection = !LEDDirection; LEDIndex = (LEDIndex+1)%8;

基于Proteus的单片机串口通信仿真

— Proteus 班级:电信13-2 姓名:段学亮 邓成智 崔俊杰 邓石磊 陈亮 高金玉 成绩: 电子与信息工程学院 信息与通信工程系

1.设计要求 1.1甲单片机向乙单片机机发送控制命令字符,甲单片机同时接收乙单片机机发送的数字,并显示在数码管上。 1.2乙机程序接收甲机发送字符并完成相应动作乙机接收到甲机发送的信号后,根据相应信号控制LED完成不同闪烁动作。 2. 仿真电路图 串口通信仿真电路图如图一 图1:串口通信仿真电路图 3.串口通信C51程序 /* 名称:甲机串口程序 说明:甲机向乙机发送控制命令字符,甲机同时接收乙机发送的数字,并显示在数码管上。 */

#include #define uchar unsigned char #define uint unsigned int sbit LED1=P1^0; sbit LED2=P1^3; sbit K1=P1^7; uchar Operation_No=0; //操作代码 //数码管代码 uchar code DSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //延时 void DelayMS(uint ms) { uchar i; while(ms--) for(i=0;i<120;i++); } //向串口发送字符 void Putc_to_SerialPort(uchar c) { SBUF=c; while(TI==0); TI=0; } //主程序 void main() { LED1=LED2=1; P0=0x00; SCON=0x50; //串口模式1,允许接收 TMOD=0x20; //T1工作模式2 PCON=0x00; //波特率不倍增 TH1=0xfd; TL1=0xfd; TI=RI=0; TR1=1; IE=0x90; //允许串口中断 while(1) { DelayMS(100); if(K1==0) //按下K1时选择操作代码0,1,2,3 { while(K1==0); Operation_No=(Operation_No+1)%4; switch(Operation_No) //根据操作代码发送A/B/C或停止发送

单片机原理及应用——基于Proteus和Keil_C林立版课后习题答案

1.计算机体系结构:哈佛结构、冯诺依曼结构的区别? 哈佛结构RAM和ROM分别编址,冯诺依曼结构RAM和ROM统一编址 2.MSC-51单片机外部引脚的名称是什么?各有什么功能? 答:(1) 电源及晶振引脚 VCC(40脚):+5V电源引脚 VSS(20脚):接地引脚 XTAL1(19脚);外接晶振引脚(内置放大器输入端) XTAL2(18脚):外接晶振引脚(内置放大器输出端) (2) 控制引脚 RST/V PD(9)为复位/ 备用电源引脚 ALE/PROG(30)为地址锁存使能输出/ 编程脉冲输入 PSEN(29):输出访问片外程序存储器读选通信号 EA/ VPP (31):外部ROM允许访问/ 编程电源输入 (3) 并行I/O口引脚 P0.0~P0.7(39~32脚)——P0口; P1.0~P1.7(1~8脚)——P1口; P2.0~P2.7(21~28脚)——P2口; P3.0~P3.7(10~17脚)——P3口。 3. AT89C51单片机的片内资源有哪些?其存储器结构如何?片内RAM可分成哪个三个区?各区的地址范围如何? 其内部功能部件有: 控制器:是对取自程序存储器中的指令进行译码,在规定的时刻发出各种操作所需的控制信号,完成指令所规定的功能; 运算器:根据控制器发来的信号,执行算术逻辑运算操作; 存储器:包括程序存储和数据存储器; 定时器计数器:2个16位定时器/计数器,可对机器周期计数,也可对外部输入脉冲计数; 中断系统:可响应三个内部中断源和两个外部中断源的中断请求; 输入输出接口:4个8位并行口和一个全双工串行口; 其存储器结构属于哈佛结构,MCS-51可寻址空间是两个64KB,即64KB的程序存储空间和64KB的数据存储空间。 片内RAM可分成划分为三个部分: ①作寄存器区(00H-1FH),四组②可位寻址区(20H-2FH)③用户RAM区(30H-7FH),80B 7.程序状态字寄存器PSW各位的定义是什么? 答:程序状态字寄存器PSW各位的定义如下: PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0 PSW.7:进/借位标志CY,加法有进位时置1,减法有借位时置1; PSW.6:辅助进位标志AC,加法运算低四位向高上四位有进位时置1; PSW.5、PSW.1:用户标志位F0和用户标志位F1, 保存用户的位数据; PSW.4、PSW.3:工作寄存器选择控制位RS1和RS0,00至11分别选择四组工作之一作为当前工作寄存器PSW.2 :溢出标志位OV,有符号数加、减运算结果有溢出或乘除上结果异常(乘法运算结果大于255即乘积在BA中,或除法运算除数为0)时置1

相关文档
相关文档 最新文档