×

ADAS1000+BF527可视化DSP

消耗积分:0 | 格式:pdf | 大小:95.61KB | 2021-05-16

分享资料个

This version (05 May 2016 18:26) was approved by Catherine Redmond.The Previously approved version (05 May 2016 18:18) is available.Diff

ADAS1000 - Blackfin Framework

Supported Devices

Evaluation Boards

Overview

The EVAL-ADAS1000SDZ is a fully featured evaluation kit for the ADAS1000. The evaluation kit consists of an evaluation board kitted with 2 ADAS1000 devices capable of demonstrating ECG capture up to 12 leads. This evaluation board is provided for silicon evaluation purposes and is not designed to be connected directly to animal or human.

This board can be operated in conjunction with the System Development Platform (SDP) or alternatively may be interfaced to directly via a dedicated serial interface connector (J4).

The SDP controller board connects to the PC via USB 2.0. The evaluation board connects to the SDP-B controller board. The ADAS1000 evaluation board cannot be connected directly to the PC. The evaluation software running on the PC will communicate with the evaluation board through the SDP-B Controller board. The SDP Controller board is a separate list item in the ordering guide below (EVAL-SDP-CB1Z). If you have not previously purchased an SDP-B Controller board, please do so to ensure a full evaluation setup.

Framework Functional Description

This project demonstrates a framework developed for Visual DSP Visual DSP to interface the ADAS1000 to the ADSP-BF527 on the SDP-B controller board.

eval-adas1000sdz.jpg

The software has been developed to

  • Configure various registers of ADAS1000 through SPORT1 of ADSP-BF527
  • Read ECG or Test tone data from ADAS1000 to memory of ADSP-BF527 (external SDRAM)
  • Process the data acquired from ADAS1000
  • Display/Plot the processed data

Requirements:

  • VisualDSP++ 5.0 Update 10
  • ADAS1000 Eval Board setup, EVAL-ADAS1000SDZ
  • SDP-B Rev 1.3 (with Emulator to connect to VisualDSP++),
  • Breakout board for SDP-B (If Hardware DRDY is used)
  • ECG cables and simulator (if required)

Framework Files

The attached zip file contains the relevant files for this project

Zip File Contents & description:

  • ADAS1000_SDP_v1.c Main function which can be used to develop the application
  • ADAS1K_Functions.c All the functions related to ADAS1000, which can be used by the application to read/write ADAS1000 registers,and to read data frame from ADAS1000
  • ADAS1K_DataProcess.c Functions to process the data read from ADAS1000
  • ADAS1K_DataDisplay.c Functions used to initialize the display unit and used to display/plot processed data from ADAS1000
  • SPORT_Functions.c PLL configuration and all the SPORT1 functions used for Serial Interface with ADAS1000
  • ADAS1000_SDP_v1.ldf Linker Description file, defining all the memory sections used by the processor
  • ADAS1K_Functions.h Declaration of all functions related to ADAS1000, and Hardware DRDY pin definitions
  • ADAS1K_RegValue.h Definitions of values for ADAS1000 registers which can be directly used during ADAS1000 register configuration. The values is calculated according to definitions in User_Config.h
  • cdefADAS1K.h - Definitions of registers of ADAS1000, BIT Map, BIT Value and BIT Position definitions of all the fields of registers of ADAS1000 and other constant definitions and variable typdefs related to ADAS1000
  • cdefBF527_new.h - System MMR register addresses for PORT registers of BF527 Blackfin on SDP)
  • SPORT_Functions.h - Declaration of all the SPORT1 functions used for Serial Interface with ADAS1000
  • User_Config.h - All the user definable parameters for various functionalities of (ADAS1000 + SDP) system
  • LA.vps - VDSP++ plot for LA data
  • LL.vps - VDSP++ plot for LL data
  • RA.vps - VDSP++ plot for RA data
  • V1.vps - VDSP++ plot for V1 data
  • V2.vps - VDSP++ plot for V2 data

Implementation Description:

  • 'Reg_Config_Table' is an array which is updated with required ADAS1000 register configuration
  • 'ADAS1000_Open' will initialize ADSP-BF527
  • Software reset of ADAS1000
  • Use 'Reg_Config_Table' and initialize the registers of ADAS1000
  • Read back the register values from ADAS1000 and confirm the values are correctly configured
  • Initialize the data buffers (Input and processed data)
  • In an infinite loop
    1. Capture data frames from ADAS1000
    2. Process the captured frames
    3. Display the processed data

Procedure:

