如何使用keil进行编译并且用proteus进行51单片机仿真实现0~F的数码管字符显示
文章目录
- 一.目的:
- 二.在keil中进行程序编译
- 三.在proteus上画出电路图
- 四.将keil中编译的hex文件在proteus电路图中进行仿真运行
一.目的:
使用keil进行编译并且用proteus画出电路图,实现一个简单的用51单片机来完成0~F的数码管字符显示
二.在keil中进行程序编译
1.打开keil应用,建立一个新工程,输入工程名并且保存至文件中
2.创建一个新的.c文件,输入需要的代码,保存至指定文件
代码如下:
//#include<reg52.h> //包含头文件void delay(void){unsigned char i,j;for(i=0;i<255;i++){for(j=0;j<255;j++);}} //主函数void main(void){unsigned char i;unsigned char code Tab[16]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E}; //定义数字0-f的断码表while(1){for(i=0;i<16;i++) //循环16次。数码管循环显示数字0-f{P0=Tab[ i]; //P0口输出数字0-F对应的断码delay( ); //延时}}}
3.对程序进行编译,看是否存在错误,其编译结果如下所示:
三.在proteus上画出电路图
1.新建一个工程,修改工程的名字,点下一步
(1)点新建工程
(2)点击下一步
(3)后面继续点下一步,然后得到一个布景图,便可以开始进行电路图的绘制:
2.进行元件的选择:
基本的proteus的使用,便是进行元件的选择,然后进行摆放、连线,现在介绍51单片机实现0~F的数码管字符显示所需要的元件:
(1)51单片机的选择
点击左侧的P键
在搜索框输入“89c51",选择相应的器件
(2)晶振的选择:
同样在P键中进行元器选择,在搜索框中输入”crystal”,找到相应的元件:
(3)电阻的选择:
在搜索框中输入“res",找到元件点击确定
(4)电容的选择:
在搜索框中输入“cap”,选择元件并确定
(5)数码管的选择
在搜索框中输入“7seg”,找到元件并进行确定
(6)终端的选择:
点击左侧按钮,电源和接地都在如图所示中选择
3.进行电路图的连接绘制
按照如图所示进行电路图的连接:
四.将keil中编译的hex文件在proteus电路图中进行仿真运行
1.右键点击Target 1,点击Options for 'Target 1’
2.点击output,勾选“Create HEX File",点击OK
可以看到文件中生成了hex文件
3.hex文件在proteus上运行
(1)双击89c51单片机,出现如下界面,点击Program File旁边的文件图标
(2)添加hex文件,点击确定
4.进行电路图的仿真
(1)点击三角形符号运行
(2)仿真结果如下:
如何使用keil进行编译并且用proteus进行51单片机仿真实现0~F的数码管字符显示相关推荐
- 基于proteus的51单片机仿真实例二、关于proteus
一.proteus的使用 proteus软件能对单片机系统同时进行软件和硬件仿真.是初学单片机而又没有硬件工具的一个很好的选择. 后面的学习将以protwus 7.4中文版为学习平台. 1.软件的下载 ...
- 基于proteus的51单片机仿真实例五十七、定时器/计数器T0的定时实例
1.本例使用定时器T0的定时中断来控制P1.0端口的LED闪烁,定时周期为100MS,LED点亮50MS,熄灭50ms. 2.实现方法:首先将定时器设置为定时方式,然后选择工作方式,在使用定时中断前要 ...
- 基于proteus的51单片机仿真实例七十六、8-3编码芯片74HC148应用实例
1.本例使用8-3编码芯片74HC148实现外部中断扩展,可以实现对8路外部中断信号按优先级进行处理 2.74HC148是带优先级的编码芯片,对于外部的8根数据输入线,只要有一根或者几根被置0,编码芯 ...
- 基于proteus的51单片机仿真实例七十二、并口转串口器件74HC165应用实例(续)
1.本例使用单片机的串口,使串口工作于移位寄存器模式,165的串行输出端口连接到单片机的串行数据输入端,单片机的串行数据发送端负责发送移位时钟脉冲,与165的CLK引脚相连.学要注意的是SH/LD引脚 ...
- proteus矩阵按键计算机,基于proteus的51单片机仿真实例八十二、4X4矩阵键盘应用实例...
1.矩阵键盘的工作原理: 1)接口电路:在单片机系统中,当按键数量较多时,为了减少IO口的使用,通常将按键排列成矩阵型式,例如本例中的16个按键,被排列成了如下图所示的4X4矩阵方式.即由4根行线和4 ...
- 51单片机蜂鸣器播放音乐C语言程序实例,基于proteus的51单片机仿真实例八十八、用蜂鸣器播放一段音乐应用实例...
1.前面我们已经学习了如何让单片机控制蜂鸣器发出不同的声音.现在我们更进一步,让单片机控制蜂鸣器发出再复杂一些的声音:模拟乐音输出 2.关于音乐的乐谱和节拍这些知识,我们将在下一节进一步说明 3.在k ...
- 基于proteus的51单片机仿真实例五、第一个proteus仿真实例(续)
接上一节,继续来学习一下PROTEUS的应用. 1.元器件的放置.移动.旋转删除 以at89c51为例来介绍元器件的放置和编辑操作. 1)放置 在对象选择器中选择"at89c51" ...
- c++程序设计_基于proteus的51单片机开发实例30-模块化程序设计
1. 基于proteus的51单片机开发实例30-模块化程序设计 1.1. 实验目的 模块化程序设计 不知不觉我们的51单片机开发实例已经进行到第三十篇了,是时候进行一个总结和反思了,总结什么?反思什 ...
- hc05与单片机连接图_基于proteus的51单片机开发实例(13)-LED指示那个按键被按下
1. 基于proteus的51单片机开发实例(13)-LED指示那个按键被按下 1.1. 实验目的 本实例将实现两路外部中断的检测和识别,让我们能够更好地理解51单片机的外部中断以及中断优先级的概念. ...
最新文章
- 从零开始学python数据分析-从零开始学Python数据分析与挖掘 PDF 扫描版
- Spring松耦合的实现
- 解决ubuntu Gvim 菜单乱码
- 【Linux】一步一步学Linux——Linux系统常用快捷键(12) 待更新...
- 双链表的基本操作---插入,删除,交,并,相邻元素的交换,不相邻元素的交换...
- AUTOSAR专业知识篇(六)-自动驾驶传感器的选择与布置
- windows安装java环境
- 02怎么取整php,php取整的几种方式
- mac nginx映射ip和端口_步骤四、nginx反向代理
- 移动端webview canvas bug
- igm焊接机器人基本操作_焊接机器人编程与操作
- 洛谷OJ P1802 5倍经验日 动态规划
- 用Windows自带的画图软件拼接(合成)多张图片
- 使用pandas对excel表格筛选
- Distractor-aware Siamese Networks for Visual Object Tracking 论文学习
- linux用mpi运行命令,linux mpirun命令
- Cannot find any credentials with id 283d811e-7a65-4977-b560-9c66555e19d6
- 生活用纸抗张强度预测Baseline
- 解决一切运行库问题 运行库合集安装包、DirectX修复工具、.net最新合集包
- 2019年全网最全的新手SEO教程
热门文章
- 不填写内容用哪个斜杠代替_【几月几日怎么写斜杠】作文写作问答 - 归教作文网...
- java中正则表达式校验日期,1999-01-01 ,1991\01\01,-分割和\分割两种形式
- 选择模型 _ 审查回归算法
- 系统时间不够精确?试试RTC(实时时钟)
- 自适应业务提供的NGN业务体系结构项目调研论文(Draft1)
- 力扣 python刷题
- super()的两个参数
- Windows Terminal 配置GIT
- python写手机应用宝下载_APK 批量爬取脚本(应用宝和360市场)
- 《流畅的python》这本确实老辣