本人以前学过51单片机,知道ARM这个东西后一直向往,最近终于入手一块“战舰V3 精英板”(买板子的时候,没注意看板子资源,看到“精英”二字,以为是STM32F103ZET6板子里面最牛的,而且看价格还不是最贵的,果断买了精英板),经过几天的C语言学习、keil安装及使用学习、Jlink使用学习、工程模板(基于固件库)建立……我的STM32学习终于走上正轨。之前听过别人分享如何学习STM32,其中强调了一点,就是加入一个论坛,在论坛中跟大家一起学习,共同进步,于是今天就开贴(以前水过,从来没发过贴),从零开始学习STM32(以前学过51,但是没了解过STM32,不知道算不算从零开始),记录我的学习历程,记录一个系统性地学习STM32的过程,以求跟坛友共同进步,同时以后传递给别人准备学STM32的人一些经验。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
谢谢;
而且一不小心还发现拔了J-Link之后板子的程序就不跑了,情况是这样的:
我要拔掉J-link的USB,插上自己的USB转串口试下,我拔的是USB接电脑那一端,发现板子上串口开启的指示灯灭了,然后插上,又重新启动了(重新初始化串口,我加了蜂鸣器,初始化的时候会响一下),心里纳闷这板子还不想让我插自己的USB转串口了(电脑这一边的USB已插满,想就近拔掉J-link换自己的串口),于是就只能两个都插着,测试了一下,自己的USB转串口是可用的,今天突然想到STM32的JTAG口上一般设计有一根复位信号线,可能是这根线造成的影响,于是去看了下原理图,果然是有:
当然我现在还没有找到资料或证据确认是这个的原因,等回宿舍的时候试一下把J-link跟板子连接的排线拔了看板子自己能不能跑程序,顺便测一下复位线的电平在拔下前后的变化;
{
USART1->SR &= ~(1<<5); // 读之前清零一下
data_buf = USART_ReceiveData(USART1);
USART_SendData(USART1,data_buf);
delay_ms(500);
}[/mw_shl_code]
谢谢
一周热门 更多>