上礼拜5收到社区送来的STM32L476nucleo开发板,非常感谢社区能给予我们这样的机会接触新系列单片机,所以肯定得做点笔记来回馈一下论坛的,刚好飞思卡尔有个10块钱的小板子兼容接口,直接用来作为扩展板很不错,那么好,直接开始撸! 第一,首先评价一下STM32L476nucleo这个板子,板子总体上挺不错 好了,接下来给大家分享一下开发笔记,我第一次用HAL库,听群里说什么c++面向对象,都TM在扯鸡巴蛋,说白了就是一个硬件抽象层,讲硬件隔开,但是认真想想,函数的多层封装,库的剪裁性等问题导致了M4内核,80M速率完全没有任何发挥,不信用库点个灯翻转一下即可知道差距。不过肯定有 人说,你知道库开发的效率吗?行行行,说到这个我肯定是会退到一方了,因为等硬件驱动都调试好,以后都是直接调用的节奏,效率一样高,而且我相信在工作的工程师应该对看文档没什么压力。而且重新熟悉HAL这个库也需要时间,我个人依然喜欢标准库,小,剪裁性很好,同时开发效率也高。 虽然有1M的Flash,128K的美美哒的资源,但是,L476的定位在何方? 不过,先不说如何用寄存器进行开发,这详细的我还是等中文参考文件出来再说,看英语有点恶心,因为这个,所以我调试SPI的时候就有点断腿。 因为时间不多,也就晚上有那么一丁点的时间来玩玩这个nucleo(刚好周末),所以完成了3个功能,一个是GPIO翻转,串口输出打印,以及SPI硬件通信。 实验效果:476对扩展板上的SPI进行芯片擦除,读取1个page后printf在串口助手上,然后从0~255这样一个page存进去flash后再读出来打印 整个实验分4步,芯片擦除,点亮红灯,第一次读取成功后,点亮蓝灯,芯片写入,点亮橙色灯,最后读取一page,点亮绿灯,实验结束。 跟我一样有小板子的也许会有疑问,你的芯片ID为何是EF14,我想跟大家说,如果你用的正是这个小板子,读出来的ID如果是5114,没错,你读对了 山寨的东西我就不说了。我自己有很多拆机的flash,所以换一片上去了。 以下,附上我的程序代码,如果工程上有什么你觉得有缺漏的东西,请回复我,给我狠狠拍一砖,谢谢! 这次是我第一次使用HAL库,感受就是:希望能继续让std标准库兼容这些新型号! |
板子本身的绿油挺高级,看着不像山寨货,eeprom看丝印也是ATMEL的,不知道真假,flash肯定是假的,读芯片id就能知道,有空捣鼓一下L4的硬件IIC看看,哈哈
我没用过MX,工程是自己建立的,打开IDE文件夹即可看到MDK文件夹了,然后就没有然后了
嗯,我原来的MDK版本低了,打不开,重新安装的V5的 可以了
玩起来了分享下,一起玩