加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

基于TIf28335做的ADC自动代码生成验证

(2017-12-24 15:27:59)
好久没有写博客,最近有点事!
   今天是周末,又是平安夜,我在实验室没有事,就验证了使用matlab/simulink自动代码生成DSP的TMS320F28335的程序,主要是为了验证ADC模块的使用。首先要说的是,我对ADC知道的不多,水平也就在,ADC是采样的,就是把模拟量可以变成数字量,有采样通道了,采样结果了什么的,知道的就那么多,对ADC的编程我是一无所知的。通过实例进行了一点点的探索。
   实验准备,TMS320F28335开发板;仿真器;一个9V的电池;电位器;一些导线;面包板,万用表,当然还有已经安装了matlab的计算机。我用的matlab版本是2016a。
http://s10/mw690/00688zkAzy7gPssxo2Bf9&690
然后是开发板与仿真器连接,仿真器与计算机连接,将电位器插在面包板上,用导线将电位器的边上两个引脚与9V电池连接,使用导线引出电位器中间引脚和两边引脚中的一个引脚;然后用万用表测量一下电位器引出的两个导线两端电压,调到3V.
http://s15/mw690/00688zkAzy7gPsuVGfYde&690
然后打开matlab,新建simulink,拉进来一个28335的ADC模块,然后进行配置,配置成A模式(使用的是ADCINA),使用的采样时间是0.001s,配置Input Channels转换数目为3,都配置成ADCINA6;
http://s8/mw690/00688zkAzy7gPsx6Le747&690
然后对模型的设置进行配置完成,自动代码生成,在路径下找到生成的*.out文件。
下载到DSP板中。
打开CCS,直接点击debug,连接上DSP,记得配置选型以及验证连接是否成功哦。
将电位器的两端连接到DSP板的ADCIN6上。下面这个是我的板子的接口
http://s12/mw690/00688zkAzy7gPsBcpET7b&690
在P5的28号口。
然后连接后运行,观查ADC寄存器的值变化情况。切记,这个地方连接不要错了,特别是电位,一个接地一个接ADCIN6,错的话没有结果。
http://s6/mw690/00688zkAzy7gPsDzYPP15&690
然后一直刷新寄存器就可以看到3个寄存器的值变化。然后可以转动电位器的旋钮,观查寄存器的值变化情况。然后可以进行研究。
http://s1/mw690/00688zkAzy7gPsFqSd200&690
 通过调试,我对ADC有了一些了解,通过对寄存器和simulink中ADC模块的研究发现,
1、ADC有三种模式,分别是A、B、AB模式,对于A模式,有8个转换,如果选择8,就会有8个通道,这8个通道可以配置8路,也可以只配置一路。8路就是接8个引脚都采集呗,1路就是8个都设置成一个引脚,每一路都对应一个引脚,每一路转换都对应一个寄存器。

2、对于采集一路信号,譬如电流信号,可以用多了通道,然后求其均值,这样的话更为精确,而dsp28335可以最多采集16路信号,精度低点呗,适当的加以调整。

3、调试的过程中发现有偏差和有误差,偏差可以加减一个偏移量模块。

4、这是16位的,就是说最大值为0xFFFF,测得的结果是0-3V,嘿嘿,这个还是需要测。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有