前后花了大概1周的时间把论坛的LM3S8962 EVALUATION BOARD熟悉了一下。
这个片子还是有些独到之处的,比如简洁的外设架构、可设置的GPIO驱动能力、大容量存储、包括简练的库函数风格(这个个人很喜欢)等,但也发现也很多明显的不足:
1、首当其冲的是这个LMI FTDI,板载仿真器,无论是烧写、仿真的速度,还是稳定性(不时出现的Hardware fault)都差强人意,而且还会有些许记忆效应(会将上一次的寄存器状态保留到下一次仿真中)。我换用JLINK也没有明显的好转。(多说一句,JILNK调试STM32是非常流畅的)
2、文档资料不是很齐全,也不是很详细,无论是TI官方网站还是网上流传的资料。
3、可参考的例子程序比较少,函数库的说明也很粗糙
不过个人习惯了STM32,多少用STM32的标准来衡量LM3S,这未免偏颇,大家原谅。
光盘中带有的例子程序都使用了将库函数打包成.lib文件使用了,这样做可以缩短编译时间和代码体积,但很不利与开发人员查看这些库函数的原型,所以我使用了.c和.h形式的函数库,这样看代码会方便很多。此外,这些工程尽量不使用这个EVO KIT配备的OLED做显示界面,而使用uart加PC端的上位机,原因很简单,不是每个LM3S的板子上都有这个型号并且引脚分配也一致的OLED,但是每一个板子上必然都引出了uart。
现将这几天写的工程上传,都是调试运行通过的,并且加了中文注释。权当丰富一下LM3S的资料吧:
(1)点亮GPIOF.0上的LED
(2)使用SysTick产生1S间隔点亮
(3)使用SysTick产生20ms时间间隔扫描按键,并将按键状态在OLED上显示
(4)串口收发程序,可以接收到上位机发来的数据并回送。此外展示了将uart绑定到stdio.h中的printf函数的方法,可以使用printf来给uart发送数据
(5)看门狗例子程序,lm3s看门狗工作的机制是:第一次看门狗溢出发生看门狗中断,若清除看门狗中断则自动重装初值并再次计数。而若第一次看门狗中断未被清除,则下一次看门狗中断来临后将发生看门狗复位。
(6)32位定时器程序
(7)产生PWM信号并用GPIOF.0上的LED明亮度显示
(8)基于ZLG-IIC函数包的硬件IIC+中断方式读写EEPROM — 24C02(AVR的IIC不给力,STM32的IIC不给力,LM3S的IIC还是不给力,IIC就是天生被模拟的命:(" />),串口显示收发信息
(9)ssi例子程序,需要将SSITX和SSIRX短接,用串口显示收发信息
[
本帖最后由 losingamong 于 2011-1-31 16:55 编辑 ]