中级会员
 
- 积分
- 283
- 金钱
- 283
- 注册时间
- 2015-11-16
- 在线时间
- 92 小时
|

楼主 |
发表于 2015-11-18 11:28:35
|
显示全部楼层
通过第一个函数写UDA1380寄存器,第一个函数读取UDA1380函数,第三个函数是就是用第一个函数配置UDA1380。STM32的I2C硬件接口不好用,因此用了原子哥的软件模拟I2C。问题很怪异,前面5个寄存器写进去和读出来是一样的,后面五个写进去和读出来的就不一样了。UDA1380是从飞利浦剥离的恩智浦很老的一款音频芯片,I2C和I2S都是飞利浦的专利,关于交不交接口专利费在接口设计上做手脚,就不说了。以前总以为板内接口标准和USB这类板外接口一样是天下通行的,现在才发现对同一种标准的接口各半导体厂商在硬件和软件上都大大小小改动过,这种改动是否考虑技术应用的便利就难说了。当然这是题外话。现在我已经放弃了这款很老的音频芯片,因为不好控制,这到底是stm32的原因还是UDA1380的原因很难深究。我们做应用的没时间和精力去研究接口的改动,但求用的顺用的好,在我看来数据传输接口不过是传输数据用的,何必做的那么难用。针对同一接口标准为何不建立类似USB接口联盟类似的组织,让使用同一接口的所有地方都同行,这样将极大便利开发。
|
|