不能取中文名称。
点击新建
选文件夹
写文件名,不要写中文
点击保存
此时就已经建立好工程。工程就是指桌面那个文件夹里的所有东西。
右侧这里圈起来的就是一些文件,一般情况下,在Files文件夹里放.c文件,在Headers文件夹里放.h文件,在Documents里放.txt说明文档。
回到桌面文件夹,随便找一个main.c文件放到文件夹里。
回到ICCV7 For AVR软件中,右键点击Files,再左键选择Add File。
选择文件。
main.c文件已经添加到工程中。
同样操作可以添加.h和.c,不在一一演示。
程序较小的话可以直接把程序都写在一个main.c文件中。
接第一节,打开ICCV7 For AVR软件后,点击打开
选择文件夹里的工程,点击打开即可。
即可得到:
点击工程里的Options。
这里的设置是为了告诉ICCV7 For AVR软件,我们使用的单片机型号和想要的设置。
这样我们写好main.c程序后,ICCV7 For AVR软件对程序进行编译,是按照我们的设置进行编译的。
想要正常仿真必须按键下图这样去设置。
可以在网上找一些资料,其中中文手册对于专业人士很重要。
双击文件就会显示文件:
iom16v.h是单片机寄存器的声明之类的。
macros.h是单片机Flash操作和UART操作声明的定义。
c#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执行一次 */
{
}
接上一节,写好程序后,需要点击编译按钮,让ICCV7 For AVR 软件把写的c语言程序编译成机器文件。
机器文件一般是.hex结尾的文件,可以用一些软件烧写下载到实际的单片机中运行,也可以添加到Proteus软件中进行仿真。
点击编译按钮:
程序没啥问题的话,在下面可以看到提示。
回到桌面那个文件,里面会有其他乱七八糟的编译时候产生的中间文件,但最终核心是有hex文件。这个文件是关键:
在安装Proteus软件后,点击仿真文件就能打开仿真文件。Proteus软件是高版本能打开低版本画的图,但低版本不能打开高版本画的图,所以Proteus软件安装的版本越高越好!!!!
最终:
点击OK即可完成设置。
点击左下角的运行仿真即可运行,点击左下角的停止仿真即可停止。
本文作者:Dong
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!