xmega128学习笔记.docx

上传人:b****6 文档编号:3639776 上传时间:2022-11-24 格式:DOCX 页数:23 大小:744.18KB
下载 相关 举报
xmega128学习笔记.docx_第1页
第1页 / 共23页
xmega128学习笔记.docx_第2页
第2页 / 共23页
xmega128学习笔记.docx_第3页
第3页 / 共23页
xmega128学习笔记.docx_第4页
第4页 / 共23页
xmega128学习笔记.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

xmega128学习笔记.docx

《xmega128学习笔记.docx》由会员分享,可在线阅读,更多相关《xmega128学习笔记.docx(23页珍藏版)》请在冰豆网上搜索。

xmega128学习笔记.docx

xmega128学习笔记

XMEGA128学习笔记1-bootloader下载程序

首先需要感谢AVR和与非网举办这次AVR大赛,其次要感谢在学习板申请当中阿呆给予我们小组的帮助,最后要感谢我们的指导老师。

我们小组将在论坛版块连载《XMEGA128学习笔记》系列,分享学习心得与大家共同探讨,也欢迎大家分享自己学习的心得,共同进步。

今天主要是叙述如何使用XMEGA的BOOTLODER功能下载程序。

首先请大家将附近的内容下载,由于论文附件大小的限制,FlipInstaller-3.4.3这个软件分成三个压缩包,需要大家一起解压,解压后进行安装,安装过程大家点击下一步就可以了。

第二个附件是“AVR1927_XMEGA-A1_Xplained_Example_Applications.zip”,这个压缩包是板子的程序和驱动。

大家解压后将“ATxmega128A1.xml”文件拷贝到“X:

\ProgramFiles\Atmel\Flip3.4.3\bin\PartDescriptionFiles”,其中X表示您安装FLIP软件所在的盘符,如图所示:

第三步:

将XMEGA开发板用USB连接线插入到电脑中,这时候电脑会提示发现新硬件,有驱动需要安装,如图2所示,选择“从列表或指定位置安装(高级)”

位置选择“AVR1927_XMEGA-A1_Xplained_Example_Applications\Driver”

安装后效果如图4,电脑多个一个虚拟串口,我的电脑显示的是COM8。

第三步:

拔掉USB,如何安装板上的SW0按键不放,在插上USB,使得XMEGA进入BOOTLOADER状态。

第四步:

打开第一步安装的FLIP软件,首先选择器件和串口的端口,成功后效果如图:

这时就可以打开一个HEX文件进行下载,附件中有一个是流水灯的HEX文件,大家下载进去后再复位,看看是不是板上的流水灯在闪烁。

更多参考内容请看

《AtmelAVR1927XMEGA-A1XplainedGettingStartedGuide.pdf》

《FLIP软件帮助》

今天的内容就到这里,谢谢大家的关注。

 

XMEGA128学习笔记2-CVAVR编译环境

XMEGA128常用的有GCC和IARforAVR两种编译环境,其中GCC是ATMEL公司开发的AVRStudio5.0,免费软件,而且内置了开发板的例程。

IARforAVR是一款商业软件。

今天我们向大家介绍一款支持XMEGA的编译环境CVAVR,它能够通过设置参数自动生成代码,无需查阅相关寄存器。

而且内置支持单总线,LCD等常用器件,下图是效果图:

 

 

XMEGA128学习笔记3-流水灯

GPIO的特点有

1、可以独立配置引脚输入或者输出

2、输出速率控制

3、多种输出模式

4、时钟输出等等

今天我们就做最简单的流水灯操作,和MEGA系列单片机一样,寄存器有:

1、方向寄存器DIR,设置为1表示输出模式,设置为0表示输入模式

2、数据输出寄存器OUT,设置1表示输出高电平,设置0表示输出低电平。

我们从原理图看到板上的8个流水灯在PORTE引脚上,代码如下:

#include

#include

voidmain(void)

