嵌入式式系统作业

发布 2020-02-28 10:08:28 阅读 9231

目录。摘要 1第一章绪论 2

第二章相关芯片介绍 3

2.1 tms320f28335 3

2.2 加速度传感器adxl345 4

2.3 角速度传感器l3g4200 5

第三章 dsp的i2c通讯原理 6

3.1 adxl345的i2c接口 6

3.2 l3g4200的i2c接口 8

3.3 tms320f28335的i2c接口 9

第四章工作电路设计 12

4.1 电路设计 12

4.2 工作总结与展望 14

第五章致谢 15

附录 16经过一个学期的学习,对嵌入式系统从感性认识上升到了理性的认识,同时在毕老师耐心细致的讲解下,对嵌入式系统的开发与编程有了更深的了解。恰逢此时课题组的无人机姿态测量要开发一块控制板,结合课堂所学知识,立足于课题组的要求,设计并开发了这款f28335系列的dsp,经过调试与实验,结果令人满意。

本文涉及到的电路和程序主要用于一款小型无人***控制系统。应用ti公司的新型32位dsp tms320f28335采集三轴加速度计adxl345及三轴角速度传感器l3g4200的姿态数据,并将该数据用于无人***的姿态控制中,主要控制策略如下所述:首先,由三轴加速度计adxl345及三轴角速度传感器l3g4200组成的六轴姿态测量模块测得***在x、y、z三轴上的加速度以及绕着这三轴的角速度,这些姿态信息通过一条i2c总线上传给dspf28335进行采集,在dsp中,飞控算法将这些姿态信息与输入的预期姿态值进行比较,应用经典pid控制算法进行姿态控制和调整,调整的结果是使得dsp输出占空比可调的pwm信号,该信号控制无人***主旋翼电机转速,主旋翼电机的转速与pwm信号的占空比成正相关,同时,主旋翼电机的转速不同,产生的升力不同,***的姿态也会随着升力变化而相应变化(具体的变化规律可参考有关***数学建模文献),因此,通过控制dsp输出的pwm信号的占空比,就可以达到控制无人***姿态的目的。

本文重点设计六轴姿态模块数据的采集部分,包括六轴姿态模块的电路设计以及信号采集程序设计。

关键字:嵌入式;dsp;姿态传感器。

本文涉及到的电路和程序主要用于作者所设计的一款小型无人***控制系统,其作用是应用ti公司的新型32位dsp tms320f28335采集三轴加速度计adxl345及三轴角速度传感器l3g4200的姿态数据,并将该数据用于无人***的姿态控制中,主要控制策略如下所述:首先,由三轴加速度计adxl345及三轴角速度传感器l3g4200组成的六轴姿态测量模块测得***在x、y、z三轴上的加速度以及绕着这三轴的角速度,这些姿态信息通过一条i2c总线上传给dspf28335进行采集,在dsp中,飞控算法将这些姿态信息与输入的预期姿态值进行比较,应用经典pid控制算法进行姿态控制和调整,调整的结果是使得dsp输出占空比可调的pwm斩波信号,该信号控制无人***主旋翼电机转速,主旋翼电机的转速与pwm斩波信号的占空比成正相关,同时,主旋翼电机的转速不同,产生的升力不同,***的姿态也会随着升力变化而相应变化(具体的变化规律可参考有关***数学建模文献),因此,通过控制dsp输出的斩波信号的占空比,就可以达到控制无人***姿态的目的。本文重点设计六轴姿态模块数据的采集部分,包括六轴姿态模块的电路设计以及信号采集程序设计。

设计中主要用到的芯片包括三种:ti公司的tms320f28335系列dsp,ad公司的三轴加速度计adxl345,st公司的三轴角速度传感器l3g4200。下面对这三种主要芯片做简要介绍。

tms320f28335是ti公司生产的一款最新dsp,该dsp为32-位浮点型,主频率为150mhz,作者使用的是由南京研旭公司生产的f28335的核心板,该核心板主要配置包括:

