单片机软硬件联合仿真解决方案
“三大利器”构建单片机仿真实验平台
“三大利器”构建单片机仿真实验平台摘要:为了加强单片机课程的教学改革,不断提高单片机课程实验环节教学质量,本文将借助三个实用软件,介绍几种搭建单片机仿真实验平台的方法,利用这些方法可以将单片机实验室“搬进”学生寝室,教师可以任务驱动的方式提高学生的参与性,并具有实验时间不受限制,有效降低实验成本和设计风险等优点,有利于培养学生的创新能力。
关键词:单片机;教学改革;仿真实验平台目前,我国许多高校都应社会发展和市场需求在不同的专业开设了单片机课程,这无疑推动了单片机技术在实际生产生活中的应用,缓解了社会对单片机应用人才的需求压力,推动了大学生就业。
然而单片机课程又是一门实践性很强的课程,要想在教学过程中取得较好的效果,就必须要求学生在学习过程中多动手实践,这对开设这门课程的学校而言又提出了一定的要求,也就是要提供较好的实验环境,甚至要模拟企业的环境组建单片机开发工作室,让学生在“做中学”,真正的玩转单片机,否则会出现部分学生感到枯燥难学、教师感到吃力难教这样的尴尬。
单片机技术的发展,也推动着单片机开发工具的不断推陈出新,典型的有WA VE6000、Keil C51以及Proteus等,这些软件的推出给单片机学习、单片机设计与开发带来了方便,也可以很好地解决一部分学校因实验条件不足或实验室资源不充分而带来的问题,我们在这里向大家介绍WA VE6000、Keil C51和Proteus 这三个软件在构建单片机仿真实验平台过程中的应用方案,它可以将单片机实验室“搬进”学生寝室,教师可以按任务驱动的方式提高学生的参与性,并具有实验时间不受限制,有效降低实验成本和设计风险等优点。
1WA VE6000软件简介1.1 WA VE6000的特点WA VE6000是一款功能强大的单片机程序编辑、调试、仿真的Windows软件。
该软件可以配合伟福公司开发的硬件仿真器进行仿真,也可以单独进行单片机的软件模拟仿真,结合一台编程器,就可进行低投入的单片机开发工作。
利用Multisim10中的MCU模块进行单片机协同仿真
END
说明:因为单片机的电流是有限制的,不能太大,否则会烧毁单片机的。所以应在数码管的CA端和VCC端之间接一个限流电阻(100欧姆);或者在单片机与数码管之间接入一个排阻(7个)也可以,这样仿真时就不会烧毁单片机了。
附:例程中汇编代码
$MOD51;Thisincludes 8051 definitions for themetalinkassembler
这里我们通过一个简单的带有复位功能的计数器的例子来说明在NI Multisim10中如何进行单片机开发以及如何与SPICE模型电路协同仿真。
如果你对Multisim比较熟悉,那一定对里面的安捷伦(Agilent)54622D混合信号示波器等仪器印象很深刻吧,因为它与真实的仪器面板和操作几乎完全一样。Multisim里象这种模仿实际仪器的还有安捷伦的33120A任意波形函数发生器和34401A万用表,泰克(Tektronix)的TDS2024四通道示波器。充分利用这些仪器,就好比拥有了一个真实的实验室,你可以用33120A任意波形函数发生器给单片机提供输入信号,用54622D或TDS2024示波器观看模拟信号,或用54622D的逻辑分析仪功能查看单片机多个管脚数字信号的输出。在下面的例子里我们将用54622D来观察复位信号。
调试程序
选择菜单MCU→MCU 8051 U1→Debug View,可以看到文本区上面有下拉菜单并有两种选择,对应反汇编(disassembly)和列表汇编(listing assembly),简单的说,前者是由ROM的内容得到,后者是源文件编译后的结果。双击“设计工具箱”的main.asm,在源文件编辑窗口右键单击语句为“MOVC A,@A+DPTR”的一行,选择“设置/清除断点”(Toggle Breakpoint),在左侧会出现一个实心圆,点击“运行”,程序将停在该行,只不过是在“调试视图”(Debug View)的列表汇编窗口下,同时在实心圆上多出了一个黄色箭头。点击MCU-> MCU 8051 U1->Memory View,打开MCU存储器视图,在该视图可以查看特殊函数寄存器(SFR),内部RAM(IRAM),内部ROM(IROM),外部RAM(XRAM)。在SFR表格内观察ACC的值,此时应该为“00”,在IRAM里观察地址为21H的值,因为“MOV SP,#20H”语句将21H作为堆栈的第一个存储字节的地址,断点的前一处语句“PUSH ACC”使该字节存储ACC的值,此时也为“00”。再点“运行”,程序第二次停在断点处,观察SFR中的ACC和IRAM中的21H,如图9所示应,两个单元格里的值都应为“01”,你还可以双击该单元格进行修改,该值也正是七段数码管即将显示的下一个数。点击MCU菜单,可以看到除了设置断点以外还可单步进入(Step into),遇到函数时进入函数内部;跳过(Step over),即不进入函数;跳出(Step out),即跳出函数到调用函数的下一条语句。
PROTEUS的单片机教学与应用仿真
结论
它可以帮助学生们更好地理解单片机的工作原理和编程方法,同时也可以帮 助他们提高解决实际问题的能力。因此,PROTEUS单片机教学与应用仿真的实用 性和推广价值不容忽视。
结论
展望未来,随着科技的不断发展和PROTEUS软件的进一步升级和完善,相信 PROTEUS单片机教学与应用仿真将在更多的领域得到应用,同时也会为单片机人 才的培养和发展带来更多的机遇和挑战。
五、实验结果分析
实验过程: 1、在PROTEUS中搭建电路:选用AT89C51单片机芯片,连接8个LED灯和一个 按键开关,并设置相应的输入输出端口。
五、实验结果分析
2、编写程序:使用C语言编写程序,通过循环控制P1口输出高低电平,实现 LED灯的依次点亮和熄灭。同时,程序中加入按键开关的输入判断,以便手动控 制LED灯的显示状态。
四、应用场景
2、硬件开发:在单片机应用项目开发过程中,使用PROTEUS可以进行电路设 计和仿真,减少硬件调试的难度,提高开发效率。
四、应用场景
3、软件测试:通过在PROTEUS中搭建单片机外围电路,可以测试和验证单片 机的程序功能是否正确实现。
四、应用场景
4、产品设计:在产品研发阶段,使用PROTEUS进行单片机电路设计与仿真, 可以缩短产品开发周期,提高产品的可靠性和稳定性。
教学案例
教学案例
下面以一个简单的LED闪烁实验为例,介绍PROTEUS单片机教学案例的具体实 施过程:
1、实验题目:LED闪烁实验
1、实验题目:LED闪烁实验
2、实验目的:通过单片机控制LED的亮灭,实现LED的闪烁效果 3、实验原理:利用单片机的IO口控制LED的亮灭状态,通过循环实现LED的 闪烁效果
参考内容
软件与硬件结合的单片机仿真实验平台的建设
其 相 关课 程 。《 单片机原 理及 应 用》、《 单 片机原 理及 接 口技 功 能 。
. 2 硬件仿 真平台 术》等课程 是大 中专院校 电子类专 业实践性、 应用 性和 工程性 3 D程器 、 实验 仪三合一综合 很强的专业 基础课或专业选修 课。 从加强学生能力培养 的要求
5 ) 对程 序 中某些 纯软件 的部 分使用软件仿 在 电工电子类专业教学 中, 单片机 的实验 室建设大 多采 用 并重 新编译 连接 ; 硬件仿真器 配 目标实验板方式 , 不仅需采购 大量的硬件设备, 的单片机实验室 建设方案 。 该 方案配 置有 限的硬件设备, 很好 中实现 , 大大 增强了实验 室 向学生开放 的便利 性。 在 实际运行 推广利用价值 。 真验证 ; 6 ) 使用硬件仿真器对应用程 序进行硬件 仿真 ; 7 ) 将 生 上面 的流 程只是 一个标准 的开发流程 , 实际使用 中, 用户 而且设备维 护工作量也非常 巨大 。 本文提 出一种基于软件 仿真 成的H e x 文件烧写到单片机 的程序存储器R O M 中运行测试。
设 计分析 ・
软件与硬件结合 的单片机仿真实验平台的建设
程晓艳 党国庆( 新余学院, 江西 新余 3 3 8 0 0 4 )
摘 要: 本文分析了建设软硬件结合的单片机仿真平台的必要性, 在此基础上提 出了 软件加硬件的仿真平台的建设意见。 关键词: 软硬件; 单片机; 仿真; 平台; 建设
系列单片机仿真步骤
15单片机仿真步骤仿真是为了实时监控单片机的内部运行状态,在进行程序调试时,不可幸免的会显现一些错误,可是单从程序咱们无法发觉错误所在,用软件模拟仿真一样能够达到一样的目的,那么这是咱们就需要用到硬件仿真了。
具体仿真操作步骤如下(编程软件为Keil,烧写软件为STC-ISP,专门注意STC-ISP 及以上版本方才支持仿真功能):1、下载keil和STC-ISP 或以上版本进行安装。
2、由于下载软件和烧写软件为两款不同的软件,故需要将两个软件进行关联。
打开STC-ISP进行如下操作。
3、点击“keil仿真设置”(部份低版本的STC-ISP是“keil关联设置”)4、点击“添加型号和头文件到keil中添加STC仿真器驱动到keil中”(将鼠标放在该按钮上有具体添加步骤,如上图)。
选定keil的安装途径,点击确信。
5、在keil中感动工程文件,或新建工程文件,确保工程设置的芯片型号与实际型号一致。
6、打开option for target选项卡,如上图1;选择Device选项卡,选择STC MCUDatabase,如上图2;选择对应的单片机型号(那个地址15w4k58s4为例,由于没有该单片机的MCU型号,选择最接近的15w4k32s4),如图3;点击ok确信,如图4.7、在Dubeg选项卡当选择仿真模式,选择Use模式,如图1;在下拉选项当选择STCMonitor-51 Driver,如图28、点击“setting”按钮显现串口配置窗口,如上图,将Com设置为单片机的连接的COM(COM口的查询方式见注释一),波特率设置一个相对稳固的值,没有专门要求。
点击ok设置完毕。
9、将hex文件导入STC-ISP中点击“将IAP15w4k58s4设置为仿真芯片”如上图。
10、现在会显现如上图所示提示,现在冷启动单片机进行程序的烧写,直至提示成功。
11、点击Dubeg图标进入仿真。
至此所有仿真设置全数设置完毕。
VC的8051单片机的软硬件仿真模块程序设计
收稿日期:2【)05儿一09 作者简介:罗抟翼(1946).男,湖南长沙人,教授,主要从事控制理论与计算机仿真等方面的研究
万方数据
沈阳工业大学学报
第29卷
对于无位操作寄存器的仿真,用BYTE_7 J数 据类型作为其载体.在vc十+6中BYTE的定义 是#dcfine BYTE unsiglled char,为8位无符号整 形.由于单片机数据寄存器的存储形式也是8位, 所以BY7I、E数据类型是非常完美的单片机数据 寄存器仿真载体.BY’rE类型数据OclH的二进 制位存储形式如图1所示.
BYTE*Psw=&RAM[208]; BYTE*AcC=&RAM[214]; BY’11E*B=&RAM[230]; 这样在进行位操作仿真时,就可以直接存取 内存指针地址中的变量进行仿真. 其次,设立一个集合A={指令能够引起 PSw寄存器有位变化},把这些指令标志存储成 特殊的数据结构以便查找,一旦有满足条件的指 令执行,就利用vC中的消息机制,发送消息对 PSw所在字节进行处理,同时在每一个指令仿真 函数中执行监控函数,一旦有菜一个特殊寄存器 的有位变化,就发一个消息对这砦位控制功能进 行仿真. 1.2内部程序寄存器(RoM)的仿真 8051的R()M是16位寄存器,用于存放编好
由图2可知指令语句的存储载体是结构数 组,其维数根据用户输入的语句行数进行动态增 减,一行语句一个结构数组元素,”行语句则结构 的维数就是n.结构中的pc变量存储该语句的 Pc地址值,而pc—next变量存储下一语句的Pc 地址值,也就是说前一语句的pc—nex【值等于后一 语句的pc值,可总结为pc—ncxt^=pc々+1(女=1, 2,·rt,n)
另外结构中还有一个(string变量,这里用 它来存储语句前的地址标号例如
单片机软件仿真与调试的方法单片机
单片机软件仿真与调试的方法 - 单片机点击运行软件Keil uVision2.其调试操作步骤大体可以分为5步:1.创建工程在项目开发中,并不是仅有一个用户源程序就够了,还要为这个项目选择CPU型号、设置编译和调试参数。
有一些项目还会有多个文件组成。
因此将这些参数设置和所需要的全部文件统称为一个工程,存放于特地的工程文件夹下。
这里先建立一个工程文件夹如F:\exam.①创建新工程。
鼠标左键单击主菜单Project一New Project.弹出。
Create New Project"对话框,用鼠标选择你要保存工程的文件夹(如FAexam),输入新工程名(如"exam")。
单击"保存"按键。
②在随后弹出的CPU型号设置对话框中选择单片机的型号(如"AT89C51"),单击"确定"完成。
2.建立源程序文件并加入工程①鼠标左键单击菜单。
File一New新建文件。
弹出图1窗口。
自动进入编辑工作模式。
图1 源程序文件的建立与编辑②在文本窗口中输入和编辑用户的源程序。
【项目任务】设计一种花样彩灯程序,实现单片机P1口驱动相连的8个发光二极管依次循环点亮。
③单击菜单。
File一Save as.弹出文件保存对话框,选择工程文件夹("F:\exam")。
输入源程序文件名(如"exam.asm"),点击"保存"按钮。
留意汇编源程序的扩展名必需为asrn,C51源程序扩展名必需为*.C.④将源程序加入工程。
用鼠标点击图标"Target1"前的"+"号,开放后右键单击Source Group弹出快捷菜单,点击"Add File to Group'SourceGroup 1"项弹出源程序加入工程对话框。
选择刚保存的用户源程序exam.asm,点击ADD按钮加入工程,点击Close关闭对话框。
仿真技术在单片机开发中的应用
设计 完成 才能 进行 除 错处 理 . 在硬 件 并
完成 后才 将 系统集 成 在一 起 . 始进行 开
受 到重 视 。但 原 理设 计完 成后 . 要 自 需
己 反 复 调 制 电 路 或 多 次 制 作 印 制 电 路 板 来 测 试 ,这 大 大 增 加 了 开 发 成 本 . 成
成 电 路 . 采 用 超 大 规 模 集 成 电 路 技 术 证 系 统 软 硬 件 的 正 确 性 . 别 是 功 能 的 它 特
2 电子琴 系统 设 计
该 方 案 的 核 心 是 采 用 伟 福 单 片 机
把 中 央 处 理 器 ( P 、 随 机 存 储 器 C U) ( A 、 读 存 储 器 ( O 、 种 IO R M) 只 R M) 多 /
建立模 型 、 真 实验 、 据处 理 、 析验 避 免 早 期 设 计 错 误 . 服 单 片 机 开 仿 数 分 克
证 等 步骤 . 用模 型模 拟 现实 环境 系统 发 成本 高 的 缺点 . 软 件 方式 模拟 利 用 进 行 动 态 试 验 。 例 如 . 车 或 飞 机 的 驾 汽 驶 训 练 模 拟 器 .就 是 集 成 了 计 算 机 技 术 、 络技 术 、 形 图像 技术 、 向对象 网 图 面
为推 广单 片机 研发 的障碍
近 年 来 . 算 机 仿 真 技 术 取 得 了 快 计
速 的 发 展 . 时 推 动 了 单 片 机 仿 真 技 术 包 含 硬 件 在 内 的 整 个 系 统 进 行 功 同
的进 步。计算 机仿真 ( 0 ue i u C mp trSm — lt n ai )技术 是 一 门 多学 科 的综 合 性技 o
电子琴 系统包 括 A 8 S 1单 片机 、 T 95
基于Protues软件的单片机软硬件仿真实验
单片机教学中不少内容抽象、乏味,若不通过实验很难让学生得到更好的理解;而现有的实验硬件平台能做的实验有限,效果不理想,开设成本也很高,若采用Protues 软件能较好地解决该问题。
如英国Labcenter 公司推出的Protues 软件采用虚拟技术解决了单片机及其外围电路的设计和协同仿真的问题,无需硬件实验平台,利用个人计算机进行单片机软硬件同步仿真,仿真结果可直接运用于真实设计,优点不言而喻。
下面以LED 流水广告灯实验为例谈谈单片机教学中如何利用Protues 进行单片机软硬件仿真。
1电路原理图的绘制启动已安装软件Protues 的ISIS ,在弹出窗口的菜单栏中单击“文件”→“新设计”→选择“项目摸板”(根据电路的难易程度或具体要求进行“项目摸板”选择)→“确定”,绘制电路图。
绘制电路图时,单击元器件窗口上方的“P ”按钮,在窗口上方的“关键字”处键入所需器件型号或名称,窗口中间的“结果”栏将显示元器件库中所有同系列的器件(见图1)。
图1器件选取窗口收稿日期:2012-05-23作者简介:唐晓慧(1963-),女,四川广安人,贵州师范学院数学与计算机科学学院副教授。
研究方向:计算机接口、单片机教学。
韦萍萍(1975-),女,贵州望谟人,贵州师范学院数学与计算机科学学院副教授。
研究方向:数据库、计算机软件教学。
2012年第8期第30卷(总第145期)NO.8,2012Vol.30General No.145毕节学院学报JOURNAL OF BIJIE UNIVERSITY 基于Protu es 软件的单片机软硬件仿真实验唐晓慧,韦萍萍(贵州师范学院数学与计算机科学学院,贵州贵阳550018)摘要:通过对如何利用Protues 进行单片机软硬件仿真进行简述,以期在单片机理论教学中力避枯燥,并以Protues 作实验平台,将教学融于实践,可以让学生感知所编程序的实际效果,从而更好地掌握所学知识。
单片机开发Keil C51与Proteus仿真联合应用研究
关键词 : 联合仿 真; K e i l ; P r o t e u s ; 软件调试 ; 硬 件 仿 真 中 圈分 类 号 : T P 3 9 1 . 9 文献标识码 : A 文 章 编 号 :1 6 7 4 — 6 2 3 6 ( 2 0 1 3 ) 1 7 — 0 1 7 8 — 0 4
Ke y wo r  ̄: s i mu l a t i o n s y s t e m ;k e i l ;P r o t e u s ;s o f t w a r e d e b u g g i n g;h a r d wa r e s i mu l a t i o n
史上最详细!单片机的Proteus虚拟仿真解析
史上最详细!单片机的Proteus虚拟仿真解析1.引言单片机体积小,重量轻,具有很强的灵活性而且价格便宜,具有逻辑判断,定时计数等多种功能,广泛应用于仪器仪表,家用电器,医用设备的智能化管理和过程控制等领域。
以单片机为核心的嵌入式系统已经成为目前电子设计最活跃的领域之一。
在嵌入式系统的中,开发板成本高,特别是对于大量的初学者而言,还可能由于设计的错误导致开发板损坏。
利用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,AVR,ARM等多种系列的处理器。
Protues包含强大的调试工具,具有对寄存器和存储器、断点和单步模式IAR C-SPY,Keil、MPLAB等开发工具的源程序进行调试的功能;能够观察代码在仿真硬件上的实时运行效果;对显示,按钮,键盘等外设的交互可视化进行仿真。
软硬件联合仿真平台的设计
软硬件联合仿真平台的设计作者:奎伟来源:《电子世界》2012年第01期【摘要】在FPGA的设计过程中,调试与仿真工作需要耗费大量时间。
利用C语言相对Verilog语言在过程控制方面具有优势,采取系统C模型通过PLI接口给Verilog模型产生测试矢量,降低了设计仿真工作的复杂度。
但是由于当今的Verilog仿真器速度慢,难以满足大数据量和高实时性的仿真要求。
通过将设计中验证通过的Verilog模型在FPGA中实现并与PC 机通过通信接口实现数据交互,待验证的Verilog模型运行在Verilog仿真器上,构成软硬件协同仿真加速系统,克服了软件仿真慢的特点而实现实时仿真,从而极大的加快了设计的仿真速度。
【关键词】软硬件协同仿真;仿真加速;FPGAThe design of the simulation platform with software and hardwareKui Wei(College of information science and technology,Xiamen university,Xiamen,361005,China)Abstract:During FPGA design,it is very difficult to debugger and simulation for complex hardware circuit design.Because using C language in process control is more superior than Verilog language,the method that system C model generate test signals to Verilog model by PLI interface,will be carried out.It reduces the complexity of design and simulation.However,nowadays Verilog simulators are too slow to fit the requirement,which demands large system data and high real time simulation.So,if Verilog model runs in FPGA,and communicates with C model running on the PC,constituting the software and hardware co-simulation acceleration system.The system will overcome the tardiness of soft simulation and achieve real time simulation.Besides,it greatly speed up the simulation of system.Keywords:Co-simulation Software and Hardware;Simulation Speed-up Technology;FPGA1.前言在做FPGA设计时,软件仿真这个步骤是必不可少的。
联合仿真在单片机教学中的应用
摘要:文章描述了使用Proteus软件与Keil uVision3软件建立联合仿真的方法,并用实例说明联合仿真的方法和过程。
关键词:Proteus软件;Keil uVision3软件目前,单片机技术在实际工程中得到了广泛应用,Proteus软件与Keil uVision3软件的联合仿真在实际的单片机系统开发中被普遍应用。
为此,在单片机课程教学过程中,教师一定要结合工程实际做到软件和硬件相结合,实现理论教学与工程实践紧密结合,在传授理论知识的同时,教会学生如何使用实际工程所应用的相关软件进行单片机系统开发。
Proteus软件与Keil uVision3软件简介Proteus软件的介绍Proteus软件是英国LabcenterElectronics公司开发的电子设计自动化(EDA)工具软件。
该软件主要由实现原理图编辑及仿真的ISIS模块和实现PCB板设计及自动布线的ARES模块组成。
Proteus不但具有其他EDA软件的模拟电子和数字电子仿真功能,而且还具有其他EDA软件所没有的单片机系统硬件仿真功能。
它可以仿真MS51系列单片机、A VR单片机、PIC单片机和ARM7微处理器,可以直接在电路原理图上实现硬件的虚拟仿真,实现程序的调试,并提供进行测试与分析的虚拟示波器、逻辑分析仪等虚拟仪器及仿真图表。
Keil uVision3软件的介绍Keil uVision3软件是德国的嵌入式开发工具专业制造商Keil公司开发的单片机开发软件平台。
首先,该软件不但可以进行软件仿真,而且还可以通过其内嵌模块Keil-Monitor-51,实现在不需要连接硬件仿真器的条件下,通过下载线连接硬件系统对项目进行实时仿真。
其次,可以与Proteus单片机仿真软件联合实现虚拟硬件仿真。
再次,Keil uVision3软件具有良好的调试界面,操作不复杂,具有优秀的编译效果,丰富的学习资料。
目前,Keil uVision3软件的用户非常庞大,几乎所有的嵌入式开发工程师都使用该软件。
最新-单片机软硬件联合仿真解决方案 精品
单片机软硬件联合仿真解决方案摘要本文介绍一种嵌入式系统仿真方法,通过一种特殊设计的指令集仿真器将软件调试器软件2和硬件语言仿真器软件连接起来,实现了软件和硬件的同步仿真。
关键词,,,,,,2,,,,虚拟网卡,,,,,,缩略词解释总线功能模块。
在硬件语言仿真中,完成抽象描述数据和具体的时序信号之间的转换。
编程语言接口,是语言模块和语言模块之间交换数据的接口定义。
字面意思是工具命令语言,是一种解释执行语言,流行软件一般都集成有。
使用用户可以编写控制工具的脚本程序,实现工具操作自动化。
指令集仿真器,可以执行的机器码。
简单文件传输协议,的既是该协议的客户端实现。
一种存储卡,常用于数码相机、3。
直接内存访问。
用于外部设备之间高速数据转移。
媒体接入控制器。
本文中是指网卡芯片。
前言传统的嵌入式系统中,设计周期、硬件和软件的开发是分开进行的,并在硬件完成后才将系统集成在一起,很多情况下,硬件完成后才开始进行实时软件和整体调试。
软硬件联合仿真是一种在物理原型可用前,能尽早开始调试程序的技术。
软硬件联合仿真有可能使软件设计工程师在设计早期着手调试,而采用传统的方法,设计工程师直到硬件设计完成才能进行除错处理。
有些软件可在没有硬件支持的情况下完成任务的编码,如不涉及到硬件的算法。
与硬件相互作用的编码在获得硬件之前编写,但只有在硬件上运行后,才能真正对编码进行调试。
通过采用软硬件联合仿真技术,可在设计早期开始这一设计调试过程。
由于软件的开发通常在系统开发的后段完成,在设计周期中较早的开始调试有可能将使这一项目提早完成,该技术会降低首次将硬件和软件连接在一起时出现意外而致使项目延期完成所造成的风险。
在取得物理原型前,采用软硬件联合仿真技术对硬件和软件之间的接口进行验证,将使你不会花太多的时间在后期系统调试上。
当你确实拿到物理原型开始在上面跑软件的时候,你会发现经过测试的软件部分将会正常工作,这会节省项目后期的大量时间及努力。
单片机软硬件联合仿真解决方案范文
单片机软硬件联合仿真解决方案单片机软硬件联合仿真解决方案摘要:本文介绍一种嵌入式系统仿真方法,通过一种特殊设计的指令集仿真器ISS 将软件调试器软件Keil uVision2和硬件语言仿真器软件Modelsim连接起来,实现了软件和硬件的同步仿真。
关键词:BFM,TCL,Verilog,Vhdl,PLI,Modelsim,Keil uVision2,I S S S,TFTP,HT T T P,虚拟网卡,Sn i ffer,SMAR T T MEDIA,DM A A,MAC,SRAM,,CPLD缩略词解释释:BFM:总线功能能模块。
在HDL硬件语语言仿真中,BFM 完成成抽象描述数据和具体的的时序信号之间的转换。
PLI:Veri l og编程语言接口,是是C语言模块和Ver i log 语言模块之间交交换数据的接口定义。
TCL:字面意思是工工具命令语言,是一种解解释执行语言,流行E D D A软件一般都集成有T T CL。
使用TCL用户户可以编写控制EDA工工具的脚本程序,实现工工具操作自动化。
I S S S:CPU指令集仿真真器,可以执行CPU的的机器码。
TFTP::简单文件传输协议,W W indows的既是该该协议的客户端实现。
SMART MEDI A A:一种存储卡,常用于于数码相机、MP3。
DMA:直接内存访问问。
用于外部设备之间高高速数据转移。
MA C C:媒体接入控制器。
本本文中是指网卡芯片。
前言传统的嵌入式系统统中,设计周期、硬件和和软件的开发是分开进行行的,并在硬件完成后才才将系统集成在一起,很很多情况下,硬件完成后后才开始进行实时软件和和整体调试。
软硬件联合合仿真是一种在物理原型型可用前,能尽早开始调调试程序的技术。
软硬硬件联合仿真有可能使软软件设计工程师在设计早早期着手调试,而采用传传统的方法,设计工程师师直到硬件设计完成才能能进行除错处理。
有些软软件可在没有硬件支持的的情况下完成任务的编码码,如不涉及到硬件的算算法。
单片机硬件仿真实用方案
单片机硬件仿真实用方案汤湘林【摘要】单片机硬件仿真是单片机应用系统软件开发调试的一个常用方法,也是一个重要手段.文章分析了单片机硬件仿真和软件仿真的区别,介绍了一种性价比很高的、实用的单片机硬件仿真解决方案,通过控制单片机的系统时种和运行系统监控程序,读取单片机数据总线的数据,实现单片机硬件仿真的功能.【期刊名称】《电子制作》【年(卷),期】2015(000)010【总页数】1页(P41)【关键词】单片机硬件仿真;存储器;地址总线;数据总线;系统时钟【作者】汤湘林【作者单位】深圳技师学院 518116【正文语种】中文单片机作为计算机发展的一个重要分支领域,广泛应用于人类生活的各个领域。
单片机仿真是单片机应用系统软件开发调试的一个常用方法,单片机仿真分为硬件仿真和软件仿真。
尽管软件仿真具有无需搭建硬件电路就可以对程序进行验证的优点,但无法完全反映真实硬件的运行状况,因此还要通过硬件仿真来完成最终的设计。
本文将提出一种性价比很高的、实用的单片机硬件仿真解决方案,通过控制单片机的系统时种和运行系统监控程序,读取单片机数据总线的数据,实现单片机硬件仿真的功能。
图1为实现单片机硬件仿真的总体结构框图。
主控MCU与PC通信,将目标代码下载到FLASH。
主控MCU通过控制被仿真单片机的系统时钟,就可以控制被仿真单片机运行FLASH中的目标代码,实现单步运行程序、让程序运行到指定的程序行停止或查看存储器资源等调试功能。
要实现此方案的单片机硬件仿真功能,必须要有一个被仿真单片机的仿真芯片,此芯片与被仿真单片机相比,其它硬件相同,但没有内部程序存储器,而且多预留出程序地址总线AD16、程序数据总线DATA16、系统数据总线SDA8和一些仿真调试的引脚。
如图2所示,主控MCU通过16根地址线(ADDR16)、16根数据线(DATA16)、CE线、OE线、 WE线与FLASH相连。
仿真芯片的16根程序地址总线AD16通过三态缓冲器74HC244与FLASH的地址线相连,16根程序数据总线DATA16与FLASH的数据线相连,8根系统数据总线SDA8与主控MCU 相连。
单片机仿真的设计与实现_陈定君
*本刊于1997年10月收到。
本文受“863”计划资助,项目编号863-306-01-05。
单片机仿真的设计与实现*陈定君 郭晓东 余克清 刘积仁(东北大学软件中心新技术部,沈阳110006)摘 要本文主要论述了S4系统中uPD78k014单片机仿真软件的设计思想和部分实现技术,介绍了单片机仿真软件的体系结构及软件编程实现手段,并以时钟发生器和中断机构为例阐明了编程实现过程中一些实现方法。
关键词:仿真,嵌入式软件,硬件描述语言1 引言S4(Sing le -chip Softw are development Support System )系统是我们自行研制与开发的实时嵌入式软件仿真开发集成环境,它主要是为嵌入式软件开发者以较低代价提供嵌入式软件仿真开发与调试平台,它对智能电器工业的发展将会起到巨大推动作用,这是一项有着广泛应用前景、值得进一步开发的课题。
S4系统体系结构核心如图1所示。
嵌入式软件在仿真的单片机上运行,仿真的单片机又与外围硬件仿真环境交互,同时程序员还可通过仿真调试器对嵌入式软件进行与常规程序相同的交互、可视化的调试操作。
单片机的仿真是S4的系统的核心之一,嵌入式软件在其上的仿真运行速度对整个系统运行速度都有着重要影响,因此单片机的仿真开发与实现也就显得尤为重要了。
本文将主要介绍我们针对日本NEC 公司uPD78k 系列单片机进行仿真的设计思想与实现方法,以uPD78k014单片机为例。
图1 S4系统体系结构2 单片机仿真的设计思想仿真(simulation )是在电路系统设计过程中用来对设计者的硬件描述和设计结果进行查错、验证的工具。
同样我们也可以通过仿真手段实现单片机的所有动作,从而可以利用计算机软件进行模拟单片机的运行。
由于设计者对数字电路的描述级别不同,在描述方法、模型抽象、内部实现和模拟算法上将会有很大区别。
uPD78K014单片机采用基于逻辑的仿真,逻辑仿真的对象是以门和功能块为描述电路的元件,也称门和功能级仿真。
单片机系统计算机辅助设计工具及软硬件设计和仿真
单片机系统计算机辅助设计工具及软硬件设计和仿真【摘要】利用C51语言作为编程语言,将KEIL与Proteus以及双龙软件当做用来进行软件编译、测试、仿真、下载、制作的工具,利用这些工具能够便捷地对51单片机进行软件设计,还可以用来进行硬件仿真和电路板制作,是非常适合首选的计算机辅助开发工具组合。
以下还对单片机系统开发方式和工具的设想进行了一些讨论。
【关键词】单片机系统;计算机;辅助软件;设计工具;硬件设计;仿真选用合理的计算机辅助软件技术与工具来对单片机进行辅助,以便其控制系统能够发挥良好的作用,对其系统的设计与开发还能够在节省人力方面起到很大的效果,形成一种电脑解放人脑的绝对优势。
而在早期阶段的Z80单片机,即使采用了汇编语言进行编程,但机器识别编码的能力非常的弱,只能够识别由1和0形成的编码,所以此单片机在进行编程后还要利用人工对其进行翻译并要翻译成机器能够识别的编码,还要将其人工翻译成的机器码再输入进单片机内,经过这样一个繁琐的过程后才能够对软件进行调试。
但在科学技术发达的今天,此种劳动力早就已经被电脑技术所代替,而且其劳动功效大大提高了许多。
即使有了现在的科学技术,也不能够满足人们对高效方法的不断追求和对其更具有高效工作效率工具的开发。
目前在单片机系统设计开发技术上,利用计算机辅助设计和软硬件结合仿真的开发设计工具已被许多的开发者所采用。
1.51单片机控制系统设计开发工具及选用1.1 由于科学技术的不断发展,在单片机技术领域有了很大的进步,对51系统单片机的开发工具和设备上有了很多的技术成果,例如,能够采用C语言开发51单片机程序,而经常使用其开发软件的公司就有加拿大软件公司DA VEDUNFIELD推出的MICRO-C51编译器、IAR公司和2500A.D公司开发的编译器、Windows 集成开发环境Keil软件等。
而在我国利用这项技术的公司有MedWin集成开发环境、伟福集成开发软件等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机软硬件联合仿真解决方案摘要:本文介绍一种嵌入式系统仿真方法,通过一种特殊设计的指令集仿真器ISS将软件调试器软件Keil uVision2和硬件语言仿真器软件Modelsim连接起来,实现了软件和硬件的同步仿真。
关键词:BFM,TCL,Verilog,Vhdl,PLI,Modelsim,Keil uVision2,ISS,TFTP,HTTP,虚拟网卡,Sniffer,SMART MEDIA,DMA,MAC,SRAM,CPLD缩略词解释:BFM:总线功能模块。
在HDL硬件语言仿真中,BFM完成抽象描述数据和具体的时序信号之间的转换。
PLI:Verilog编程语言接口,是C语言模块和Verilog 语言模块之间交换数据的接口定义。
TCL:字面意思是工具命令语言,是一种解释执行语言,流行EDA软件一般都集成有TCL。
使用TCL用户可以编写控制EDA工具的脚本程序,实现工具操作自动化。
ISS:CPU指令集仿真器,可以执行CPU的机器码。
TFTP:简单文件传输协议,Windows的tftp.exe既是该协议的客户端实现。
SMART MEDIA:一种存储卡,常用于数码相机、MP3。
DMA:直接内存访问。
用于外部设备之间高速数据转移。
MAC:媒体接入控制器。
本文中是指网卡芯片。
前言传统的嵌入式系统中,设计周期、硬件和软件的开发是分开进行的,并在硬件完成后才将系统集成在一起,很多情况下,硬件完成后才开始进行实时软件和整体调试。
软硬件联合仿真是一种在物理原型可用前,能尽早开始调试程序的技术。
软硬件联合仿真有可能使软件设计工程师在设计早期着手调试,而采用传统的方法,设计工程师直到硬件设计完成才能进行除错处理。
有些软件可在没有硬件支持的情况下完成任务的编码,如不涉及到硬件的算法。
与硬件相互作用的编码在获得硬件之前编写,但只有在硬件上运行后,才能真正对编码进行调试。
通过采用软硬件联合仿真技术,可在设计早期开始这一设计调试过程。
由于软件的开发通常在系统开发的后段完成,在设计周期中较早的开始调试有可能将使这一项目提早完成,该技术会降低首次将硬件和软件连接在一起时出现意外而致使项目延期完成所造成的风险。
在取得物理原型前,采用软硬件联合仿真技术对硬件和软件之间的接口进行验证,将使你不会花太多的时间在后期系统调试上。
当你确实拿到物理原型开始在上面跑软件的时候,你会发现经过测试的软件部分将会正常工作,这会节省项目后期的大量时间及努力。
软硬件联合仿真系统由一个硬件执行环境和一个软件执行环境组成,通常软件环境和硬件环境都有自己的除错和控制界面,软件通过一系列由处理器启动的总线周期与硬件的交互作用。
本文以一个Mini Web卡的开发介绍一种软硬件联合仿真系统。
[!--empirenews.page--]该方案的核心是采用一个51单片机仿真引擎GoldBull ISS51(以下简称ISS51),ISS51是51单片机开发环境Keil uVision2的一个插件,ISS51具有连接Keil 和硬件仿真环境Modelsim的接口,可以实现软硬件同步仿真。
在该系统中,Keil作为软件调试界面,Modelsim作为硬件仿真和调试界面,ISS51负责软件执行、监控软件断点、单步执行、内存和寄存器数据返回给Keil、CPU总线时序产生和捕获、内部功能模块(如定时器,串口)的运行等功能。
Mini Web卡介绍Mini Web卡是一个运行在单片机上的Web服务器,提供网口连接,有大容量文件系统,提供TFTP和HTTP服务。
尽管软件系统比较复杂,但优化编译后,执行代码还不足25K,为后续升级留下了足够空间。
51CPU采用SST89系列,这种CPU具有ISP功能,可以通过RS232串口,直接将目标码下载到CPU。
DMA控制逻辑是一个可编程逻辑器件,采用的是ALTERA的CPLD EPM240,主要功能是实现外围器件之间的DMA传递。
因为51CPU进行IO访问是很低效的,需要24个时钟周期才能进行一次IO访问,在外围设备之间转移数据则需要更多的时钟周期,使用DMA控制逻辑可以达到3个时钟周期就能转移一个字节。
本系统中处理多种网络协议,需要大量报文收发和文件系统访问,采用DMA可以极大地提高51单片机的数据处理速度。
DMA通道主要有MAC芯片与RAM之间的数据块转移,SMART MEDIA和RAM之间的数据块转移。
网卡芯片采用的是AX88796,主要的优点是可以和51CPU方便地接口;支持100M以太网,速度高;有较大的接收报文缓存,能够平滑网络流量,减少因51CPU处理速度慢导致的报文丢弃和重发。
SMART MEDIA是一个移动存储卡,主要用于存储文件,Mini Web卡支持8M到256M的SMD卡。
文件系统是Mini Web卡的新开发模块,文件系统的测试主要通过TFTP来进行,为此Mini Web卡上的TFTP服务程序进行了特殊设计,支持格式化SMART MEDIA,获取剩余空间,获取文件名列表,上传、下载和删除文件。
软硬件联合仿真的必要性:Mini Web卡软件模块多,软件开发风险较大。
软件对硬件的依赖较强,FLASH存储器的访问驱动、网卡驱动、DMA驱动,需要软硬件协同调试。
文件系统的开发,在仿真环境下更容易和快捷。
比如在仿真结束时,可以将SMART MEDIA仿真模型中的数据倒换到磁盘文件中,在仿真开始时,将磁盘文件中的数据加载到SMART MEDIA仿真模型中,在定位文件系统的问题时,这一个功能很有用。
采用软硬件联合仿真,便于系统前期设计。
51单片机的外部RAM访问效率较低,内存拷贝、外部器件之间的数据块转移很浪费时间。
将大量数据的拷贝操作或数据块校验、比较操作在CPLD内实现,可以大大改进51单片机处理数据的能力。
通过软硬件联合仿真,可以评估CPLD处理数据对性能的改进。
[!--empirenews.page--]Mini Web卡软硬件联合仿真系统:软硬件联合仿真主要解决的问题是系统功能设计与验证,它不解决电源、滤波电容、总线电平兼容问题。
做系统仿真,首先要对硬件系统建模。
我们关注的是系统设计的正确性和可执行性。
系统中的串口只是用来支持ISP下载软件,软件部分没有对串口做任何操作,所以系统仿真可以不必考虑。
网卡芯片AX88796,厂商没有提供仿真模型。
它与CPU的接口符合ISA接口标准,软件对AX88796的操作是根据NE2000标准网卡芯片设计的,由此我们建立了一个网卡芯片的仿真模型。
我们设计了一个MAC BFM来仿真网卡芯片的ISA接口,NE2000定义的寄存器在C模型中实现,MAC BFM 与NE2000寄存器C模型通过PLI接口交换数据。
SRAM仿真模型是很容易获取的,很多器件生产商都提供Verilog仿真模型,但器件生产商提供的Verilog仿真模型都包含复杂的延时控制代码,这会影响仿真速度。
根据经验,我们可以确保SRAM在单板设计中被正确应用,不会产生时序[1][2]下一页问题,所以我们可以采用一个简化的SRAM仿真模型,这是我们自己设计的,有效代码只有十几行。
51CPU BFM 负责单片机管脚时序的产生和捕获。
51CPU BFM是与ISS51紧密捆绑的,由ISS51安装程序提供。
SMART MEDIA是三星公司提供的仿真模型,我们使用的也是三星公司的同类型存储卡。
该模型可以用于验证软件操作SMART MEDIA的正确性和DMA Controller的接口时序。
DMA Controller是Mini Web卡硬件开发的一部分,将逻辑设计代码应用于仿真,既能检测逻辑设计的正确性,又能使整个仿真系统得以正常运转。
将上述硬件模型连接起来,产生下图所示硬件系统模型图:图2. Mini Web卡硬件模块电路图图2中U11为SMART MEDIA仿真模型,U4为DMA Controller模型。
虚拟网卡做系统仿真,必须输入来自真实世界的激励,并将仿真系统的输出传递到真实世界。
即便是不能连接到真实世界,也应该提供模拟真实世界的输入,并对仿真系统的输出进行检测和分析。
对于Mini Web卡来说,它和真实环境是通过网口连接的。
使用虚拟网卡技术,能够将图3中的MAC C Model与虚拟网卡进行通讯。
对于运行在Windows系统上的应用程序来说,它并不知道网卡是虚拟的还是真实的,应用程序通过虚拟网卡收发数据,事实上是与仿真系统在进行网络通信。
[!--empirenews.page--]这样就可以使用TFTP向Mini Web卡仿真系统传递网页文件,使用IE浏览Mini Web卡仿真系统中的网页,Mini Web卡的所有功能都能够被检验。
使用网络臭探器Sniffer可以监控虚拟网卡的报文流,方便协议调试。
仿真加速技术软硬件联合仿真,影响仿真速度的瓶颈在HDL代码部分的仿真。
如果不设法提高HDL代码部分的仿真速度,软件调试就非常低效。
提高硬件仿真速度的方法之一是软件硬件仿真采用事件同步,只在CPU访问IO时保持软件和硬件是同步的。
仿真加速方法之二是硬件仿真系统时钟休眠。
对于Mini Web卡来说,只有DMA Controller是受时钟控制的,软件没有操作DMA Controller的期间,DMA Controller的运作是毫无意义的,所以可以在非DMA操作期间,对时钟进行休眠;ISS51在每次IO访问时,给出与上次IO访问的时间差,这个时间差经过处理可以作为时钟休眠的时间段。
如果ISS51连续进行IO访问,就不会产生时钟休眠了。
DMAController工作于查询方式,可以采用时钟休眠技术,而不会导致仿真与真实结果的不一致。
方法之三是,缩短SMART MEDIA仿真模型中的一些长延时的时间参数。
因为在等待SMART MEDIA 进入就绪状态时,CPU必须连续查询IO,影响仿真速度。
我们主要用于软件功能验证,这种修改也是可以接受的。
方法之四,在软件设计上,谨慎使用外部中断,因为一旦中断启动,ISS51需要在每个机器周期查询是否有中断信号,导致软件仿真和硬件仿真在每个指令上都进行同步,影响仿真速度。
如果一定要使用外部中断,建议用C模型代替Verilog模型,这样可不影响仿真速度;或者由用户根据外部模块产生外部中断的时机,使用ISS51的控制命令,在恰当时刻使能ISS51的中断模块。
在一个普通PC (CPU为AMD速龙1000,SDRM512M 133),运行Mini Web卡仿真系统,使用PING命令测试Mini Web卡仿真系统的响应速度:Reply from 10.10.112.76: bytes=32 time=64ms TTL=128使用IE打开Mini Web卡仿真系统中的网页文件,感觉和拨号上网的速度差不太多。