Hardware Setup

  1. Connect J4 of SDP-B Rev 1.3 to J2 of ADAS1000 Eval board
  2. Connect the ECG probe to J1 of ADAS1000 Eval board
  3. Connect the Emulator to JTAG pins (J3) of SDP-B
  4. If Hardware DRDY is used, Connect Probing Card of SDP-B to J2 conector of SDP-B. Connect 'DRDY' pin of ADAS1000 (J4-11) to PH8 pin of ADSP-BF527 coming on Probing Card of SDP-B (J2.85)
  5. Open the project (ADAS1000_SDP_v1.dpj) in Visual DSP++ 5.0 Update 10
  6. Modify UserConfig.h file for required operation
  7. Create and Connect to BF527 Emulator Session in Visual DSP++
  8. Build the project
  9. Run the code. BF527 configures ADAS1000 and data is received continuously from it.
  10. Plot the data
  11. Menu > View > Debug Windows > Plot > Restore
  12. Browse and open LA.vps and other plot files (.vps files)
  13. Right click on the plot > Configure > Modify 'Count' for number of samples
  14. Halt the code, to see the latest 'Count' number of samples plotted

Zip file

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !

'+ '

'+ '

'+ ''+ '
'+ ''+ ''+ '
'+ ''+ '' ); $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code ==5){ $(pop_this).attr('href',"/login/index.html"); return false } if(data.code == 2){ //跳转到VIP升级页面 window.location.href="//m.lene-v.com/vip/index?aid=" + webid return false } //是会员 if (data.code > 0) { $('body').append(htmlSetNormalDownload); var getWidth=$("#poplayer").width(); $("#poplayer").css("margin-left","-"+getWidth/2+"px"); $('#tips').html(data.msg) $('.download_confirm').click(function(){ $('#dialog').remove(); }) } else { var down_url = $('#vipdownload').attr('data-url'); isBindAnalysisForm(pop_this, down_url, 1) } }); }); //是否开通VIP $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code == 2 || data.code ==5){ //跳转到VIP升级页面 $('#vipdownload>span').text("开通VIP 免费下载") return false }else{ // 待续费 if(data.code == 3) { vipExpiredInfo.ifVipExpired = true vipExpiredInfo.vipExpiredDate = data.data.endoftime } $('#vipdownload .icon-vip-tips').remove() $('#vipdownload>span').text("VIP免积分下载") } }); }).on("click",".download_cancel",function(){ $('#dialog').remove(); }) var setWeixinShare={};//定义默认的微信分享信息,页面如果要自定义分享,直接更改此变量即可 if(window.navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger'){ var d={ title:'ADAS1000+BF527可视化DSP',//标题 desc:$('[name=description]').attr("content"), //描述 imgUrl:'https://'+location.host+'/static/images/ele-logo.png',// 分享图标,默认是logo link:'',//链接 type:'',// 分享类型,music、video或link,不填默认为link dataUrl:'',//如果type是music或video,则要提供数据链接,默认为空 success:'', // 用户确认分享后执行的回调函数 cancel:''// 用户取消分享后执行的回调函数 } setWeixinShare=$.extend(d,setWeixinShare); $.ajax({ url:"//www.lene-v.com/app/wechat/index.php?s=Home/ShareConfig/index", data:"share_url="+encodeURIComponent(location.href)+"&format=jsonp&domain=m", type:'get', dataType:'jsonp', success:function(res){ if(res.status!="successed"){ return false; } $.getScript('https://res.wx.qq.com/open/js/jweixin-1.0.0.js',function(result,status){ if(status!="success"){ return false; } var getWxCfg=res.data; wx.config({ //debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId:getWxCfg.appId, // 必填,公众号的唯一标识 timestamp:getWxCfg.timestamp, // 必填,生成签名的时间戳 nonceStr:getWxCfg.nonceStr, // 必填,生成签名的随机串 signature:getWxCfg.signature,// 必填,签名,见附录1 jsApiList:['onMenuShareTimeline','onMenuShareAppMessage','onMenuShareQQ','onMenuShareWeibo','onMenuShareQZone'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 }); wx.ready(function(){ //获取“分享到朋友圈”按钮点击状态及自定义分享内容接口 wx.onMenuShareTimeline({ title: setWeixinShare.title, // 分享标题 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享给朋友”按钮点击状态及自定义分享内容接口 wx.onMenuShareAppMessage({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 type: setWeixinShare.type, // 分享类型,music、video或link,不填默认为link dataUrl: setWeixinShare.dataUrl, // 如果type是music或video,则要提供数据链接,默认为空 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ”按钮点击状态及自定义分享内容接口 wx.onMenuShareQQ({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口 wx.onMenuShareWeibo({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ空间”按钮点击状态及自定义分享内容接口 wx.onMenuShareQZone({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); }); }); } }); } function openX_ad(posterid, htmlid, width, height) { if ($(htmlid).length > 0) { var randomnumber = Math.random(); var now_url = encodeURIComponent(window.location.href); var ga = document.createElement('iframe'); ga.src = 'https://www1.elecfans.com/www/delivery/myafr.php?target=_blank&cb=' + randomnumber + '&zoneid=' + posterid+'&prefer='+now_url; ga.width = width; ga.height = height; ga.frameBorder = 0; ga.scrolling = 'no'; var s = $(htmlid).append(ga); } } openX_ad(828, '#berry-300', 300, 250);