{

unsignedchari;

PORTE.OUT=0xFF;//初始LED灭

PORTE.DIR=0XFF;//输出模式

while

(1)

{

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

{

delay_ms(1000);

PORTE.OUT=~(1<

}

}

}

当然你也可以使用CVAVR代码生成功能,快出尝试GPIO的更多功能吧,也欢迎您分享您的心得。

XMEGA128学习笔记4-中断

GPIO能够设置为中断输入模式,可以配置为“上升沿”/下降沿/双边沿和低电平触发。

今天我们就带大家设置SW0按键为下降沿,实现翻转LED0的功能。

第一步:

打开CVAVR软件,新建一个工程,选择代码生成功能,如图所示:

第二步:

使能低级中断功能

第三步:

设置SW0按键状态

第四步:

设置LED0状态

第五步:

点击生成代码

第六步:

加入以下代码

编译后下载,大家看看是不是很简单就实现了这个功能啊。

XMEGA128学习笔记5-串口USART

Xmega128的串口非常强大,最多能支持8个串口。

串口又有四种模式:

1、异步

2、同步

3、IRDA红外模式

4、SPI主模式

今天我们就使用CVAVR代码向导生成简单串口测试程序,实现每1s打印“HELLOWORLD”字符串,同时能将接收到数据回显到串口调试助手上。

第一步:

打开中断,因为我们需要实现串口回显的功能。

第二步:

从开发板的原理图可以看到串口是在PC2和PC3脚,所以需要设置GPIO,经过CVAVR的提示PC3初始输出电平为1能够更加稳定:

第三步设置串口:

使能接收和发送功能,并开启接收中断。

第四步:

最后生成代码,加入以下代码:

 

最后编译下载,复位后可以看到效果图:

 

XMEGA128学习笔记6-实时时钟RTC

Xmega128的RTC实际上就是16位定时器,它的框图如图所示。

时钟来源有两种:

1是32KHZ,2是1KHZ。

能够通过10位预分频,进一步得到低速频率。

图中Period表示周期,也就是最多计数值。

Compare是比较值,匹配时能够触发中断。

今天我就用RTC的匹配中断功能,进行1s报警闪烁LED0。

第一步:

打开CVARV,新建一个工程,首先使能低级中断:

第二步:

设置LED0端口输出。

第三步:

选择时钟源,开启RTC比较中断。

第四步:

生成代码,编译下载。

在RTC匹配中断函数中加入以下代码:

//RTCcompareinterruptserviceroutine

interrupt[RTC_COMP_vect]voidrtcxm_compare_isr(void)

{

//writeyourcodehere

PORTE.OUTTGL|=(1<<0);//LED0闪烁

}

 

XMEGA128学习笔记7-模数转换ADC

Xmega的ADC特点有:

1、高达12位精度

2、高达2M/s采样率

3、有符号和无符号输出选择

4、可选增益(1X2X4X8X16X32X64X)

5、流水线结构设计

6、4个虚拟通道

7、结果比较功能

8、知道校准

9、内部连接DAC输出

整体结构如图所示:

今天我们测量内部通道的VCC/10和内部温度。

 

首先根据前面写的设置好USART。

然后我们按照下图设置ADCA进行内部通道的采集,0通道是内部温度,1通道是VCC/10.

最后生成代码,然后加入以下代码:

while

(1)

{

//Placeyourcodehere

delay_ms(1000);

ch0=adca_read(0);

ch1=adca_read

(1);

printf("tempref:

%d,vcc/10:

%d\r\n",ch0,ch1);

vcc=((float)ch1/4096-0.05)*10;//0.5是误差修正

printf("VCCValue:

%0.2fV\r\n",vcc);

}

}

实验现象,得到温度数据需要转成实际的芯片内部温度,没有找到相应的公式。

大家可以把手放到芯片上,明显温度有上升的趋势。

 

XMEGA128学习笔记8-负温度系数热敏电阻NTC

板上的热电偶原理图如上图所示:

使用的型号是NCP18WF104J03RB,PDF见附件所示。

负温度系数热敏电阻器的电阻温度特性可用下式表示:

R=Ae(B/T)式中:

    R---温度为T时热敏电阻器的电阻值;

    A---与热敏电阻器材料物理特性及几何尺寸有关的系数;

    B---热敏指数;

    T---热力学温度。

 T=273.15+t

CVAVR相应地设置如图所示,串口设置前面已经多次叙述过。

说明书上叙述,外界温度为25度时,R=100K,带入原理图电压应该为0.3V

与实际测试效果相符合。

 

XMEGA128学习笔记9-光敏传感器

光敏传感器等于一个电流源,根据外界光的大小,产生不同光电流。

传感器型号是TEMT6000,说明书见附件所示。

板上的原理图如下:

 

CVAVR的设置如下,这里需要说明的参考电压选择的是AREFpinonPORTA,所以需要将PA0连接到VCC,参考电压为3.3V。

 

XMEGA128学习笔记10-数模转换DAC

特点:

1、12位精度

2、高达1M/s的转换速度

3、连续驱动或者采用保持输出

4、内置偏置和增益校准

5、高驱动能力

 

更新了最新版本CVAVR2.05.2,有DAC的功能啦,不过有4K代码的限制。

http:

//www.hpinfotech.ro/

本例程使用最新版本,请大家去官网下载最新软件。

DAC的框图如下所示:

打开CVAVR的DAC生成面板,准备写一个在DACA通道0输出一个锯齿波。

然后加入以下代码:

//Placeyourcodehere

for(value=0;value<0XFFF;value++)//锯齿波

daca_write(0,value);

实验现象如图:

 

 

XMEGA128学习笔记11-定时器TC

特点有:

1、16位定时/计数

2、双缓冲定时器周期设置

3、高达4位比较或者捕获通道

4、波形产生单脉冲/双脉冲/频率发生器

5、输入捕获带噪声消除/频率捕获/脉宽捕获

6、32位输入捕获方向控制

7、定时器溢出/错误中断或者事件

8、每通道有一个比较匹配或者捕获中断/事件

9、支持DMA

10、高阻高精度扩展Hi-Res

11、高级波形扩展AWeX

今天我们就使用定时器进行简单的LED灯闪烁,CVAVR设置如下:

编译后下载,就能看到LED0间隔1s闪烁。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 外语学习 > 其它语言学习

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1