片上存储器:

flash: 256k×16-位

sram: 34k×16-位

boot rom: 8k×16-位

otp rom: 1k×16-位

其中flash、otp rom 和16k×16-位sram 受密码保护,保护用户程序。

片上外设:

epwm: 12 路

hrpwm: 6 路

qep: 2 通道

adc: 2×8 通道、12-位、80ns 转换时间、0~3v 量程

sci 异步串口: 3 通道

mcbsp 同步串口: 2 通道

spi 同步串口: 1 通道

ecan 总线: 2 通道

i2c 总线: 1 通道

dma: 6 通道

看门狗 外扩sram,最大容量为512k x 16 位,基本配置为64k x 16 位

外扩rtc 实时时钟 + 512×8-位eeprom

外扩4 通道、12-位分辩率、10μs 建立时间、±10v 量程的dac 输出

外扩符合usb2.0 标准的高速客户端接口

2路sci 进行收发驱动,接口标准一路为rs232,另一路rs232/rs422/rs485可配置

1路ecan进行收发驱动,符合can2.0 协议

标准的jtag接口,方便调试,标准化的扩展总线。

本设计中主要用到的是该开发板中的i2c总线,实现dsp与两个传感器之间的通讯。

adxl345是一款小而薄的超低功耗3轴加速度计,分辨率高(13位),测量范围达± 16g。数字输出数据为16位二进制补码格式,可通过spi(3线或4线)或i2c数字接口访问。其主要电气特性包括:

超低功耗:vs = 2.5 v时(典型值),测量模式下低至23a,待机模式下为0.1μa

功耗随带宽自动按比例变化

用户可选的分辨率

10位固定分辨率

全分辨率,分辨率随g范围提高而提高,±16g时高达13位

(在所有g范围内保持4 mg/lsb的比例系数)

电源电压范围:2.0 v至3.6 v

i / o电压范围:1.7 v至vs

spi(3线和4线)和i2c数字接口

灵活的中断模式,可映射到任一中断引脚

通过串行命令可选测量范围

通过串行命令可选带宽

宽温度范围(-40°c至+85℃)

抗冲击能力:10,000 g

本设计中主要通过i2c总线将adxl345与dspf28335连接。

l3g4200是由st公司生产的一种三轴角速度传感器,它包括一个感应单元和一个ic接口单元,该接口单元提供3线spi及i2c通讯接口。其主要电气特性包括:

三种可选满量程(250/500/2000°/s),i2c/spi数据接口。16位角速度数据输出。8位温度值输出。

可选的内部集成高通/低通滤波器。

内嵌的温度传感器。

支持2.4v至3.6v供电电压。

工作温度-45至80度。

adxl345的的主要功能模块包括一个三轴硅晶体传感器,一个ad转换模块,一组数字滤波器,一个32位的fifo缓存模块以及串口通讯模块和电源管理模块。以下是adxl345的主要功能模块框图。

图一 adxl345主要功能模块。

如下图所示,cs引脚拉高至vdd i/o,adxl345处于i2c模式,需要简单2线式连接。adxl345符合《um10204 i2c总线规范和用户手册》03版(2023年6月19日,nxp semiconductors提供)。如果满足了表11和表12列出的总线参数,便能支持标准(100 khz)和快速(400 khz)数据传输模式。

如图40所示,支持单个或多个字节的读取/写入。alt address引脚处于高电平,器件的7位i2c地址是0x1d,随后为r/w位。这转化为0x3a写入,0x3b读取。

通过alt address引脚(引脚12)接地,可以选择备用i2c地址0x53(随后为r/w位)。这转化为0xa6写入,0xa7读取。对于任何不使用的引脚,没有内部上拉或下拉电阻,因此, cs引脚或alt address引脚悬空或不连接时,任何已知状态或默认状态不存在。

