ICCV7 For AVR 使用教程 Atmega16 单片机

发布者:悠闲自在最新更新时间:2022-01-26 来源: eefocus关键字:ICCV7  AVR  Atmega16  单片机 手机看文章 扫描二维码
随时随地手机看文章

1 如何用ICCV7 For AVR建立单片机程序工程

1.1 桌面新建英文文件夹

不能取中文名称。

在这里插入图片描述

1.2 打开ICCV7 For AVR

点击新建

在这里插入图片描述

选文件夹

写文件名,不要写中文

点击保存

在这里插入图片描述

此时就已经建立好工程。工程就是指桌面那个文件夹里的所有东西。

右侧这里圈起来的就是一些文件,一般情况下,在Files文件夹里放.c文件,在Headers文件夹里放.h文件,在Documents里放.txt说明文档。

在这里插入图片描述

1.3 添加main.c文件

回到桌面文件夹,随便找一个main.c文件放到文件夹里。

在这里插入图片描述

回到ICCV7 For AVR软件中,右键点击Files,再左键选择Add File。

在这里插入图片描述

选择文件。

在这里插入图片描述

main.c文件已经添加到工程中。

在这里插入图片描述

同样操作可以添加.h和.c,不在一一演示。

程序较小的话可以直接把程序都写在一个main.c文件中。


2 如何用ICCV7 For AVR打开别人的单片机程序工程

接第一节,打开ICCV7 For AVR软件后,点击打开

在这里插入图片描述

选择文件夹里的工程,点击打开即可。

在这里插入图片描述

即可得到:

在这里插入图片描述

3 如何设置ICCV7 For AVR工程

点击工程里的Options。

在这里插入图片描述

这里的设置是为了告诉ICCV7 For AVR软件,我们使用的单片机型号和想要的设置。

这样我们写好main.c程序后,ICCV7 For AVR软件对程序进行编译,是按照我们的设置进行编译的。

想要正常仿真必须按键下图这样去设置。

在这里插入图片描述

3 如何编写main.c程序

可以在网上找一些资料,其中中文手册对于专业人士很重要。

在这里插入图片描述

双击文件就会显示文件:

在这里插入图片描述
在这里插入图片描述

iom16v.h是单片机寄存器的声明之类的。

macros.h是单片机Flash操作和UART操作声明的定义。


#include

#include

#include

#include

#include


/*延时子程序*/

void delay_nms( int time )

{

int i;

for (; time > 0; time-- )

for ( i = 0; i < 1000; i++ )

;

}


void main( void )

{


DDRB = 0x0F;  /* 高四个引脚输入  低四个引脚输出 */

PORTB = 0xFF;  /* 全部输出高电平 */



SREG = 0x80;                 /* 使能全局中断 */

TIMSK |= (1 << TOIE0);        /* 使能T0溢出中断 */

TCCR0 = 0x03;                 /* 配置定时器工作普通模式 */

TCNT0 = 0;                    /* 给定时器赋初值 */


while ( 1 )

{


delay_nms( 5 );

}

}


#pragma interrupt_handler timer0_ovf:10

void timer0_ovf( void ) /* 33ms执行一次 */

{

}


4 如何仿真

接上一节,写好程序后,需要点击编译按钮,让ICCV7 For AVR 软件把写的c语言程序编译成机器文件。

机器文件一般是.hex结尾的文件,可以用一些软件烧写下载到实际的单片机中运行,也可以添加到Proteus软件中进行仿真。


点击编译按钮:

在这里插入图片描述

程序没啥问题的话,在下面可以看到提示。

在这里插入图片描述

回到桌面那个文件,里面会有其他乱七八糟的编译时候产生的中间文件,但最终核心是有hex文件。这个文件是关键:

在这里插入图片描述

在安装Proteus软件后,点击仿真文件就能打开仿真文件。Proteus软件是高版本能打开低版本画的图,但低版本不能打开高版本画的图,所以Proteus软件安装的版本越高越好!!!!

在这里插入图片描述
在这里插入图片描述

最终:

在这里插入图片描述

点击OK即可完成设置。

点击左下角的运行仿真即可运行,点击左下角的停止仿真即可停止。

在这里插入图片描述

关键字:ICCV7  AVR  Atmega16  单片机 引用地址:ICCV7 For AVR 使用教程 Atmega16 单片机

上一篇:基于ATMEGA8A单片机+MAX6675的K型热电偶程序Proteus测试
下一篇:ATmega8 定时器 中断 外部中断 程序

推荐阅读最新更新时间:2024-11-23 22:12

