"); //-->
大概两年多以前打算开始学习ARM,当时周立功的书在高校很是流行,所以很多同学都学了LPC的芯片,而且资料很全,网上也有很多例程,学习笔记等等。但个人觉得,现在才开始学习这种技术已经很成熟的芯片,就是再勤奋也不如那些“专家”了!!!后来偶然发现,ADI公司的ADuC7xxxx系列芯片,内核也是ARM,而且在市场上并不是很流行,使用的人不多,资料也很少,并且都是英文的。这个学起来还是很有用武之地的!!!学习使用了两年多,现在对ADuC7xxxx系列芯片使用的非常熟练(自我感觉),不过这过程是心酸的,经历是坎坷的,教训是深刻的!!!这就不多说了,跟大家分享一些我感觉有用的东西,希望能对初学者有所帮助。
ADI 公司推出的产品分为ADuC7XXX 和ADuC8XX 两大类。其中ADuC7xxx 系列产品具有ARM7 32 bit 精简指令集计算机(RISC)MCU 内核,ADuC8XX系列产品具有符合工业标准的8052 MCU 内核。ADuC8XX系列产品没深入研究过,就不多说了。
ADuC7XXX 系列产品有ADuC7019,ADuC702X/ADuC703X/ADuC712X/ADuC706X,
它们均有各自的特点。其中ADuC702X(包括7019) 系列属于较通用的单片机,其内核速度和存储空间等均相同,只是其GPIO 数,集成的ADC,DAC 等外设的个数不同而已;ADuC703X 系列集成有精密的电池监测系统,且供电范围非常宽,可从3.5V 到18V,特别适合于应用在汽车电子中;ADuC712X 系列拥有高达126kBytes 的Flash 空间,且集成有DDS 模块;ADuC706X 系列集成了两个精度高达24 bit 的ADC,如果想做高精度数据采集,又想控制成本,这是一个不错的选择。
再说几个初学者经常遇到的问题!!!
1 ADUC702X 系列单片机的四个外部中断都是高电平触发,怎么才能实现边沿触发呢?
一开始这个问题着实困扰了我一段时间,后来解决了。可以利用ADUC702X 系列单片机内部集成的PLA 实现边沿触发功能,可以配置为上升沿触发,下降沿触发或同时触发。但要注意,应该将相应的外部信号连接到任意一个PLA单元的输入引脚上,如果硬件上已经设计连接到了外部中断引脚上,就不能实现边沿触发功能了。
2 ADuC702X 系列单片机有两个UART 串口,上电后哪个UART 可以被用来下载程序?
P1.0(SIN)和P1.1(SOUT),P0.7(SIN)和P2.0 可以配置为2 个UART,但只能用P1.0和P1.1 来下载程序。没办法,这是王八的屁股——龟腚(规定),芯片设计时就是这样,所以也只能这样用。如果既想用串口来通信,又想下载程序,只能把P1.0(SIN)和P1.1(SOUT)接出来使用。切记!!!
3 ADUC702X 系列单片机内部温度传感器的作用是什么?
ADUC702XX 系列产品内置温度传感器,它的主要功能是用来监测芯片本身工作时的温
度,不能用来监测环境温度。在25℃时,传感器通常有一个典型值输出,可以先校准以保证精确度,传感器的输出与温度成反比,误差是±3℃
4 使用什么软件进行调试?
用Keil和IAR都行,但个人感觉ADI公司提供的光盘中的软件有代码量限制,最好上网找一个破解版的使用。
5 使用什么仿真器进行调试?
这个问题就有些麻烦了,个人强烈建议最好用ADI公司提供的RDI也就是mIDAS-Link或IAR公司的JLINK,但是这两种仿真器都比较贵,如果舍不得花银子就不要考虑了。千万不要有想仿制的念头,本人曾经有过这方面的尝试,最后还是觉得技术过于复杂,放弃了。如果有牛人非要尝试,我只能祝他好运了。不过,使用ULINK也可以调试,而且这个也比较便宜。
希望能对大家有所帮助,我会陆续分享一些使用心得,笔记,代码程序等。多关注呦!!!
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。