"); //-->
陈芝麻零起点学ARM 学习笔记和心得(2015/03/25)
朋友,这些配置和ARM7的都不同的,ARM7还要配置启动代码,时钟配置等等,不是简单几句话就能搞定的。基本上程序上都是不同的,但是思路都差不多,先配置,后发送。一般ARM会提供一个固件库,先配置外设,直接调用函数就可以操作。
/*******************************************************
MAIN 函数
*******************************************************/
int main(void)
{
SysClock_Init(); // 初始化系统时钟 72MHZ
RCC_Configuration(); // 使能外设
GPIO_Configuration(); // 配置引脚
NVIC_Configuration(); // 配置中断
USART1_Init(9600); // 配置串口1,波特率9600
USART1_Printf("发送");
while(1){
;
}
}
2015 年3月26日
生活的经验告诉我们,要想开拓新知识,必须先加入这个领域里的群体。为了适应新工作,我的嵌入式开发必须从51转到ARM 了。从零开始,也不知道从哪里开始。不管三七二十一,先加入ARM 社区发个新鲜贴。第二天就有回帖了。一句话,看文档。今天我看了MDK5 的Getting Start 文档。顿时似乎捋顺了,下周硬件好了便可以搭开发调试环境了。加载CMSIS,配上Driver Components ,便胸有毛竹了。要当女汉子,加油。
2015/03/30
今天在百度文库上搜到了STM32 固体库移植到MDK 的文档,仔细读了一遍,还读了STM32固体库使用手册的中文翻译版。到目前为止,调试平台的部件主要有:
1) 应用平台在焊接过程中,原理图已有。
2) J-LInk 仿真器带驱动。
3) MDK 带固件库,API
4) C 语言应用程序
接下来的工作重点:
1)硬件平台的调试
2) 仿真开发环境的搭建
3) 应用程序的开发
ARM 的应用程序怎么写,这是我一直在思考的问题。网上搜了一下ARM 程序框架,扣下来在记事本里整理了一遍。API 看过之后,对整个程序架构有了一定的认识。昨天下班之前,翻了一下STM32Cube MX 的手册,发现程序原来可以这样写。今天一上班,赶紧翻了一遍Cube 的用户手册,手册编码是UM1718.手册对ARM 架构的应用程序配置和代码生成作了详细的说明。对于我来说是一个极大的帮助。经理组织讨论软件计划文档,布置了软件计划书编写的任务,这也促使我对地震仪数据记录器程序的细节问题进行进一步的思考。对于程序而言,编码不是问题,关键是架构,其次是算法。
2015/04/07
经过清明节的短暂调整,今天上班继续调试STMF4 为核的硬件电路,领导布置必须在8号之前把程序下到目标板。在清明小长假里,我对前一段时间的学习进行了梳理,必要的知识点和该读的文档都读了一遍。接下来是按照文档说明在具体电路板上的实现。有些细节还没有敲定,为此,我打电话问了三郎以前的同事小谢谢,谢谢对我的问题做了解答,澄清了一些模糊的意识,还用QQ 贴了固件下载地址。今天一早七点半就没事了,坐在一边发呆,老公对我的发呆表示不满,催促早点去上班。九点不到就到班上了,按照小谢谢提示的连接下到了F4 的固件,接上仿真器,目标板和电源。编译连接通过后,下目标程序总是提示Flash 烧写错误。疑惑,中再一次检查了一遍设置,在烧录器的选项里发现是ST-LINK 而不是U-link,修改后点击OK 按钮,程序顺利下到目标板中。这下,我的工作一下有了进展:
1) 硬件平台调试成功
2) 仿真开发环境搭建成功
3) 验证了三周以来对ARM 架构的理解和实现的正确
这下目标板有了,仿真开发环境也有了,接下来是写应用程序了,较比之前用51 开发电子柱人机接口部分基本不用写了。工作重点主要是AD 芯片的驱动和通信模块的实现。虽然在领导布置的死期之前可以算是交了差,但领导接下来又布置了写AD 驱动的工作。ADS 1282 是一块24位的高精度AD 转换芯片,采用SPI 和处理器接口,要实现对它的驱动,还是有一定的工作量的。我先到AD 公司的官网搜搜。
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。