第3课 HJ-2G AVR单片机学习笔记 程序编写编译环境
- 格式:pdf
- 大小:426.12 KB
- 文档页数:5
AVR单片机开发板使用说明书(V3.0版)HJ-22G单片机开发板简介第1章HJ-1.1前言尊敬的用户:您好!欢迎使用HJ-2G开发板!恭喜您成为慧净电子产品的用户!我们非常高兴您选择了本款产品。
我们将为你提供最真诚最优质的服务,让您在以后的日子里尽情发挥你的创意!为了让您更好的使用本款产品,并将它的功能发挥到极限,我们特意为您提供此产品的学习笔记,使用产品前请您详细阅读,重头学起。
该操作说明。
希望您通过此学习笔记能够将您手中的产品性能发挥到最优。
谢谢!慧净电子1.2免责声明1.2.1为了安全有效的使用该产品,请您使用前仔细阅读以下信息。
1.2.2本产品可以通过USB供电,供电电流<500mA,自行外接电源时请注意电源极性和电压参数。
电源适配器必须使用原装产品。
1.2.3请不要在带电时拔插芯片以及相关器件。
1.2.4自行扩展搭接导致不良故障,慧净电子不负任何责任。
1.2.5产品不定时升级,所有更改不另行通知客户,本单片机研究工人室有最终解释权。
1.3学习板使用的基本流程1.3.1学会使用HJ-ISP基础下载工具1.3.2学会使用ICC编程软件1.3.3认识板上各种器件并了解其基本作用1.3.4看懂HJ-2G电路图1.3.5了解数字电路基础1.3.6学习c语言1.3.7了解单片机结构1.3.8读程序并自己更改功能学习变通应用1.1.44产品概述本套开发板为慧净电子工程师综合市场上现有的多种AVR开发板的功能之优点,结合工程师们多年项目经验之需求,特别为AVR单片机爱好者们研制的具有强大功能的A VR单片机学习开发板。
该开发板集常用的单片机外围资源、集成多功能烧写器。
配合慧净电子出品的配套视频教程(在录制当中)及提供的资料和例程,可以让您在最短的时间内,全面的掌握AVR单片机编程技术。
板子的供电使用一根USB线与电脑连接,使用方便,性能稳定。
最大的特点是配套有慧净老师亲自讲解的视频教程,让学习者轻松上手。
AVR单片机相关软件安装及编译烧写流程AVR单片机相关软件安装本次项目开发使用AVR的AT90CAN128单片机,使用JTAGICE仿真器,需要安装的软件及驱动有AVRStudio、iccavr、USB 转串口驱动以及仿真器驱动。
一、AVRStudio软件安装1.双击开始准备安装2.单击“Next”,选择同意License3.选择安装路径4.选择USB驱动5.确定开始安装6.安装中7.安装完成二、iccavr软件安装1.双击,接着双击,开始装备安装2.单击下一步3.选择安装路径4.点击安装5.安装完成三、USB转串口驱动1.双击,点击INSTALL,等待安装完成即可四、仿真器驱动安装(XP版)1.双击点击SETUP.EXE安装2.安装完成,重新启动计算机AVR单片机编译烧写流程本文以在AT90CAN128芯片上编写的工程can128_sw_defn为例,简单介绍AVR单片机的编译和烧写流程:一、AVR单片机编译流程1.打开ICCAVR软件,下拉菜单栏上Project,点击open,弹出对话框如下:选择can128_sw_defn.prj打开,点击右侧栏中的can128_sw_defn.C文件,修改代码。
2.点击Project->options,或者点按钮,弹出对话框如下:在Target下面的DeviceConfiguration中选择芯片为AT90CAN128,如图所示,点击OK。
3.点击BuildProject,调试栏出现下图即为编译成功,若有错误请根据错误指示进行相应代码修改即可。
二、AVR单片机烧写流程1.将JTAGICE与目标板以及PC机相连。
2.打开AVRStudio,将会提示一个welcome对话框,如下图所示:点“Cancel”即可,然后点击avrstudio主窗口中的图标前面标有Con的那个图标,然后按下图选择点“Connect”即可进行JTAG的联机(由于avrstudio会记忆用户使用的设备是并且同时会记忆用户使用的COM 号,如果下次和上次使用的是相同的设备并且没有更换COM口,那么下次使用的时候直接点击右边标有AVR的那个图标就可以快速进入联机状态;如果下次和上次使用了不同的设备或不同的COM口请使用Con图标进行联机)。
AVR学习笔记前言:学习一块单片机,我们要几项准备工作:1.开发软件(熟悉开发软件操作流程,基本上开发软件都差不多的,学会了一款,再学其它的就会很顺手了(新建工程、新建设计文件、把源文件加到工程里面、最后设置一些参数)2.编程语言(这个就不用说了,先学语法规则,能够熟练掌握到自己写的代码没有语法错误,然后再逐步把自己的想法驾驭到编程语言上)3.硬件(硬件包括的范围很广,不仅包括你所要学的单片机还有单片机的外围电路所用到的器件),最好要学一款仿真软件。
我们始终要记住学单片机绝对不可以纸上谈兵,一定要实践,就是把自己所写的代码下载到板上,看看实际效果。
开发板可以买,也可以自己做!我喜欢自己做。
实验一:点亮发光二极管1.avr单片机的i/o端口1)学习单片机的主要任务就是了解、掌握单片机i/o端口的功能,以及如何正确设计这些端口与外围电路的连接,从而能够组成一个嵌入式系统,并编程、管理和运用他们完成各种各样的任务。
2)atmega16有4个8位的双向i/o端口pa、pb、pc、pd,他们对外对应32个i/o引脚,每一位都可以独立地用于逻辑信号的输入和输出。
在5v工作电压下,输出高点平时,每个引脚可输出达20ma的驱动电流;而输出低电平时,每个引脚可吸收最大为40ma的电流,可以直接驱动发光二极管(一般的发光二极管的驱动电流为10ma)和小型继电器等小功率器件。
avr大部分的i/o端口都具备双重功能(有的还有第三功能)。
其中第一功能是作为数字通用i/o接口使用,而复用的功能可分别与片内的各种不同功能的外围接口电路组合成一些可以完成特殊功能的i/o口,如定时器、计数器、串行接口、模拟比较器、捕捉器、usart、spi等。
3)avr单片机的每组i/o口都搭载存有三个8为寄存器,分别就是:方向掌控寄存器ddrx、数据寄存器portx、输出插槽寄存器pinx(x=a/b/c/d).i/o口的工作方式和整体表现特征由这三个i/o寄存器掌控。
一、AVR单片机位操作
(1)置位。
要将R的第3位置1,其他位不变,可以这样做:R |= (1<<3),其中“1<<3”
的结果是“0b00001000”,R |= (1<<3)也就是R=R|0b00001000,任何数和0相或不变,任何数和1相或为1,这样达到对R的第3位置1,但不影响其他位的目的。
(2)清位。
要将R的第2位清0,其他位不变,可以这样做:R &= -(1<<2),其中“-(1<<2)”
的结果是“0b11111011”,R&=-(1<<2)也就是R=R&0b11111011,任何数和1相与不变,任何数和0相与为0,这样达到对R的第2位清0,但不影响其他位的目的。
(3)获得某一位的状态。
(R>>4) & 1,是获得R第4位的状态,“R>>4”是将R右移4位,将R的第4位移至第0位,即最后1位,再和1相与,也就是和0b00000001相与,保留R最后1位的值,以此得到第4位的状态值。
二、AVR单片机中断向量表
三、AVR单片机引脚图。
AVR单片机入门教程首先,我们需要了解AVR单片机的基本原理。
AVR单片机是一种基于RISC结构的微控制器,具有高性能、低功耗和易于编程的特点。
它由CPU、存储器、定时器、IO端口等组件构成,通过编程实现对外设的控制。
接下来,我们需要学习AVR单片机的编程语言。
AVR单片机通常使用C语言进行编程,因为C语言具有简单易学、灵活性强、可移植性好等优点。
对于初学者来说,可以利用AVR开发板上的编程环境进行学习和实践。
在开始编程之前,我们还需要了解AVR单片机的开发工具。
AVR单片机的开发工具主要包括编译器、调试器和烧录器。
常用的AVR单片机开发工具包括Atmel Studio、AVR Studio等。
这些工具可以帮助我们编写、调试和烧录代码,提高开发效率。
当我们熟悉了AVR单片机的基本原理、编程语言和开发工具后,我们可以开始进行实践了。
下面是一个简单的AVR单片机入门实例:首先,我们需要准备一个AVR开发板、一个LED灯和一根跳线。
将LED灯连接到AVR开发板的一个IO口,然后将开发板连接到电脑上。
接下来,我们打开AVR开发工具,在编程环境中创建一个新的工程。
选择AVR单片机型号,并设置IO口为输出模式。
然后,编写C语言代码,实现控制LED灯闪烁的功能。
代码可以使用以下方式实现:```c#include <avr/io.h>#include <util/delay.h>int main(void)DDRB,=(1<<PB0);//设置PB0为输出模式while (1)PORTB^=(1<<PB0);//翻转PB0电平_delay_ms(500); // 延时0.5秒}return 0;```最后,编译并烧录代码到AVR单片机上。
然后,我们就可以看到LED灯在0.5秒的间隔内闪烁。
通过这个简单的实例,我们可以了解AVR单片机的基本编程方法和应用场景。
在进一步学习和实践中,我们可以深入了解AVR单片机的更多特性和应用。
A VR单片机编译及下载环境简介A VR单片机的编译环境为ICCA VR,使用的语言为C/C++,系统基本兼容C/C++的语法,但有个别例外,如不允许中途声明变量,通过编译错误提示一般可以查出。
启动界面如图。
具体用法可参考视频教程“10天学会A VR和C语言”(有点夸张,但大致如此,前提是掌握了基本的C或C++编程)。
编译成功后会出现和下图类似的提示。
同时在objs文件夹(当建立一个工程项目后,系统会在相同的目录下产生两个文件夹BACKUP和objs.)中生成与工程同名的hex文件。
注意:程序文件必须和工程文件在同一个根目录下,在工程中添加该程序文件后才能正确编译,否则会出现如下图类似的出错提示!到此程序的编译完成。
下一步是把编译好的程序装入单片机的flash存储器中。
把编译好的程序装入单片机的flash存储器中用的是A VR_FIGHTER软件。
例如在D:\USB_ASP-上位机软件\A VR_FIGHTER软件中存放程序烧录软件(用来把hex文件装入单片机,非安装程序),双击可执行文件,出现下面的运行界面。
在“芯片选择”中选择对应的单片机型号,其他选项保持默认设置即可。
在主菜单中选择“装FLASH”,出现“打开-查找范围”对话框,在objs文件夹(当建立一个工程项目后,系统会在相同的目录下产生两个文件夹BACKUP 和objs.)中选择对应的工程编译后生成的机器代码程序(文件后缀为hex)打开。
若单片机已经通过USB下载线与电脑正确连接,选择“编程”,否则会出现“没有发现所需的USB设备”的信息提示。
“编程”完成后程序即已装入单片机的flash存储器。
附:视频教程目录(网上应该可以找到,不知道名称是否确切)简要说明:1..教程中程序下载使用的软件与此处不同,下载线用的是串口线,注意区分。
2.中断、定时器的原理和应用(比较复杂)部分对于学习16为定时器中断很有帮助。
3. A VR STUDIO对于初学者可暂时不用。
简易AVR单片机教程简介AVR单片机是一种低功耗、高性能的微控制器,由Atmel公司开发并广泛应用于嵌入式系统的开发中。
本教程将介绍AVR单片机的基本知识以及编程技巧,帮助初学者快速入门。
目录1.AVR单片机概述2.硬件基础– 2.1 芯片选型– 2.2 电路设计– 2.3 连接方式3.编程环境搭建– 3.1 AVR Studio– 3.2 AVR编程语言– 3.3 编译与烧录4.基本功知识– 4.1 GPIO控制– 4.2 定时器与计数器– 4.3 中断处理5.进阶内容– 5.1 PWM控制– 5.2 串口通信– 5.3 ADC模数转换6.实例项目– 6.1 LED灯控制– 6.2 电机控制– 6.3 温湿度监测1. AVR单片机概述AVR(Alf-Egil Bogen, Vegard Wollan, Ragnar Melland)单片机是Atmel公司推出的一款低功耗高性能的微控制器。
它采用RISC架构,具有较高的运算速度和较低的功耗。
由于其易于学习和使用的特点,AVR单片机被广泛应用于嵌入式系统的开发中。
2. 硬件基础2.1 芯片选型在开始使用AVR单片机之前,我们首先需要选择合适的芯片。
Atmel公司生产了多种型号的AVR单片机,各具特色。
在选择芯片时,我们需要考虑以下几个因素:•项目需求:根据项目的具体需求(如GPIO数量、模拟输入输出等),选择适合的芯片型号。
•价格:芯片的价格也是选择的一个重要因素,需要根据项目的预算进行合理选择。
•开发工具支持:确保选择的芯片在目标开发工具中有良好的支持,以便后期开发和调试。
2.2 电路设计在使用AVR单片机之前,我们还需要进行电路设计。
简单的AVR 单片机电路设计包含以下几个关键组成部分:•电源电路:AVR单片机需要稳定的电源来正常工作。
一般使用电源滤波电容、稳压电路等来提供稳定的电压。
•复位电路:AVR单片机上电时需要复位,复位电路可通过连接一个复位电阻和电容实现。
第3课ICC程序编写编译环境
基于HJ-2G AVR学习板
学习AVR单片机必需要安装的第二个软件:程序编写编译环境ICC AVR
1、下面说一说安装方法,在配套资料(网上下载)找到ICC AVR直接点击按装,装好后输入正版注册码,这样就可以正常使用ICCAVR软件编写编译。
2、在桌面上打开ICCAVR软件,出现如下图片:请点开工程,并新建一个工程。
3、下图为新建一个工程,请保存在C盘目录下,输入工程名称(只能是中文),点击保存。
4、新建立一个C文件,在下图空白处输入你的C源码,输完后请保存C文件。
5、加入刚才建好的C文件到工程当中,方法如下图。
6、设置一下编译器,如下图。
7、芯片用ATmega16
8、最后一步了,只要你按上面的一步一步做,最后点一下编译键,就可以正常编译成功,如果不成功,请查一查你的C源码是否正确,还有工程是不是在中文目录下。
9、总结:本课主要学习了程序编写编译环境ICC AVR的安装,设置,还有编译方法,开始学单片机时,新手不会写C源码,可以复制慧净写好的C源码到项目中,练习多次,ICCAVR 软件你就会使用了,以后学习中,每一课都会用到本软件,只要你认真跟着《慧净1天入门AVR单片机学习笔记》学习,多多练习,相信你很快速学会AVR单片机。
慧净AVR单片机免费共享学习笔记目录(配有视频教程,请在慧净空间下载)
第一部1天入门AVR单片机学习笔记
第1课:AVR单片机学习基本流程
第2课:AVR单片机程序烧写方法
第3课:程序编写编译环境
第4课:简单C语言基础知识
第二部10天学会AVR单片机学习笔记
第1课:IO端口操作
第2课:流水灯
第3课:单个数码管显示
第4课:多个数码管同时显示
第5课:独立按键
第6课:定时器
第7课:外部中断
第8课:矩阵键盘
第9课:继电器控制
第10课:LED点阵
第三部AVR单片机进阶学习笔记
第1课:LCD1602液晶
第2课:喇叭音乐播放
第3课:IIC24c02
第4课:无线发送接收红外解码
第5课:PWM调光调速
第6课:AD模数转换
第7课:DA数模转换
第8课:数字时钟DS1302
第9课:串口通讯原理
第四部AVR单片机扩展学习笔记
第1课:18b20温度传感器
第2课:PS2键盘协议
第3课:4相步进电机
第4课:5110液晶
第5课:12864液晶
第6课:TFT彩屏液晶
第7课:DS卡应用
第8课:16X32点阵
第9课:HJ-JTAG仿真器应用
第10课:用HJ-2G做51单片机实验
HJ-2G AVR学习笔记全部33课(配有视频教程),想学AVR单片机的朋友,只要你花一点时间跟着上面的学习笔记一步一步来学习,相信你很快速学会AVR单片机,还有C语言知识。
学习笔记配套实验源码(配有视频教程)请到下面的网址下载
注:直接点击下面的网址可以进入空间,可以在空间内找到相关资料下载。
慧净电子论坛:
慧净电子空间:/hjmcu
慧兰科技空间:/hlmcu。