51单片机用的是 keilC51;STM32装keilMDK。\r\n如果先装keilC51,后装keilMDK的,装在不同的目录里,装完之后不管是51工程还是stm32工程默认都会用keilMDK打开,这样打开51工程时会出错.\r\n \r\n最简单的方法: 要打开51的工程必须先打开keilC51程序,然后再程序里打开工程文件。\r\n打开stm32工程当然没有问题.\r\n \r\n第二个方法: 让keilMDK兼容51的工程,只要一个keil就都能编译51和stm32的工程了:\r\n1、安装keilC51,安装目录 C:\keilC51\\r\n2、安装keilMDK,安装目录 C:\keilMDK\\r\n3、把 C:\keilC51\ 里面的 C51 文件夹复制到 C:\keilMDK\ 里\r\n4、把 C:\keilC51\ 里面的 UV4 文件夹复制到 C:\keilMDK\ 里,提示有同名文件都不要覆盖(注意是不要覆盖)\r\n5、把 C:\keilC51\TOOLS.INI 文件里面的内容复制到 C:\keilMDK\TOOLS.INI 文件后面,并且把所有的 "keilC51”替换为"keilMDK”\r\n这样就可以了。
你说的应该是目标选项配置,进入配置就行了。
Keil(MDK-ARM)系列教程(三)_工程目标选项配置(Ⅰ):。
http://blog.csdn.net/ybhuangfugui/article/details/51655502。
Keil系列教程:
http://blog.csdn.net/column/details/13472.html。
芯片复位后进入的是复位中断入口地址,一般是0,并且位于FLASH中。然后在入口处放置一条跳转指令,跳转到指定的地址执行。所以如果想复位后从RAM中执行,那么必须修改bootloader,也就是最初的那段汇编代码,把跳转的地址改成RAM的地址。
调用时,你作为char使用,而你定义的时候是const。
void,所以你看看参数类型有没有问题,或函数调用是不是错误赋值了。
现在比较流行的方法是用cube直接生成stm32工程,cube里直接配置,源程序初始化的时候也能看出来.。
直接用固件库的话管脚一般在头文件里定义,当然前提是比较规范的写法,如果直接操作也是可以的,看起来就比较费劲了.。