本帖最后由 springvirus 于 2016-3-16 16:39 编辑
说起来,接触新唐的首款开发板就是NuTiny-SDK-M058S了,体积稍小,虽然M058S是M0核的,但给我的第一感觉就是51单片机的扩展版,应该容易上手,仔细研究了下参考手册,片内资源还真不少,包括数量可观的IO,硬件I2C,SPI,ADC以及UART,还有4个定时器。在焊接了规则引出相关端口的IO板子后,便开始了这款开发板的探索之旅。
首先,来到UART的城下,在提前做足研究例程的准备工作后,没费太多周折,便拿下。 关键点1:printf调用的fputc已在retarget.c中实现,只需完成使用相关UART的初始化即可。 关键点2:为IP clock源中UART的选择以及IP clock的使能,还有P3.0和P3.1的RXD和TXD复用功能的使能。
第二项,测试手头的MB85RS64铁电存储器,方案是模拟SPI读写相关地址数据。根据MB85RS64的手册构建读写涉及的OPCODE操作后,读写成功。
第三项,拜访下几个定时器大哥,方案是在一个8*8的点阵上,先实现一个箭头,继而仿电梯里楼层点阵的显示效果,实现箭头的移动。构思为使用一个定时器动态扫描一个点阵上的8列,实现静态显示一个箭头,再用另一个定时器溢出时,完成整体挪动各列,就实现了移动效果。 关键点1,测试两个定时器的溢出时间,使之实现稳定的显示效果。 最后测试的是实现动态扫描定时器的溢出时间为1ms,效果好,无闪烁,实现整体挪动各列的定时器溢出时间为200ms,移动速度适中,过程流畅。
第四项,通过读取SD卡,在12864上播放bad apple。播放过程中有些卡顿,用的模拟SPI读SD卡扇区数据。
第五项,实现了一个采集摇杆数据的遥控器。方案为用ADC的四个通道循环采集2个摇杆的电压变化,通过NRF24L01发送出去。
第六项,实现了一个红外避障的小车。方案为用红外发送接收一体化模块加IO的外部中断来判断前方是否有障碍,关键点是模块的安装必须准确。
通过几个实验的进行,证明了M058S可以满足常见的应用需求。 小体积加上宽电压支持,使用起来很是顺手,最后传下几个实验的实物图,还有两个工程,LED为众多实验共用的工程,LED_CAR为避障小车的工程
定时器
铁电读写
铁电读写+UART打印
12864显示图
播放badapple
红外避障小车
双摇杆遥控器
led.part01.rar
(2 MB)
led.part02.rar
(2 MB)
led.part03.rar
(2 MB)
led.part04.rar
(418.32 KB)
led_car.part01.rar
(2 MB)
led_car.part02.rar
(2 MB)
led_car.part03.rar
(1.63 MB)
|