单片机C8051F020及其在露点测试系统中的应用
简介:通过单片机应用于露点测试系统中存在的缺陷,引入了美国Cygnal公司新近在国内推出的C8051F020单片机,并对该单片机的功能和特点进行了应用性探讨,提出了在露点测试系统中采用C8051F020单片机的可行性方案,通过比较显示:该方案具有更高的性价比。 1应用背景 目前在食品加工、饲料、家用电器等行业中广泛应用的露点测试系统要求具有高精度、高可靠性及高稳定性等特点,而且整个测试过程中需要动态连续或者间歇性动态连续进行。测试系统的控制核心部分一般采用单片机系统,其硬件电路示意图如图1所示。这种单片机系统虽然基本能满足生产需要,但是,由于系统扩展芯片多、线路复杂,也都不同程度地暴露出资源再扩受限、易出故障、编程麻烦、升级维
[单片机]
<font color='red'>单片机</font>C8051F020及其在露点测试系统中的应用
51单片机IO口模拟串口通讯4
硬件环境:STC89C52 软件环境:IDE Keil uVision V4.10 编译器 C51 V9.0 代码如下: /********************************************** 硬件:11.0592MHz晶振,STC89C52,RXD P1.0 TXD P1.1 波特率:9600 描述:这是网上《51单片机模拟串口的三种方法》中附的程序 占用定时器0 时间:2012.07.25 于单位 **********************************************/ #include reg52.h sbit BT_SND =P1^1; sbit B
[单片机]
51单片机项目设计:基于超声波的车库停车系统、车位检测
一、设计要求: 毕业设计原题: 本设计主要用于室内停车场中,利用51单片机或者嵌入式系统,结合超声波传感器,检测车位是否有车辆停入,并将车位占用情况,以LED模块形式进行实时显示,还可以将剩余车位数显示出来。 利用超声波传感器,检测车位占用情况,并计算该区域剩余车位。我们假设一个区域内有4个车位,用超声波检测,发现占用车位相应位置的数码灯点亮,同时显示: 剩余“2”个车位。 每个车位上,相距一定距离,安装一个超声波传感器,可以防止误判。剩余车位也就是在LED的旁边,辅助给出这个区域剩余的车位数,而不是整个停车场中总的剩余车位数。 led是显示模块这个系统做的是停车场面对面各2个车位每个车位上安装一个传感器超声波测距
[单片机]
51<font color='red'>单片机</font>项目设计:基于超声波的车库停车系统、车位检测
基于MC9S12XS128的单片机开发板的设计
摘要:针对“飞思卡尔”杯全国大学生智能车邀请赛,设计了基于MC9S12XS128(飞思卡尔专用芯片)的单片机开发系统,在此给出主要硬件电路和软件设计流程。为验证该系统可靠性,设计了4×4矩阵键盘键号的识别与数码管显示电路。实际应用结果表明,此开发板的应用大大提高了智能车开发效率。同时可为大学本科学生学习嵌入式开发系统以及为汽车电子行业工程师提供良好的开发平台,具有较高的实用性和推广价值。 关键词:飞思卡尔;MC9S12XS128;CAN总线;矩阵键盘 0 引言 “飞思卡尔”杯全国大学生智能车竞赛是以迅速发展的汽车电子为背景,涵盖控制、模式识别、传感技术、电子、电气、计算机、机械等多个交叉学科的科技创意性比赛,该项目由大赛组
[工业控制]
基于MC9S12XS128的<font color='red'>单片机</font>开发板的设计
GPS OEM板+单片机+液晶显示
我所做的是GPS+单片机+液晶显示,板上晶振是11.5902Mhz,硬件连接是用Garmin25的NEMA端口经RS232转为TTL电平给89C51的10脚(RXD) 我有个问题,就是现在执行程序后不能进入串行口中断, 附程序如下: /*************************************中断程序*****************************/ //定时器0中断函数,用于控制背光灯延时10s熄灭 void int_t0() interrupt 1 using 1 { TH0 = 0x4C; TL0 = 0x00; //重装定时器0,定时50ms time_counter ++; //
[单片机]
单片机知识(二)
单片机的内外部结构分析 一、延时程序分析 上一次课中,我们已经知道,程序中的符号R7、R6是代表了一个个的RAM单元,是用来放一些数据的,下面我们再来看一下其它符号的含义。 DELAY: MOV R7,#250   ;(6) D1: MOV R6,#250   ;(7) D2: DJNZ R6,D2    ;(8) DJNZ R7,D1   ;(9) RET        ;(10) 1.MOV:这是一条指令,意思是传递数据。说到传递,我们都很清楚,传东西要从一个人的手上传到另一个人的手上,也就是说要有一个接受者,一个传递者和一样东西。从指令MOV R7,#250中来分析,R7是一个接受者,250是被传递的数,传
[单片机]
89C52单片机之按键控制
这是一个用按键调节七段显示屏显示数字的值的程序,其中一个按键按下加1,另外一个按下减1 程序: #include reg52.h #include INTRINS.H sbit P2_2=P2^2 ; sbit P2_3=P2^3 ; sbit P3_3=P3^3; sbit P3_4=P3^4; unsigned char num=18,shi,fen; unsigned char table ={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90}; void delay(unsigned char dly) { unsigned ch
[单片机]
德州仪器推出新款实时微控制器系统 可在汽车与工业应用中实现更智能的处理流程
据外媒报道,当地时间11月11日,德州仪器(Texas Instruments,TI)宣布推出两款全新的实时微控制器系列——TMS320F28P55x系列和F29H85x系列,旨在帮助工程师在汽车和工业应用中,实现更智能、更安全的处理流程。TI的TMS320F28P55x系列MCU是业内首款集成了神经处理单元(NPU)的实时微控制器,可实现高精度、低延迟的故检测功能。F29H85x系列则基于TI的新型64位C29数字信号处理内核打造,具有集成了功能安全和网络安全性能的先进架构。 德州仪器推出新款实时微控制器系统(图片来源:德州仪器) 通过边缘AI赋能的MCU实现更智能、更高效的系统 如今,工程师们面临的挑战是设计出
[汽车电子]
德州仪器推出新款实时<font color='red'>微控制器</font>系统 可在汽车与工业应用中实现更智能的处理流程

