ICCV7 For 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 <iom16v.h>
#include <macros.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

/*延时子程序*/
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即可完成设置。
点击左下角的运行仿真即可运行,点击左下角的停止仿真即可停止。
在这里插入图片描述

Guess you like

Origin blog.csdn.net/x1131230123/article/details/120682660