使用i2c时, cs引脚必须连接至vdd i/o,alt address引脚必须连接至任一vdd i/o或接地。 由于通信速度限制,使用400 khz 的i2c最大输出数据速率为800 hz,与i2c通信速度按比例呈线性变化。例如,使用100 khz i2c时,odr最大限值为200 hz。

以高于推荐的最大值和最小值范围的输出数据速率运行,可能会对加速度数据产生不良影响,包括采样丢失或额外噪声。如果有其他器件连接到同一i2c总线,这些器件的额定工作电压电平不能高于vdd i/o 0.3v以上。

i2c正确操作需要外接上拉电阻rp。

图二 adxl345i2c总线搭建。

图二是adxl345进行i2c通讯的时序图。

图三 adxl345i2c总线时序。

图四 i2c总线要求。

上面的图三是adxl345的i2c通讯各时序要求,与后面将要提到的dspi2c时序以及l3g4200的i2c时序相比较可以看出,这三者的i2c均属于标准接口,因此可以方便的在三者之间搭起i2c总线。

l3g4200的内部主要模块包括一个ad转换模块,一个组滤波器,一个32位的fifo缓存以及一个spi、i2c复用的接口,以下是l3g4200de各功能模块框图。

图五 l3g4200功能模块框图。

该i2c器件只可作为从器件,其地址根据sdo引脚的接地与否变化,sdo接高电平时,该器件的7位i2c地址为1101001,当sdo接地时,该器件的7位i2c地址为1101000。

l3g4200内嵌的i2c满足以下通讯协议:i2c总线上的主器件提供时钟脉冲序列,当l3g4200接收到主器件发送来start信号后,首相将自身地址与主器件发送的地址作比对,若相符,则l3g4200发送一个ack信号以回应主器件,随后,l3g4200按照主器件发送的所要访问的访寄存器地址将该寄存器内数据发送到sda引脚,供主器件查读。主器件没读完一个寄存器地址,l3g4200自动将地址加1,做下一地址的数据读取。

sda线上数据的高低电平跳变只能在时钟信号下降沿进行,在时钟信号为高时,sda线上电平保持不变。图四是l3g4200的i2c总线时序要求。

图六 l3g4200时序要求。

tms320f28335支持多主机的i2c总线通讯,该dsp既可以作为i2c主机使用,也可以作为从机使用。在作为主机使用时,其i2c总线时钟频率有两个预分频的寄存器决定。一个是ipsc,另一个是iccl和icch。

tms320f28335的i2c模块主要包括控制寄存器,数据寄存器,一个32位的fifo缓存,主频预分频模块这几个部分,以下是其各功能模块的框图。

嵌入式系统作业

嵌入式系统的应用范围可以粗略分为两大类 电子系统的智能化 工业控制 现代农业 家用电器 汽车电子 测控系统 数据采集等 计算机应用的延伸 手机 通信 网络 计算机外围设备等 从这些应用可以看出,要完成一个以mcu为核心的嵌入式系统应用产品设计,需要硬件 软件及行业领域相关知识。硬件主要有mcu的硬件...

嵌入式系统作业

计算机科学与技术学院。计科09 2班。题目 电子产品之嵌入式追踪系统。一 现状。我时常听到说某位同学的手机被盗了或者相机丢了,类似的事情在高校里时有发生。这给同学们造成了严重的损失,而且里面还有很多资料是非常重要的,这一丢失给失主造成的损失更是无法估量,那么我们能否用什么方法来解决此类问题吗?因此我...

嵌入式系统作业

红外接收与发送系统设计。一 红外发送与接收系统硬件构成。红外遥感原理是利用红外线进行信息传递,波长范围 0.76um 1.75um。该系统总体框架图如图1所示,发射机 接收机和数码显示组成。图1 红外发送与接收系统框架图。1.红外发送系统模块。发射码是由引导码,用户码,键码和键码反码构成。通过按键控...