Part Number:MSP432E411YOther Parts Discussed in Thread:C2000WARE
尊敬的工程师:
您好,SDK里面的例程使用的都是Driver library,但是找不到库的文档,只能找到网络相关的NDK驱动的文档,官方是不是对其它外设现在不推荐使用那个驱动了,是不是推荐使用寄存器直接配置,非常感谢!
祝您好心情!
Susan Yang:
有相关的API文档,您可以看一下
https://www.ti2k.com/wp-content/uploads/ti2k/DeyiSupport_OtherMCU_node
yongtao ma59 说:是不是推荐使用寄存器直接配置
就我所知,是否使用driverlib主要是取决于客户的实际需要
,
yongtao ma59:
Yang工,
您好,非常感谢您的解答,其实我在是否使用驱动的问题上一直很纠结,我在使用C2000系列的时候就不会使用驱动,我感觉寄存器配置起来挺简单的,驱动还得看手册,而且感觉不够灵活。
但是我们现在开始做另外一个产品,使用MSP432E4,这时候就要用到网络功能,由于对网络是熟悉,所以感觉使用驱动倒是挺好用的。但是其他部分感觉使用驱动还是不习惯。
但是我又担心这个芯片万一停产,使用驱动是不是比较容易移植。所以就比较纠结了。
大部分人使用MSP432这类芯片是不是都会使用驱动,还是说复杂的外设使用驱动,简单的外设就不使用驱动了。
非常感谢Yang工的指导,谢谢!
,
Susan Yang:
yongtao ma59 说:我在使用C2000系列的时候就不会使用驱动,我感觉寄存器配置起来挺简单的,驱动还得看手册,而且感觉不够灵活
我们有一个文档
https://www.ti.com/lit/an/spraa85e/spraa85e.pdf
在该文档中比较了这2种方式:The C2000 Peripheral Driver Library (or Driverlib) is a set of low-level drivers for configuring memorymapped peripheral registers. The Driverlib is a more readable and portable approach than performing direct register accesses either by bit fields or the #define approach.The Driverlib is written in C and all source code is found within C2000Ware. It provides drivers for all peripherals and provides access to almost all functionality.Driverlib实际上是将以前的Bit Field的定义改为用函数去实现。比如使能某个外设,之前是往控制寄存器的某一位写1,现在是通过XXXenable(); 实现,在这个函数内部还是往使能位写1.因为是通过函数的方式实现,优点是不需要深入去了解寄存器的每个位是如何定义的,调用函数就可以了。缺点是函数的使用不可避免的会带来代码空间和CPU的额外的负荷。
而且Driverlib 提供了一种更具可读性和可移植性的外设寄存器编程方法。凭借这样的可移植性可以更轻松地移植到将来的器件系列,因为即使控制位可能在寄存器内和寄存器间发生变化,功能调用也可以保持不变。
,
yongtao ma59:
非常感谢Yang工的详细解答,非常感谢解开了我们的纠结。祝您好心情
,
Susan Yang:
很高兴能帮到您!后续有其他问题,欢迎随时发帖