欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    使用C语言知识学习操纵DSP的寄存器.ppt

    • 资源ID:3721753       资源大小:156.02KB        全文页数:15页
    • 资源格式: PPT        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    使用C语言知识学习操纵DSP的寄存器.ppt

    第6章 使用C语言操作DSP的寄存器,手把手教你学DSP基于TMS320X281X,北京航空航天大学出版社 作者:顾卫钢,HELLODSP:专业的DSP开发工具和方案供应商,可定制承接项目 欢迎访问: 联系方式:13776600442,手把手教你学DSP基于TMS320X281X,北京航空航天大学出版社 作者:顾卫钢,HELLODSP:专业的DSP开发工具和方案供应商,可定制承接项目 欢迎访问: 联系方式:13776600442,6.1 寄存器的C语言访问,由于DSP的寄存器能够实现对系统和外设功能的配置与控制,因此在DSP的开发过程中,对于寄存器的操作是极为重要的,也是很频繁的,也就是说对寄存器的操作是否方便会直接影响到DSP的开发是否方便。幸好,F2812为大家提供了位定义和寄存器结构体的方式,能够很方便的实现对DSP内部寄存器的访问和控制。,6.1.1 了解SCI的寄存器,6.1.2 使用位定义的方法定义寄存器,所谓“位域”就是把一个字节中的二进制位划分为几个不同的区域, 并说明每个区域的位数。每个域都有一个域名, 允许在程序中按域名进行操作。位域的定义和位域变量的说明同 结构体定义和其成员说明类似,其语法格式为: Struct 位域结构名 类型说明符 位域名1:位域长度 类型说明符 位域名2:位域长度 类型说明符 位域名n:位域长度 ;,例6-1 位域定义,struct bs /定义位域bs int a:8; int b:2; int c:6; ;,例6-2 用位域定义SCICCR,struct SCICCR_BITS Uint16 SCICHAR:3; / 2:0 字符长度控制位 Uint16 ADDRIDLE_MODE:1; / 3 多处理器模式控制位 Uint16 LOOPBKENA:1; / 4 回送测试模式使能位 Uint16 PARITYENA:1; / 5 极性使能位 Uint16 PARITY:1; / 6 奇/偶极性选择位 Uint16 STOPBITS:1; / 7 停止位个数 Uint16 rsvd1:8; / 15:8 保留 ; struct SCICCR_BITS bit; bit.SCICHAR=7; /SCI字符长度控制位为8位,例6-3 SCICCR的共同体定义,union SCICCR_REG Uint16 all; /可实现对寄存器整体操作 struct SCICCR_BITS bit; /可实现位操作 ; union SCICCR_REG SCICCR; SCICCR.all=0 x007F; SCICCR.bit.SCICHAR=5;,例6-4 SCI寄存器的结构体文件,struct SCI_REGS union SCICCR_REG SCICCR; /通信控制寄存器 union SCICTL1_REG SCICTL1; / 控制寄存器1 Uint16 SCIHBAUD; / 波特率寄存器(高字节) Uint16 SCILBAUD; / 波特率寄存器(低字节) union SCICTL2_REG SCICTL2; / 控制寄存器2 union SCIRXST_REG SCIRXST; / 接收状态寄存器 Uint16 SCIRXEMU; / 接收仿真缓冲寄存器 union SCIRXBUF_REG SCIRXBUF; / 接收数据寄存器 Uint16 rsvd1; / 保留 Uint16 SCITXBUF; / 发送数据缓冲寄存器 union SCIFFTX_REG SCIFFTX; / FIFO 发送寄存器 union SCIFFRX_REG SCIFFRX; / FIFO 接收寄存器 union SCIFFCT_REG SCIFFCT; / FIFO 控制寄存器 Uint16 rsvd2; / 保留 Uint16 rsvd3; / 保留 union SCIPRI_REG SCIPRI; / FIFO 优先级控制寄存器 ; extern volatile struct SCI_REGS SciaRegs; extern volatile struct SCI_REGS ScibRegs;,例6-5 对SCICCR按位进行操作,SciaRegs.SCICCR.bit.STOPBITS=0; /1位停止位 SciaRegs.SCICCR.bit.PARITYENA=0; /禁止极性功能 SciaRegs.SCICCR.bit.LOOPBKENA=0; /禁止回送测试模式功能 SciaRegs.SCICCR.bit.ADDRIDLE_MODE=0; /空闲线模式 SciaRegs.SCICCR.bit.SCICHAR=7; /8位数据位,例6-6 对SCICCR整体进行操作,SciaRegs.SCICCR.all=0 x0007;,例6-7 对SCIHBAUD和SCILBAUD进行操作,SciaRegs.SCIHBAUD=0; SciaRegs.SCILBAUD=0 xF3;,6.2 寄存器文件的空间分配,使用DATA_SECTION方法将寄存器文件分配到数据空间 将数据段映射到寄存器对应的存储空间,例6-8 将变量分配到数据段,#pragma DATA_SECTION(SciaRegs,SciaRegsFile); volatile struct SCI_REGS SciaRegs; #pragma DATA_SECTION(ScibRegs,ScibRegsFile); volatile struct SCI_REGS ScibRegs;,例6-9 将数据段映射到寄存器对应的存储空间,MEMORY PAGE 1 : SCI_A : origin = 0 x007050, length = 0 x000010 SCI_B : origin = 0 x007750, length = 0 x000010 SECTIONS SciaRegsFile : SCI_A, PAGE = 1 ScibRegsFile : SCI_B, PAGE = 1 ,

    注意事项

    本文(使用C语言知识学习操纵DSP的寄存器.ppt)为本站会员(小**)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开