打造自己的51单片机开发综合软件平台
SDCC-eclipse-51_STM8开发环境搭建资料
开发51系列的单片机,国内的绝大部分人使用的是基于keil的开发环境,不过该商业软件是收费的,这算一个不太好的地方,另一个不好的地方是它的编辑环境已经跟不上时代的步伐了,尽管一般软件的体量并不大SDCC是一个免费的编译器,是跨平台的,其他操作环境也能工作,至于什么是编译器/编译器如何工作,请自行百度,如果能深入一些理解这些问题,算是一个大的提高SDCC在windows下面进行工作,可以直接参考SDCC的相关文档编写用命令行直接进行“原始开发”,但是这种方式显然不适合大众开发者,除非为了证明你有超凡的编程能力以及组织软件工程的能力,毕竟有了更好的工具,可以大大提高效率,让开发更关注业务逻辑本身所以eclipse是一个很好的目标平台,并且已经有人为我们免费开发了一些相应的工具,尽管这些工具已经很老,并且可能存在一些问题,但是经过一些改动,还是能很好的工作起来的,下面进入正式开发环境搭建工作需要准备的硬件有1、AT89S52开发板一块【其他51系列的也行】2、ISP下载工具【淘宝有很多,或者其他烧录工具】3、其他配件,如USB串口、电源等需要准备的软件【推荐用比较新的版本】有很多。
分别是1、jdk[根据自己带你电脑选择32或者64位]2、eclipse[C++版本、根据自己带你电脑选择32或者64位]3、SDCC【根据自己带你电脑选择32或者64位】4、Cygwin【建议安装离线版本】5、ISP的下载软件【】安装完后打开eclipse,进行安装插件此插件“net.sourceforge.eclipsesdcc-1.0.0-win32.x86”需要现在网上下载下来,之后解压,但是在比较新的eclipse中已经无法进行正常使用了,需要做一下修改,具体步骤是,解压后存放在eclipse目录下的“dropins”下面,如图之后需要修改,找到“~~\dropins\net.sourceforge.eclipsesdcc-1.0.0-win32.x86\plugins\net.sourceforge.eclipsesdcc_1.0.0”目录,把Cygwin软件bin目录下面的sh.exe复制到该目录,之后重启,就可以正常工作了,这里注意一下,需要把各软件的的一些可执行文件加入到环境变量【如果你看不懂这句话,说明这篇文章可能不适合你】,不然会出问题的打开eclipse新建工程文档,如图完成后需要进行配置右键工程文件主目录,打开配置选项,按下图配置这样的话就可以了,我的目录结构是到这里,实际已经可以正常编译【通过点击小锤子图标】并生成HEX文件了,有一点需要注意,SDCC与keil的一些关键字是不一样的,这个属于C语言下面的“方言”,主要用到的是sfr sbit 以及interrupt的一些使用,我截图一下,读者自行领悟一下应该会明白的,关键字是以在前面加双下划线的,并且sbit必须加上地址,另外就是中断,中断是这么定义的,如图这个和keil基本是一样的,前面加上双下划线即可,还需要注意的是,中断函数必须要声明到main函数文件中去,否则很可能无法生效,这个不清楚是bug还是开发人员故意这么搞另外就是,目前还不清楚的一些问题,主要是eclipse不识别SDCC中的一些关键字,导致SFR中的类似与P0这些无法识别,导致一直报错,但是可以正常编译的,可以打开相关的设置,把所有的相关的报错设置关闭掉【图中是把所有的全部都关掉了,可以根据实际需要打开或者关闭某些提示】至此已经可以正常开发51程序了,关于STC的可以适当的修改一下头文件也是可以开发的,另外这里说一下,关于在这个环境下面printf函数的实现,实际非常简单,只需要在文件中包含stdio.h 并实现void putchar(char);函数即可[有的版本可能类型不一样,按照提供的类型完成即可],这个我们选择串口方式输出,所以只需要,把能正常调用串口发送一个字节的函数写到里面即可,可参考下面的代码/******************************************************************本程序只供学习使用,未经作者许可,不得用于其它任何用途*******************************************************************/#include<at89x52.H>#include"UART.h"#include"MyType.h"#include"config.h"#include<stdio.h>#define Fclk 11059200UL /*使用11.0592M晶体*/#define BitRate 9600UL /*波特率定义为9600*/volatile uint8 g_tx_is_sending;/********************************************************************函数功能:串口初始化。
《单片机原理及应用》软件开发工具Keil与虚拟仿真平台Proteus的使用实验二
《单片机原理及应用》软件开发工具Keil与虚拟仿真平台Proteus的使用实验实验目的(1)了解Keil和Proteus软件的基本特点和功能。
(2)学会使用Keil软件进行单片机中断应用和定时器/计数器应用的编程。
(3)学会使用Proteus软件进行单片机中断应用和定时器/计数器应用的原理图的绘制和程序实现。
(4)学会使用Keil和Proteus两种软件的联调。
实验指导一、Keil C51的使用1.创建项目编写一个新的应用程序前,首先要建立项目(Project)。
(1)在编辑界面下,单击菜单栏中的[Project],出现下拉菜单,再点击选择中的“New Project”。
(2)单击“New Project…”选项后,就会弹出“Create New Project”窗口。
在“文件名(N)”中输入一个项目的名称,保存后的文件扩展名为“.uvx”,即项目文件的扩展名,以后可直接单击此文件就可打开先前建立的项目。
在“文件名(N)”窗口中输入新建项目文件的名字后,在“保存在(I)”下拉框中选择项目的保存目录,单击“保存(S)”即可。
(3)选择单片机,单击“保存(S)”后,会弹出“Select Device for Target”(选择单片机)窗口,按照提示选择相应的单片机。
搜索“AT89C52”并选择。
(4)单击“确定”按钮后,会出现对话框。
如果需要复制启动代码到新建的项目,选择单击“是”。
如选择单击“否”,启动代码项“STARTUP. A51”不会出现,这时新的项目已经创建完毕。
2.新建文件新的项目文件创建完成后,就需要将用户源程序文件添加到这个项目中,添加用户程序文件通常有两种方式:一种是新建文件,另一种是添加已创建的文件。
(1)单击快捷按钮,这时会出现一个空白的文件编辑画面,用户可在这里输入编写的程序源代码。
(2)单击中快捷按钮,保存用户程序文件,这时会弹出窗口“Save As”的对话框,在“保存在(I)”下拉框中选择新文件的保存目录,这样就将这个新文件与刚才建立的项目保存在同一个文件夹下,然后在“文件名(N)”窗口中输入新建文件的名字,如果使用C51语言编程,则文件名的扩展名应为“.c”。
自己动手写一个简易操作系统(基于51单片机)
自己动手写一个简易操作系统(基于51单片机)背景介绍大一学了51单片机,对于单片机的一些常用外设有了一定的了解。
之后,大家都在说当前最流行的单片机是stm32,所以我抽出了暑假的时间的时间学习了stm32单片机,刚开始学的时候真的很痛苦,在坚持了一个星期之后,我慢慢找到了自信,stm32单片机实际上和51是一样的,只是需要配置的寄存器多了一点。
在刚开始学的时候,经常在配置的时候无法配置完全,导致无法得到预期的实验效果,但是实际上,大家没必要过分纠结于配置,完全可以直接参考别人使用该功能的配置方式。
我们应该将心思放在功能的开发上,而不是纠结于前期简单的配置。
在熟悉使用stm32之后,开始接触操作系统ucos,过程中一直觉得自己似懂非懂,所以我在想为什么我自己不利用51写一个简易操作系统,来加深自己的理解。
初期写出的操作系统不用考虑通信等高级功能,只需要写出可以调度多个任务的操作系统即可,下面给大家介绍一下我自己写的操作系统(写的不太好,仅供大家参考)。
系统实现实现简易操作系统,主要需要实现三个函数:1.创建任务函数(将定义的任务的执行入口保存起来,供调度使用)2.任务延时函数(每一个任务执行后,都需要加入延时函数,否则低优先级的任务没有机会执行)3.中断调度函数(提供时间片调度)1 创建任务函数介绍int OSTaskCreate(unsigned int Task, unsigned char* pStack, unsigned char TaskID){unsigned char i = 0, j = 0;*pStack++ = Task & 0xFF; //低八位地址(51单片机入栈向上,出栈向下)*pStack = Task >> 8; //高八位地址os_enter_critical();TaskCB[TaskID].OSTaskStackButtom = (unsigned char)pStack + 13;TaskCB[TaskID].OSWaitTick = 0;TASK_READY(TaskID); //将该优先级的任务在全局变量中标记为就绪os_exit_critical();return 0;}入口参数:unsigned int Task ---- 任务函数的入口地址unsigned char* pStack ---- 任务函数的堆栈,主要用来保存现场参数unsigned char TaskID ----- 任务优先级2 任务延时函数void OSTimeDly(unsigned int time){TaskCB[CurrentTaskID].OSWaitTick = time; //将任务的延时时间赋值给任务控制块task_sw(); //任务调度}static void task_sw(){os_enter_critical();TASK_BLOCK(CurrentTaskID); //将当前任务的就绪状态取消#pragma asm //将现场的关键参数存入堆栈PUSH ACCPUSH BPUSH DPHPUSH DPLPUSH PSWMOV PSW,#00HPUSH AR0PUSH AR1PUSH AR2PUSH AR3PUSH AR4PUSH AR5PUSH AR6PUSH AR7#pragma endasmTaskCB[CurrentTaskID].OSTaskStackButtom = SP ; //将当前任务的堆栈位置保存,用于下次恢复该任务CurrentTaskID = Task_High(); //找出处于就绪态的最高优先级的任务SP = TaskCB[CurrentTaskID].OSTaskStackButtom;#pragma asmPOP AR7POP AR6POP AR5POP AR4POP AR3POP AR2POP AR1POP AR0POP PSWPOP DPLPOP DPHPOP ACC#pragma endasmos_exit_critical(); //离开时会把SP的当前位置的值送入PC指针,所以最高优先级的任务得以运行}3 中断调度函数void TF0_isr() interrupt 1{TH0 = 56320/256;TL0 = 56320%256;TaskCB[CurrentTaskID].OSTaskStackButtom = SP; //被中断的任务的现场已经压入堆栈,所以只需保存SPCurrentTaskID = T ask_Ready_High(); //取出就绪中优先级最高的任务SP = TaskCB[CurrentTaskID].OSTaskStackButtom;#pragma asmPOP AR7POP AR6POP AR5POP AR4POP AR3POP AR2POP AR1POP AR0POP PSWPOP DPLPOP DPHPOP BPOP ACC#pragma endasm}总结:以上三个函数就是一个简易操作系统的关键函数,大家可以自己动手实现一下。
51单片机开发板使用手册
STU_MAIN单片机开发板使用手册第一章STU_MAIN 单片机开发板简介 (2)1.1 单片机开发板概述 (2)1.2 单片机开发板载资源介绍 (2)1.3 STU_MAIN 单片机开发板接口说明 (4)1.4 如何开始学习单片机 (5)第二章软件使用方法 ......................... . (6)2.1 KEIL 软件的使用方法 (6)2.2 STC-ISP 软件的安装与使用 (13)2.3 使用USB 口下载程序时设置步骤 (18)第三章STU_MAIN 开发板例程详细介绍 (21)3.1 准备工作 (21)3.2 安装STC-ISP下载程序 (21)3.3 闪烁灯 (22)3.4 流水灯 (23)3.5 单键识别 (25)3.6 利用定时器和蜂鸣器唱歌 (28)3.7 DS18B20 温度测量显示实验 (31)3.8 LCD1602 字符液晶显示 (36)3.9 串口通讯实验 (39)3.10 基于DS1302的多功能数字钟实验 (41)3.11 EEPROM X5045 实验 (47)第一章STU_MAIN 单片机开发板简介1.1 单片机开发板概述STU_MAIN 单片机开发板是经过精心设计开发出的多功能MCS-51 单片机开发平台。
该开发板集常用的单片机外围资源、串口调试下载接口于一身,可以让您在最短的时间内,全面的掌握单片机编程技术。
该开发板特别适合单片机初学者、电子及通信等专业的课程设计以及电子爱好者自学使用。
STU_MAIN 单片机开发板可作为单片机课程的配套设备,课程从最基本的预备知识开始讲起,非常详细的讲解KEIL 编译器的使用,包括软件仿真、测定时间、单步运行、全速运行、设置断点、调试、硬件仿真调试、变量观察等,整个过程全部用单片机的C 语言讲解,从C 语言的第一个主函数MAIN 讲起,一步步一条条讲解每一个语法、每条指令的意思,即使对单片机一巧不通,对C 语言一无所知,通过本课程的学习也可以让你轻松掌握MCS-51 单片机的C 语言编程。
51单片机项目教程项目 1 构建单片机开发环境
图1- 3安装驱动程序软件步骤二
图1- 4安装驱动程序软件步骤三
图1- 5安装驱动程序软件步骤四
1.2 技术准备
1.2.3程序烧录方法和相关工具
STC单片机的烧写及实验,具体方法如下: 第一步:硬件连接 将配套的USB电源线,及串口线连上,在锁紧坐上放入STC的单片机,其他的硬件 连接保存默认,打开电源,硬件连接完毕; 第二步:软件操作 1.打开软件,出现如下画面
在单片机应用系统开发中,单片机是整个设计的核心。如图11所示,单片机应用系统由硬件和软件组成。硬件是应用系统的基 础,软件是在硬件的基础上对其资源进行合理调配和使用,从而完 成应用系统所要求的任务,二者相互依赖,缺一不可。
1.2 技术准备
1.2.2安装USB驱动程序
1.确保电脑联网。 B口插入开发板后电脑会自动识别设备,自动联网安装驱动设 备成功。 3.若电脑未自动安装驱动,打开设备管理器,找到插入开发板后弹 出的新设备(未安装好驱动的情况下在“其他设备”中,带有黄色 感叹号或问号),右键点击设备,选择“更新驱动程序软件“—— —“自动搜索更新的驱动程序软件”即可安装驱动。
任务1:用Keil C51编写程序 编程语言都是需要开发环境的,这样才能完成程序的编写、调试和编译。 C51程序开发是在Keil µVision开发环境下进行,首先介绍该开发环境Keil µVision4。 软件启动 软件启动画面如图1-11所示。
图1- 11Keil µVision4
1.点击“project --- New uVision Project”新建一个工程,如图112所示。
1.1 项目分析
学习单片机之前,必须要掌握构建单片机开发环境 的方法。本项目详细讲解USB驱动程序的安装方法,如 何安装使用开发软件keil4,如何烧录程序和使用相关工 具。
单片机的软件开发工具与环境介绍
单片机的软件开发工具与环境介绍单片机是指集成在单个芯片上的微型计算机系统。
它具备较小的体积、低功耗、低成本以及较强的功能等特点,被广泛应用于各个领域。
在单片机的开发过程中,选择合适的软件开发工具和环境非常关键。
本文将介绍几种常用的单片机软件开发工具与环境。
一、Keil μVisionKeil μVision是一款由Keil Software公司推出的嵌入式系统开发工具。
它是一套集成开发环境(IDE),包含了编译器、调试器、仿真器等功能模块,可以实现单片机程序的编写、编译以及调试。
KeilμVision支持多种芯片系列,如STMicroelectronics的STM32系列、NXP的LPC系列等。
其可视化界面友好,功能强大,被广泛应用于单片机软件开发领域。
二、IAR Embedded WorkbenchIAR Embedded Workbench是由IAR Systems推出的单片机开发工具。
它提供了完整的软件开发流程,包括编写、编译、调试和优化等环节。
IAR Embedded Workbench支持多种单片机系列,如Texas Instruments的MSP430系列、Renesas的RL78系列等。
该工具具有较高的代码生成效率和卓越的调试功能,可以帮助开发者提高开发效率和代码质量。
三、MPLAB X IDEMPLAB X IDE是由Microchip公司开发的一款集成开发环境。
它主要用于开发与Microchip单片机相关的应用程序。
MPLAB X IDE支持多种编程语言,如C、C++以及汇编语言。
该工具提供了丰富的调试功能和模拟器功能,并能够与硬件调试器(如PICkit)结合使用,使得开发者可以更加方便地进行单片机程序的开发和调试。
四、Arduino IDEArduino IDE是一款面向Arduino单片机的开发工具。
Arduino是一种开源的电子原型平台,广泛应用于各个领域的快速原型开发。
MCS-51单片机综合实验台指导说明书(学生用书)
第一章系统介绍一.系统特点EL-MUL-III型单片机教学实验系统是北京精仪达盛科技有限公司根据广大学者和许多高等院校实验需求,结合电子发展情况而研制的具有开发,使用,实验相结合的高科技实验设备。
旨在尽快提高我国电子科技发展水平,提高实验者手动能力,分析解决问题能力。
系统具有以下特点:1. CPU可选用80C31,系统功能齐全,涵盖了单片机教学实验课程的大部分内容。
2.系统采用开放式模块化结构设计,通过两组相对独立的总线最多可同时扩展2块使用实验板,用户可根据需要购置相应实验板,降低了成本,提高了灵活性,便于升级换代。
3.配有两块可编程器件:EPM7128被系统占用。
另一块EPM70供用户实验用。
两块器件皆可通过JTAG接口在线编程。
使用十分方便。
4.灵活的电源接口:配有PC电源插座,可由PC提供电源。
另外还配有外接开关电源,提供所需的+5V,+12V,-12V,其输入为220V的交流电。
5.系统的联机运行模式:配有系统调试软件,为中文多窗口界面。
调试程序时可以同时打开寄存器窗口,内存窗口,变量窗口,反汇编窗口,波形显示窗口等等,极大地方便了用户的程序调试。
该软件集源程序编辑,编译,链接,调试和一体,每项功能均为中文下拉菜单,简明易学。
经常使用的功能均备有热键,这样可以提高程序的调试效率。
8051调试软件不仅支持汇编语言,而且还支持C语言编辑调试。
6.系统的单机运行模式:系统在没有和计算机连接的情况下,自动运行在单机模式,在此模式下,用户可通过键盘输入运行程序(机器码),和操作指令,同时将输入信息及操作的结果在LED 数码管上显示出来。
系统功能齐全,可扩展性强。
本实验系统不仅完全能满足教学大纲规定的基本接口芯片实验,其灵活性和扩展性(数据总线,地址总线,控制总线为用户开放)亦能轻松满足其课程设计,毕业设计使用等二.系统概述微处理器采用i80c31,它的P1口,P3口皆对用户开放,供用户使用。
时钟频率为6.0MHz。
单片机开发与仿真软件keilc51的使用
单片机开发与仿真软件Keil C51的使用一、Keil C51 操作入门Keil C51 简介Keil C51 是德国知名软件公司Keil(现已并入ARM 公司)开发的基于8051 内核的微控制器软件开发平台,是目前开发8051 内核单片机的主流工具。
Keil 51支持汇编语言、C语言等各种开发语言。
其中,uVision2集成开发环境包含项目管理、源代码编辑和强大的程序调试环境。
uVision2调试器是一个强大的全特性调试器,允许用户在PC机上完全模拟目标程序、指令集和片内外围功能。
实验所用的是Keil C51 评估版。
Keil C51 的启动双击桌面上的“Keil uVision2”图标,启动Keil C51程序,启动界面如图1所示。
图1 Keil C51的启动界面建立第1 个Keil C51 程序Keil C51 是一个功能很强大的软件,但是使用起来并不复杂。
现在就通过建立一个简单的LED(发光二极管)闪烁发光的实例来初步掌握Keil C51的基本用法。
硬件电路参见图2,单片机I/O 输出低电平可点亮LED。
图2 LED 闪烁发光电路●新建工程。
执行Keil C51 软件的菜单“Project | N ew Project…”,弹出一个名为“Create New Project”的对话框。
先选择一个合适的文件夹准备来存放工程文件,比如“E:\Project\LedFlash”,其中“LedFlash”是新建的文件夹。
建议:今后每新建一个工程都要在适当的磁盘位置新建一个文件夹用来保存工程文件,以方便管理,并养成良好的习惯。
最后,为工程取名为“LedFlash”,并保存。
参见图3。
图3 新建Keil C51 工程●选择CPU。
紧接着,Keil C51 提示选择CPU 器件。
8051 内核单片机最早是由鼎鼎大名的Intel 公司发明的,后来其他厂商如Philips 、Atmel 、Winbond 等先后推出其兼容产品,并在8051 的基础上扩展了许多增强功能。
用keil来开发51单片机的基本流程
用keil来开发51单片机的基本流程下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。
文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!本店铺为大家提供各种类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor. I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you! In addition, this shop provides you with various types of practical materials, such as educational essays, diary appreciation, sentence excerpts, ancient poems, classic articles, topic composition, work summary, word parsing, copy excerpts, other materials and so on, want to know different data formats and writing methods, please pay attention!当使用Keil来开发51单片机时,基本的开发流程可以分为以下几个步骤:1. 环境准备。
单片机应用课程平台的设计与实践
单片机应用课程平台的设计与实践1、内容丰富的课程体系。
单片机应用课程的内容涉及到单片机基础知识、编程原理、电路设计和实际应用等多个方面,需要构建完整的课程体系,便于学习者系统地学习和掌握相关知识。
2、灵活多样的教学形式。
单片机应用课程平台可以通过视频课程、图文教程、在线实验等多种教学形式呈现,让学习者可以灵活选择自己适合的学习方式。
3、高质量的实验设计与仿真模拟。
在单片机应用课程中,实验环节是非常重要的,学习者需要通过实验来巩固和应用所学的知识。
因此,单片机应用课程平台需要提供高质量的实验设计和仿真模拟,让学习者可以在虚拟环境中进行实验,提高学习效率和实践能力。
4、良好的社交互动机制。
学习者在学习过程中难免会遇到问题和困惑,需要得到及时的帮助和解答。
因此,单片机应用课程平台需要有良好的社交互动机制,让学习者可以通过在线讨论、答疑解惑等方式获得帮助和支持。
5、合理的学习评估机制。
单片机应用课程平台需要建立合理的学习评估机制,包括考核方式、评分标准等内容,确保学习者的学习成果得到有效检验和认可。
1、构建完整的课程体系。
我们在设计单片机应用课程平台时,参考市场上普及的单片机课程,构建完整且适合初学者的课程体系,内容涵盖单片机基础知识、编程原理、电路设计和实际应用等方面,并通过良好的课程规划和融合案例教学、理论教学等多种角度,设计出翔实且体系化的单片机教学课程。
4、建立良好的社交互动机制。
单片机应用课程平台提供了一个便捷互动的社区,学习者可以通过此社区进行交流、答疑、分享。
社区里特有的实验室,在线试用等互动合作工具为学习者提供协作和交流的平台,让学习者可以快速地得到问题的答疑和有关的帮助。
综上,单片机应用课程平台的设计和实践需要考虑到多个因素,包括课程体系、教学形式、实验、社交互动以及学习评估。
只有综合考虑,充分整合,才能设计出适合学习者的高效学习平台,让学习者可以充分地掌握单片机应用的实际技巧和方法。
51单片机的使用说明书
使用说明书一、简介1.Embeded51Embeded51开发板采用国内常用的 51核心、管脚兼容的STC单片机,单板上即可实现烧写、调试、开发。
同时我们加入了一些基本入门模块比如:数码管显示、LED、掉电存储器、继电器等,目的是启发初学者,带领大家走入嵌入式开发殿堂!当然此板的功能绝对不局限于此。
本着开放的原则,我们开放了所有的 IO口和关键信号管脚,板上原有占用资源可以通过短路帽插拔轻松释放,大家可以发挥自己的想象和动手能力,在我们的基础平台上扩充自己的模块,打造属于自己的开发平台。
如果您能够在Embeded51平台上有所得,我们将会感到无比的欣慰与自豪!另外,我们也欢迎大家对现有平台提出改进建议。
2.试验内容板载资源试验● I/O口输入输出● LED实验●按键实验●单片机内部定时器操作●中断实验●串口通讯●继电器实验●掉电存储器实验●数码管动态扫描显示通过板载的开放 I/O口,您还可以自己扩展:RTC、温度传感器、LCD、蓝牙通讯、超声波、红外、电机驱动等等,只要你想一切皆有可能!二、板卡说明1. 板卡框架及功能说明⑴继电器模块⑵ USB-RS232转换(下载、串口通讯)⑶掉电存储器⑷按键⑸四位数码管显示(共阴数码管)⑹板载资源选择⑺单片机(51核心、管脚兼容、功能兼容)⑻端口开放区⑼端口开放区⑽板卡供电(USB、电源适配器可选)⑾电源开关⑿ LED2. 接口说明1.1供电板卡提供 USB供电和电源适配器 2种方式,电源输入 DC5V,USB接口既提供了电源同时也作为通讯口。
电源开关负责电源通断,电源指示灯指示板卡是否在有电状态。
1.2扩展口经典 51核心单片机提供四组 32个 I/O口,板卡上将这四组 32个端口全部开放出来,为您提供稳定、方便的单片机开发基础系统,您可以插上想象的翅膀扩展您想要的任何模块。
1.3继电器接口接口采用 5.08工业插头,提供弱电控制强电的功能。
1.4跳线区板载基本功能模块可以通过短路帽选择是否连通,基础实验时可以选择连通,方便验证试验结果,以后可以拔去短路帽自己扩展想要的功能模块。
在Linux下搭建51单片机的开发烧写环境
bin 文件的软件 b)安装环境:sudo apt-get install python-serial c)烧写 : sudo python ./stcflash.py test.bin
在 Linux 下搭建 51 单片机的开发烧写环境
在 Linux 下没有像 keli 那样好用的 IDE 来开发 51 单片机,开发环境只能 自己搭建了。 第一步:安装交叉编译工具 a) 安装 SDCC sudo apt-get install sdcc b)测试 SDCC 是否可用,这是个网上找的简单的流水灯代码 test.c, 用来 测试 #include 8051.h #define uint unsigned int #define uchar unsigned char uchar tab[8] = {0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80}; void Delay(uint xms)
{ uint i,j; for(i=xms;i>0;i--) for(j=110;j>0;j--); } void main() { uchar i; while(1) { for(i=0;i{ P1 = tab[i];shrc 最后一行加上 Hex2bin 所在的文件夹位置 PATH=$PATH:/home/leo/workspace/c51/Hex2bin-2.31 可以写个 makefile 文件,编译方便些 这是我写的 makefile: test.hex : test.c sdcc test.c packihx test.ihx > test.hex hex2bin test.hex clean: rm -rf *.asm *.lst *.mem *.rst *.lnk *.rel *.sym *.ihx *.hex *.map ~ 1234567 第二步:安装烧写工具 a)下载 stcflash:github/laborer/stcflash,这是个用 python 写的向单片机烧写
基于MCS-51单片机实践教学平台的构建
1 平 台硬 件 结 构
1 1 平 台简 介 .
单 片 机 设 计 性 实 践 教 学 平 台 是 以 主 控 模 块 ( S5 MC 一 l单 片机 最 小 系统 ) 电源 模块 为核 心 , 和 通
! = 堕
CN1 —1 5 N 2 3 2/
实
验
室
科
学
LAB 0RAT 0RY S E CI NCE
第 1 5卷 第 1期 2 1 2月 0 2年 V 11 N . Fb 2 1 o.5 01 e. 02
基于 M S 5 单 片机 实践 教学 平台的构 建 C 一 1
感器 1B 0等模 块 , 82 以方便学生选用 。鉴于篇 幅, 在此就不作一一介绍 了。
2 实 践 项 目的 设 计 流 程
本 实 验 平 台 既 可 以用 于 与 课 程 内容 相 关 的设
凌 忠兴 : 于 MC 一 1 片机 实践 教 学平 台的构建 基 S5 单
13 7
3 结 束 语
了传统实验箱 在进行实践教学时 的 “ 暗连接 ”缺 陷。 关键 词 :M S 5 单片机 ;实践教学 平台 ;硬件结构模块 C 一1
中 图分 类 号 :P 6 . T38 1 文 献 标 识 码 : B di1 .9 9 ji n 17 — 3 5 2 1 . 102 o:0 3 6/.s .6 2 4 0 .0 2O .5 s
L NG o g x n I Zh n - i g
单片机的开发环境
单片机的开发环境单片机(Microcontroller)是一种嵌入式系统中常用的芯片,它集成了处理器核心、存储器、输入输出接口和其他外设功能,具备独立运行程序的能力。
在进行单片机的开发工作之前,我们需要搭建一个合适的开发环境,以便进行程序编写、调试和烧录等工作。
本文将介绍单片机开发环境的搭建过程。
一、选择开发工具在搭建单片机开发环境之前,首先需要选择一款合适的开发工具。
常用的单片机开发工具有Keil μVision、IAR Embedded Workbench、CCS等。
这些工具提供了友好的图形化界面,支持多种单片机型号,具备强大的编译、仿真、调试和烧录功能。
根据实际需求和个人喜好,选择一款适合自己的开发工具。
二、准备硬件设备在搭建单片机开发环境之前,还需要准备一些硬件设备。
通常情况下,我们需要一台个人电脑、一块单片机开发板、一个编程器以及一些连接线材料。
个人电脑用于安装和运行开发工具,开发板用于烧录和运行程序,编程器用于将程序下载到开发板中。
根据所选的单片机型号和开发工具的要求,选择相应的硬件设备。
三、安装开发工具选择好开发工具后,我们需要将其安装到个人电脑中。
通常情况下,开发工具的安装过程比较简单,只需双击安装包并按照提示进行操作即可完成安装。
安装完成后,我们需要进行一些基本的配置,如选择工作目录、设置编译选项等。
四、连接开发板开发工具安装完成后,我们需要将开发板和个人电脑连接起来。
首先,将编程器与个人电脑相连,通常情况下,编程器会通过USB接口与个人电脑相连接。
然后,将开发板与编程器相连,通常情况下,开发板会通过排针接口与编程器相连接。
连接完成后,我们还需要检查连接是否正常,确保开发板能够被正确识别。
五、编写程序连接完成后,我们可以开始编写程序了。
打开开发工具,创建一个新的工程,选择所使用的单片机型号和编译选项。
然后,在集成开发环境中编写程序代码,可以使用C语言或者汇编语言来编写。
编写完成后,进行编译,以检查程序是否存在语法错误或者逻辑错误。
基于51系列单片机的实验平台开发设计
摘要由于单片机技术在各个领域正得到越来越广泛的应用,许多集成电路生产厂家相继推出了各种类型的单片机,在单片机家族的众多成员中,MOS.51系列单片机以其优越的性能、成熟的技术及高可靠性和高性能价格比,迅速占领了市场,成为国内单片机应用领域中的主流。
目前,可用于MOS.51系列单片机开发的产品越来越多,与其配套的各类开发系统、各种软件也日趋完善,因此可以极方便地利用现有资源,开发出用于不同目的的各类应用系统。
利用STC系列单片机作为微控制器开发一套软、硬件相结合的单片机实验平台,在Keil C环境下进行软件设计,主要包括流水灯、数码管显示以及LCD显示模块,在Protues中仿真成功,下载到电路板中验证成功。
实现流水灯正反向流动,应用中断实现数码管60之内计数以及LCD显示不同字符的功能。
关键词:STC单片机,实验平台,数码管,流水灯51 series microcontroller comprehensive experimental boarddevelopment designABSTRACTDue to the single-chip microcomputer technology in various fields has been more and more widely used, many integrated circuit manufacturers have introduced various types of SCM, the microcontroller family many members, MOS. 51 series microcontroller with its superior performance, mature technology and high reliability and high performance price, quickly occupied the market, become the mainstream in the field of SCM. At present, can be used for MOS. 51 series microcontroller products is more and more, and its supporting all kinds of development system, all kinds of software has become more and more perfect, so it can be very convenient to use of the present resources, developed for different purpose of all kinds of application system.Using STC series single chip microcomputer as micro controller develop a set of software and hardware combination of SCM experiment platform, in the Keil C under the environment of software design, including the water lamp, digital tube display and LCD display module, in Protues simulation in success, download to circuit board verify success. Realization of flowing water light forward and reverse flow, application of interrupt to realize digital tube within sixty counter and LCD display the function of different character.KEYWORDS:STC microcontroller, comprehensive experimental board, software and hardware combined with, and the program development design目录摘要 (I)目录 (III)前言 (1)第1章系统概述 (2)1.1设计题目 (2)1.2系统设计目的和内容 (2)1.2.1设计目的 (2)1.2.2设计内容 (2)1.2.3设计要求 (2)1.2.4设计步骤 (3)第2章整体设计方案 (4)2.1开发板整体外观 (4)2.2整板电路PROTUES仿真电路 (4)2.3软件功能描述 (5)2.4仿真软件PROTUES中的效果图 (6)第3章硬件电路设计 (7)3.1两位一体共阴数码管 (7)3.1.1数码管概述 (7)3.1.2数码管内部结构 (7)3.1.3两位一体共阴数码管和74LS374锁存器接口电路 (8)3.2LCD1602液晶 (9)3.2.1LCD1602液晶简介 (9)3.2.2LCD1602液晶引脚介绍 (10)3.2.3LCD1602液晶外围接口电路 (12)3.3 串口通信 (12)3.3.1串口通讯概述 (12)3.3.2MAX232接口电路 (14)第4章软件设计 (15)4.1程序整体流程图 (15)4.2程序清单 (16)第5章调试及故障分析 (19)5.1 焊接准备阶段元器件测试、电路原理图故障分析 (19)5.2 电路焊接过程中的故障分析 (19)5.3 程序编写过程中的故障分析 (19)5.4 实物演示效果 (20)结论 (22)谢辞 (23)参考文献 (24)附录 (25)前言1946年第一台电子计算机诞生至今,依靠微电子技术和半导体技术的进步,从电子管——晶体管——集成电路——大规模集成电路,使得计算机体积更小,功能更强。
51单片机原理及应用基于KeilC与Proteus教学设计 (2)
51单片机原理及应用基于KeilC与Proteus教学设计摘要本文主要介绍了基于KeilC与Proteus平台的51单片机原理及应用的教学设计,旨在帮助初学者更好的了解单片机编程的基本原理,以及如何使用KeilC和Proteus平台进行单片机的开发和调试。
本文包括了单片机的基本原理、汇编语言的基础知识、C语言编程基础、KeilC和Proteus平台的基本使用方法,以及基于这些知识实现的一些实例设计,可以帮助读者在实践中更好的理解单片机编程的基本原理。
1. 51单片机的基本原理51单片机是一种基于CISC架构的8位单片机,由Intel公司于1980年推出,具有高速、低功耗、易于编程等优点,被广泛应用于嵌入式系统中。
51单片机由CPU、存储器、IO口和时钟电路等组成,其中CPU采用Harvard结构,能够同时访问程序存储器和数据存储器,具有较好的执行效率。
2. 汇编语言的基础知识汇编语言是学习单片机编程最基本的知识之一,其主要作用是将人类能够理解的代码翻译成机器可以执行的指令。
汇编语言的学习包括了数据类型、指令集、寻址方式等内容,通过学习这些内容,能够更好的理解单片机编程的基本原理。
3. C语言编程基础C语言是一种高级编程语言,与汇编语言相比具有易学易用等优点。
在单片机编程中,C语言可以更好的实现程序设计的模块化,增强代码的可读性和可维护性。
C语言编程基础知识包括数据类型、语句控制结构、数组、指针等,通过学习这些内容,能够更好的进行单片机编程。
4. KeilC和Proteus平台的基本使用方法KeilC和Proteus是进行单片机编程、仿真和调试的常用工具,能够有效地辅助开发者进行单片机开发。
KeilC是一款集成开发环境,支持多种语言的编程,可用于单片机程序的开发和调试;Proteus是一款电子电路仿真软件,能够进行单片机程序的仿真和调试。
通过学习KeilC和Proteus平台的基本使用方法,能够更好的进行单片机编程。
2051单片机综合学习系统
2051单片机综合学习系统先看一下我们将要使用的51单片机综合学习系统能完成哪些实验与产品开发工作:分别有流水灯,数码管显示,液晶显示,按键开关,蜂鸣器奏乐,继电器控制,IIC总线,SPI总线,PS/2实验,AD模数转换,光耦实验,串口通信,红外线遥控,无线遥控,温度传感,步进电机控制等等。
主体系统如图1所示,其配套书本教程《单片机快速入门》如图2所示。
图1 51单片机综合学习系统主机部分图片图2 51单片机综合学习系统配套书本教程——《单片机快速入门》上图是我们将要使用的51单片机综合学习系统硬件平台,如图1所示,本期实验我们用到了综合系统主机、板载的DS1302时钟芯片,综合系统其它功能模块原理与使用详见前几期《电子制作》杂志及后期连载教程介绍。
在很多单片机系统中都要求带有实时时钟电路,如最常见的数字钟、钟控设备、数据记录仪表,这些仪表往往需要采集带时标的数据,同时一般它们也会有一些需要保存起来的重要数据,有了这些数据,便于用户后期对数据进行观察、分析。
本小节就介绍市面上常见的时钟芯片DS1302的应用。
DS1302是美国DALLAS公司推出的一款高性能、低功耗、带内部RAM的实时时钟芯片(RTC),也就是一种能够为单片机系统提供日期和时间的芯片。
通过本小节的学习,我们将会把RTC相关的一些技术粗略介绍一下,然后介绍DS1302与单片机之间的软硬件应用。
DS1302时钟芯片简介DS1302是DALLAS公司推出的涓流充电时钟芯片,内含一个实时时钟/日历和31字节静态RAM,可以通过串行接口与单片机进行通信。
实时时钟/日历电路提供秒、分、时、日、星期、月、年的信息,每个月的天数和闰年的天数可自动调整,时钟操作可通过AM/PM标志位决定采用24或12小时时间格式。
DS1302与单片机之间能简单地采用同步串行的方式进行通信,仅需三根I/O线:复位(RST)、I/O数据线、串行时钟(SCLK)。
时钟/RAM的读/写数据以一字节或多达31字节的字符组方式通信。
毕业设计51单片机开发版设计
目录第一章引言 (3)第二章硬件设计 (4)2.1设计原则 (4)2.2 AT89S51单片机主控制模块 (5)2.3 键盘模块 (5)2.4 ADC模块 (6)2.5 DAC模块 (7)2.6温度采集模块 (7)2.7显示模块 (8)2.8其他模块 (9)第三章软件设计 (10)3.1 键盘模块程序设计 (11)3.2 ADC模块程序设计 (12)3.3 DAC模块程序设计 (12)3.4温度采集模块程序设计 (13)3.5数码管显示模块程序设计 (14)致谢 (16)参考文献 (17)附录 (18)附录1 键盘模块部分程序 (18)附录2 AD模块部分程序 (19)附录3 DA模块部分程序 (21)附录4 测温模块部分程序 (22)摘要:设计一种基于AT89S51单片机的开发板,该开发板具有成本低、体积小、可靠性高、功能齐全、低功耗设计、操作方便等特点。
本论文详细介绍了该开发板的开发过程及相关硬件结构和软件设计。
开发板以ATMEL公司的AT89S51单片机为核心控制器。
开发板可以作为主控制模块安装于控制系统中执行控制任务,也可以用作实验板,完成单片机各类通用实验,操作简单,控制结果可见,性价比高,可以应用于高校、科研院所的实验室等场合,具有一定的实用价值和现实意义。
关键词:AT89S51;液晶显示;键盘2基于单片机的最小系统设计第一章引言单片机具有成本低、体积小、可靠性高、具有高附加值、通过更改软件就可以改变控制对象等优点,单片机越来越成为电子工程师设计产品时的首选器件之一。
因此拥有一块单片机开发板对单片机学习具有着极其重要的意义。
但是单片机学习效果的优劣直接取决于单片机的选择,C51系列单片机内部具有128字节RAM、5个中断源、32条I/O口线、2个16位定时器、4KB的程序存储器、一个全双工异步串行口。
本开发板选择具有ISP在线编程功能的AT89S51单片机,该单片机不需要烧写器,可在开发板上ISP在线编程,具有广泛的应用前景。
MCGS平台下51单片机驱动构件开发与应用
23 属性接 口 .
MC S G 提供 的接 口规 范 中共有 5个 属性 接 口, 编
程者可通过 调用 属性 接 口函数 来对 设备 属性 进行 设
置 。通过设置这 5个 属 性 , 以标 明设 备 的类 型、 可 类 别、 设备的通道个 数 、 设备所用 IO地址 的个数和设备 / 所用 IO的基地址 。由于 是子设 备 , / 故单 片机驱 动构
用于 自动控制系统 的监控层 , 其灵活 的组态 方式 , 可使
用户快速构建专业级 的工业 自动监控 系统 。 工控组 态 软件 是 一套 基 于 Wi o sT 20 / P n wN /00 X d 操作系统 、 可用来快速 构造 和生成 上位机 监控 系统 的
MC S中 , 构成 一个 整体 。由于设 备驱 动 构件 和 G 使其
套接 口规范 , 只有 遵守 这些接 口规 范 的 A t e L , c vD L 才 i 能用 作 M G 的 设 备 驱 动 构 件。具 体 来 说 , 发 CS 开 M G 设备驱动构件 的过程就是根据通 信协议 制定 的 CS
数据帧格式 , MC S接 口规 范 中的 5个 属性 函数和 对 G 8 方法 函数进行 定义 、 个 编程 、 试和挂 接 , 而完成 调 从
D v h ne : 7 eC anl
/ 标 明设备类别 为与 串 口 / 父设备对应的子设 备 , 0为独立 设备 / 标明设备 的通道个数为 7 / 个
D v/ON mb r = 0 eI u e
De Ba e/0 = 0 v sI
的是前一种方法 。 2 1 通信协议与数据格式 .
SDCC-eclipse-51_STM8开发环境搭建
开发51系列的单片机,国内的绝大部分人使用的是基于keil的开发环境,不过该商业软件是收费的,这算一个不太好的地方,另一个不好的地方是它的编辑环境已经跟不上时代的步伐了,尽管一般软件的体量并不大SDCC是一个免费的编译器,是跨平台的,其他操作环境也能工作,至于什么是编译器/编译器如何工作,请自行百度,如果能深入一些理解这些问题,算是一个大的提高SDCC在windows下面进行工作,可以直接参考SDCC的相关文档编写用命令行直接进行“原始开发”,但是这种方式显然不适合大众开发者,除非为了证明你有超凡的编程能力以及组织软件工程的能力,毕竟有了更好的工具,可以大大提高效率,让开发更关注业务逻辑本身所以eclipse是一个很好的目标平台,并且已经有人为我们免费开发了一些相应的工具,尽管这些工具已经很老,并且可能存在一些问题,但是经过一些改动,还是能很好的工作起来的,下面进入正式开发环境搭建工作需要准备的硬件有1、AT89S52开发板一块【其他51系列的也行】2、ISP下载工具【淘宝有很多,或者其他烧录工具】3、其他配件,如USB串口、电源等需要准备的软件【推荐用比较新的版本】有很多。
分别是1、jdk[根据自己带你电脑选择32或者64位]2、eclipse[C++版本、根据自己带你电脑选择32或者64位]3、SDCC【根据自己带你电脑选择32或者64位】4、Cygwin【建议安装离线版本】5、ISP的下载软件【】安装完后打开eclipse,进行安装插件此插件“net.sourceforge.eclipsesdcc-1.0.0-win32.x86”需要现在网上下载下来,之后解压,但是在比较新的eclipse中已经无法进行正常使用了,需要做一下修改,具体步骤是,解压后存放在eclipse目录下的“dropins”下面,如图之后需要修改,找到“~~\dropins\net.sourceforge.eclipsesdcc-1.0.0-win32.x86\plugins\net.sourceforge.eclipsesdcc_1.0.0”目录,把Cygwin软件bin目录下面的sh.exe复制到该目录,之后重启,就可以正常工作了,这里注意一下,需要把各软件的的一些可执行文件加入到环境变量【如果你看不懂这句话,说明这篇文章可能不适合你】,不然会出问题的打开eclipse新建工程文档,如图完成后需要进行配置右键工程文件主目录,打开配置选项,按下图配置这样的话就可以了,我的目录结构是到这里,实际已经可以正常编译【通过点击小锤子图标】并生成HEX文件了,有一点需要注意,SDCC与keil的一些关键字是不一样的,这个属于C语言下面的“方言”,主要用到的是sfr sbit 以及interrupt的一些使用,我截图一下,读者自行领悟一下应该会明白的,关键字是以在前面加双下划线的,并且sbit必须加上地址,另外就是中断,中断是这么定义的,如图这个和keil基本是一样的,前面加上双下划线即可,还需要注意的是,中断函数必须要声明到main函数文件中去,否则很可能无法生效,这个不清楚是bug还是开发人员故意这么搞另外就是,目前还不清楚的一些问题,主要是eclipse不识别SDCC中的一些关键字,导致SFR中的类似与P0这些无法识别,导致一直报错,但是可以正常编译的,可以打开相关的设置,把所有的相关的报错设置关闭掉【图中是把所有的全部都关掉了,可以根据实际需要打开或者关闭某些提示】至此已经可以正常开发51程序了,关于STC的可以适当的修改一下头文件也是可以开发的,另外这里说一下,关于在这个环境下面printf函数的实现,实际非常简单,只需要在文件中包含stdio.h 并实现void putchar(char);函数即可[有的版本可能类型不一样,按照提供的类型完成即可],这个我们选择串口方式输出,所以只需要,把能正常调用串口发送一个字节的函数写到里面即可,可参考下面的代码/******************************************************************本程序只供学习使用,未经作者许可,不得用于其它任何用途*******************************************************************/#include<at89x52.H>#include"UART.h"#include"MyType.h"#include"config.h"#include<stdio.h>#define Fclk 11059200UL /*使用11.0592M晶体*/#define BitRate 9600UL /*波特率定义为9600*/volatile uint8 g_tx_is_sending;/********************************************************************函数功能:串口初始化。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
打造自己的51单片机开发综合软件平台
(Keil 3+Proteus 7+Easy 51 Pro+。
)
业余单片机爱好者在进行51单片机编程实验时,常常要用到C51集成编译软件Keil 3、仿真软件Proteus和编程器,通常的步骤是:先用Keil33编写程序,完成并编译通过后再用Proteus进行仿真,最后打开编程器软件烧录芯片。
这几个软件应该说大家都比较熟悉了,但他们用起来都相对独立,以往,也有些单片机爱好者进行Proteus 与Keil3 联机调试,但这两个软件仍然要分别启动后才能由Keil3遥控启动Proteus的Debug;其实,利用Keil 3的自定义菜单功能,我们完全可以拥有一个集编写程序、编译、仿真联调、烧录等于一身的综合开发平台,在一个操作环境就可以完成编程所需的全部操作,怎么样?有兴趣吗?跟我来。
步骤:
1、在网上下载并安装Keil 3、Proteus 7软件。
2、运行下载的vdmagdi.exe,自动配置Proteus 7与Keil3联机仿真。
3、打开Keil 3,新建一个项目,选择菜单“Project”―>“options for Target ‘Target 1’”;在“Output”中勾选“Creat HEX File”,在“Debug”中点选“Use:Proteus VSM simulator”,确定。
选择菜单"Tools"->"Customize Tools Menu…",单击,将打开一个“Customize Tools Menu”窗口,见下图1、图2:
图1
图2
1)、点击插入一个新菜单项,输入菜单项名称如:“Proteus 7仿真”。
2)、在“Command”中输入运行Proteus 7的命令行:E:\...\Proteus 7 Prefessional\BIN\ISIS.EXE,但用鼠标点击打开文件所在目录从中直接选取更方便、直观、准确,注意:不能选用Proteus 7的链接,即Proteus 7.lnk,只能选.exe(或.bat)文件即Proteus 7.exe,否则以后用菜单启动Proteus 7时会出错。
3)、在“Initial”中输入Proteus 7仿真文件保存的目录,一般选Keil 3刚建立的项目目录(和项目生成的.hex文件同目录,否则仿真会出错),空白时默认为当前Keil 3项目目录。
4)、在“Argument”中输入Proteus 7仿真的文件名,一般与项目同名,仿真结束后生成.DSN仿真文件。
这里,笔者建议第3)“Initial”项不用填,第4)“Argument”在仿真完成后也予以删除,这样可以适用于Keil 3建立的所有项目,而不必每新建一个项目都要修改该目录和仿真文件名。
也可以勾选“Prompt for argument”,这样在启动Proteus 7前
将弹出一个对话框,提示您输入仿真文件名(图3)。
图3
需要调用多个软件时,重复1)~4)步骤,继续往里添加,最后点"OK"退出后,返回Keil 3程序窗口,再次打开菜单"Tools",您会发现下面多了几个菜单选项,分别是刚才所添加的几个菜单项(图4),点击它们就可以直接运行了,是不是很方便!
图4
好了,开发环境已经全部弄好了,让我们开始工作吧!
1、在Keil 3中编写c源程序,在编写过程中如有需要,可以随时打开Keil 3“Tools”菜单调用预设的小工具如LED代码查询、51定时器初值设定等,帮助你提高编写效率,编写完成后点击Keil 3 “Project”―>“Build target ”编译程序,若有错误,则根据错误信息进行修改直至编译通过,并生成.hex文件,准备用来进行仿真调试和烧录。
2、打开Keil 3 “Tools”菜单,点击“Proteus 7仿真”,启动仿真软件Proteus 7,在ISIS画电路原理图,并在CPU中装载生成的hex文件,在Proteus 7 菜单“Debug”下选择“Use Remote Debug Monitor ”。
3、点击Keil 3菜单“Debug”―>“Start/Stop Debug Session ”进行Proteus 与Keil 3 联机仿真调试,如有问题返回到Keil 3编辑窗口修改源程序、重新编译。
4、调试结束后,点击Keil 3菜单“Tools”―>“Easy51Pro串行编程器”打开烧写程序,在编程器中烧录片子。
(笔者的编程器为用洞洞班自制的Easy 51Pro2.0,其他编程器依上述方法添加。
)
在建立这个综合开发平台之前,笔者为使用方便,把以上常用的软件或快捷方式集中放在桌面的“单片机”文件夹中,但每次使用分别打开仍感不便,自从建立这个综合开发平台,就把它们都请到Keil 3菜单中安了“家”,再也不用东奔西跑了。
后记:与Keil 3类似,AVR平台的ICC AVR 和Studio也有自定义菜单功能,AVR 阵营的单片机爱好者也可以打造自己的AVR综合开发软件集成环境,如:ICC AVR(C编译)+Stduio(汇编、软件仿真)+Proteus 7(VSM仿真)+JTAG ICE(硬件仿真)+PonyProg2000(ISP烧录,或双龙SLISP)+各种工具等。