推荐帖子

SD卡的文件不能复制(6410+wince6平台)
SD卡的文件不能复制(6410+wince6平台)先前我在SD卡放了一个短片,为了测试播放效果,于是我直接双击之后提示无法读取文件路径。我想将此文件复制到设备中去,也不行!难道是读保护???因为我试验了,能够将文件复制进去!SD卡的文件不能复制(6410+wince6平台)试试把读写保护判断去掉。编译的时候我已经将读写保护去掉了的啊,编译的时候还有读写保护?这个是怎么回事?是啊,我觉得也很奇怪啊,我去掉了写保护这个功能的。也就是说没有写保护这个判断了,所以现在的情况是,SD能
407406136 WindowsCE
软件开发者路线图:从学徒到高手
作为一名软件开发者,你在奋力推进自己的职业生涯吗?面对今天日新月异和不断拓展的技术,取得成功需要的不仅仅是技术专长。为了增强专业性,你还需要一些软技能以及高效的学习技能。本书的全部内容都是关于如何修炼这些技能的。两位作者DaveHoover和AdewaleOshineye给出了数十种行为模式,来帮你提高主要的技能。本书中的模式凝结了多年的调查研究、无数次的访谈以及来自OReilly在线论坛的反馈,可以解决程序员、管理员和设计者每天都会面对的困难情形。本书介绍的不只是经济方面的成功
arui1999 下载中心专版
【upython】实现协程,Thread之外的选择
最近,micropythonV1.8.2实现了Thread,这迎合了大多数应用开发者的需求。其实其他嵌入式如PyMite,Zerynth在很早实现了Thread类。但是,CPython因为GIL的原因,没有严格意义的多线程。而CPython的进程和线程都是基于操作系统构建的,所以一开始micropython没有实现Thread类。也可以理解。但是micropython实现了yield,生成器,其特点是支持闭包,保持局部变量。所以可以尝试一下协程(co-routine)的写法。以生产P、消费C
allankliu MicroPython开源版块
activesync怎样手工给它添加驱动?
如题,我安装好wince5之前就按好了activesync,结果它立马就连接了,我当时还不知道怎么操作,就稀里糊涂的也没有连上,现在我再次插上开发板(mini2440)的时候,它就没有提示我要安装驱动程序了,我现在手工给它更改驱动程序的时候老是不行。因为,现在的驱动可能安装的不对,导致我的板子和PC连不上,因为正确安装驱动后是这样的,会提示:AnchorUSBEZ-LinkCable已经完成了安装。现在是我在我的计算机管理器里的通用串行总线一栏里找到了GenericU
topcool99 嵌入式系统
求个工业级RS232转RS422
有做过的吗,能给点建议吗?我在网上找了一个图,不知道能不能行。求个工业级RS232转RS422
Makefile 模拟电子
14年前的漫步者音响拆解
前段时间拆解了自己买的索爱音响:索爱音响拆解,这下打脸了!评论区有老铁建议买漫步者音响,今天它来了。这就是今天要写的主角。侧面是电源线和音频输入线,还有一个孔是用来连接2个高音辅助音响的。型号是漫步者R101V,从这两张贴纸来看,和全新的一样,我恍惚以为是近两年的产品。重低音喇叭安装在音响底部。看到底部的合格证贴纸上的年份,竟然是2010年7月31日检验通过的产品。距离现在已经14年了。插上辅助音响,感
okhxyyo 电源技术
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved