首先感谢原子出的这款高性价比的板子,我只是一个从51刚过来的初学者,一个人学习STM32,有时候遇到问题长时间不能解决(因为不方便上网来论坛),真的很打击信心。 这两两天忍痛花了几百块办了无线上网,不过能上论坛就让我看到了希望,呵呵,希望各位前辈不吝赐教啊,下面是问题
1 同样一个程序(基于库),原先是软件仿真正常,但是硬件仿真会死循环在main函数之前的一段汇编代码里面,今天重装系统后在编译一下发现两者都正常了。
2有时候一进入仿真,MDK便自己跳到了汇编窗口,是什么原因?
3 以下是stm32f10x.h里面的一段代码,建立工程的时候不是已经确定了芯片的类型了吗?这代码干什么用的,又是怎样起作用的。
#if !defined (STM32F10X_LD) && !defined (STM32F10X_MD) && !defined (STM32F10X_HD)
/* #define STM32F10X_LD */ /*!< STM32 Low density devices */
#define STM32F10X_MD /*!< STM32 Medium density devices */
/* #define STM32F10X_HD */ /*!< STM32 High density devices */
#endif
4 以下也是stm32f10x.h里面的一段代码,这代码起神马作用?有必要吗
#define HSE_Value ((uint32_t)8000000)
#define HSI_Value ((uint32_t)8000000)
#define HSEStartUp_TimeOut ((uint16_t)0x0500)
5 其实库里面还有好多的这样的问题,看不懂我觉得心里没底
6 什么时候要像下面那样加上两个下划线,这样啥用意?
#ifndef __STM32F10x_H
#define __STM32F10x_H
7 我知道STM32要先执行启动代码在执行main函数,但是MDK怎么知道启动代码在哪儿,或者说MDK是按怎样的规则找到启动代码的,是不是只要在工程里面加入了启动代码,无论project workspace怎样组织,MDK自己都能找到它。
8 这个问题需要贴图,但是图片贴不上来(确定按钮无效)
9论坛帖子好乱,建议帖子更细的分类,
当然这得耗费原子哥很多时间,不过不然的话,以后帖子就越来越乱了,就不能很好的发挥论坛的作用 |