MDK_KEIL5
IT小生lkc
趁年轻,别仿徨
展开
-
【MDK KEIL】移植FreeRTOS出现的错误(声明不能出现在块中的可执行语句之后)
..\ThirtyParty\FreeRTOS\event_groups.c(632): error: #268: declaration may not appear after executable statement in block这种声明不匹配的错误:例子:下边这种顺序在默认的配置是不合适的函数();定义定义变量;...原创 2021-12-05 21:29:04 · 953 阅读 · 1 评论 -
经典keil错误:declaration may not appear after executable statement in block; statement is unreachable
这个错误主要是因为没有使用c99编码格式:..\ThirtyParty\FreeRTOS\queue.c(2761): error: #268: declaration may not appear after executable statement in block..\User\main.c(17): warning: #111-D: statement is unreachable原创 2022-03-06 17:42:26 · 1182 阅读 · 0 评论 -
keil的Option optimization 等级优化问题
KEIL出现的等级优化问题优化等级:0级优化:1、 常数折叠:只要有可能,编译器就执行将表达式化为常数数字的计算,其中包括运行地址的计算。2、 简单访问优化:对8051系统的内部数据和位地址进行访问优化。3、 跳转优化:编译器总是将跳转延至最终目标上,因此跳转到跳转之间的命令被删除。1级优化:1、 死码消除:无用的代码段被消除。2、 跳转否决:根据一个测试回溯,条件跳转被仔细检查,以决定是否能够简化或删除。2级优化:转载 2022-02-02 17:31:12 · 2767 阅读 · 0 评论 -
keil中默认分散加载文件.sct基础注释
下边对于默认分散加载文件进行注释LR_IROM1 0x08000000 0x00100000 { ; load region size_region ER_IROM1 0x08000000 0x00100000 { ; load address = execution address *.o (RESET, +First) *(InRoot$$Sections) .ANY (+RO) .AN...原创 2022-01-31 22:57:33 · 1578 阅读 · 0 评论 -
keil中c99mode(变量可以定义在函数任意位置)
C99mode:几个比较常用的已经着重标注了定义变量的位置可以不设置在开头,定义在任意位置增加restrict指针:主要用做函数形参inline(内联)关键字:函数与参数不需进栈与退栈新增数据类型:bool,true以及false 宏 引用long long int预处理程序的修改:具有可变数目的参数的宏 _ Pragma 操作符for语句内的变量声明:可以在for循环定义变量复合赋值:复合赋值中,可以指定对象类型的数组、结构或联合表达式柔性数组结构成员:结构提中的最后...原创 2022-01-31 18:23:10 · 5772 阅读 · 2 评论 -
【MDK KEIL】keil最新版安装
keil最新版下载和安装,小白通用原创 2021-12-01 22:24:43 · 489 阅读 · 0 评论 -
keil创建工程(单工程)
1.单工程创建工程名字Create,保存2.选择芯片:选择当前工程的芯片,例如stm32f407,什么类型的芯片就选择什么类型的当然需要你进行导入该芯片pack包,具体在keil官网 MDK5 Software Packs创建成功:...原创 2022-01-29 18:16:29 · 860 阅读 · 0 评论 -
keil创建多工程,多工程编译
首先说明一下多工程的作用:假如你写了一个boot和一个app等好几个工程,当如果这几个工程同用一个文件,你修改了以后,意味着所有的工程都需要重新编译,一个一个工程编译就带来了困难。开始创建多工程1.你已经创建了两个以及以上的前提上2.创建多工程工程(多工程其实也是一个工程)3.填写工程名字,放置在选择的文件夹就可以啦4.首先创建一个路径,然后选择其中需要编译的路径(当然还有删除 上移 下移)选择工程然后点击OK,很多时候keil中你不点击o原创 2022-01-29 18:13:15 · 8604 阅读 · 0 评论 -
【MDK KIEL】KEIL PACK软件包镜像下载教学(自己尝试下载才是最好)
1.下载(其实还是建议自己尝试一下去下载)官方下载芯片pack的网址:有很多恩智浦 stm 新塘科技等等都有 自己按需下载就可以了https://www.keil.com/dd2/pack/已经下载好的stm32F4链接:https://pan.baidu.com/s/1-EVvHodzJGfrkvPcO-nYSA提取码:12342.导入keil......原创 2021-08-31 23:27:53 · 1985 阅读 · 0 评论 -
【MDK KEIL】keil添加文件夹目录结构(批量添加.c和.h文件到工程中)(keil添加头文件路径)
第一步打开创建文件夹选项:第二步:直接创建删除 或者上移下移 就好了3.添加文件夹的同时别忘记导入头文件:原创 2021-08-31 23:12:07 · 26808 阅读 · 9 评论 -
【MDK KEIL】keil中文编码编译错误问题(direction is incompatible)
环境:keil编译,sourceinsight编辑项目添加宏定义转换中文字符函数之后,一直报错定义不兼容:error:direction is incompatible1.使用未定义函数(或者是声明顺序)很多时候这种错误,大家一般都能排查出来2.单纯的编码错误(1.)将sourceinsight编辑的该文件改成UTF-8 BOM形式(2.)添加keil相关的控制项option for Target --》 c++ --》Misc Control添加:-..原创 2021-10-31 00:22:07 · 4954 阅读 · 0 评论 -
keil出现大量未知语法错误(系统移植)
这些错误是由于没有正确设置编译器导致的:上边小锤子图案,Target 然后ARM Compiler 选择版本5 就不会出错了Build started: Project: FREERTOS*** Using Compiler 'V6.16', folder: 'D:\qrsSoftware\Keil5\MDK\ARM\ARMCLANG\Bin'Build target 'Target 1'../FreeRTOS/croutine.c(27): warning: In file incl..原创 2021-08-08 23:32:01 · 17181 阅读 · 9 评论 -
keil option中Misc Control实用功能
option中Misc Control中几个比较实用的功能中文错误(又一次写工程不管我使用任何中文都报错,只能用本文本的文字,通过这个可以避免编码错误导致的报错)--locale=english避免警告:很多时候未定义 未使用 不代表以后不使用,但是老是报告警告很烦,所以就使用该警告例如下边,将警告类型的数字填上就可以了--diag_suppress=177,167......原创 2022-01-31 11:46:55 · 5595 阅读 · 0 评论 -
keil中Option for File,.c文件配置(编译工程.c文件中存在红色减号)
红色减号代表不编译该文件,通过该配置当你有文件不想编译进去,可以暂时给他取消Include in Target Build,取消选择就可以了下边继续介绍该配置右键 第一个选项进入该文件的配置Path:代表文件相对路径File Typr:文件类型Size:文件大小Last change:最后一次修改文件 __DATE__或__TIME__ 可以输出该程序最后编译的日期和时间Assemble SRC File :组装SRC文件Generate...原创 2022-01-31 12:09:42 · 2875 阅读 · 0 评论 -
keil中Option 中 User (keil生成bin)
配置解释:Before Compile C/C++ File: 编译c文件之前Before Build:编译之前After Build/Rebuild:编译之后运行,然后生成bin文件,其中Run #1 和Run #2都可以,一样的功能生成bin文件 ,两种方式相对路径fromelf --bin --output ./OBJECT/STM32_MD.bin /OBJECT/STM32_MD.axf通过语法,建议......原创 2022-01-31 17:01:11 · 5405 阅读 · 0 评论 -
keil选项配置Option-1 (Target)
1.一般是外部晶振,基本有8M 12M 25M等, 最新的版本可能是不支持选中了,主要是keil软件仿真的时候使用2.操作系统选项,keil自带的操作系统,一般选择不用3.系统预览文件,都是默认的不需要设置4.代码编译器,很多时候这个如果你选择了高版本,可能会大量报错,一般5比较适合5.UseMicroLIB:微库,一般是重写串口printf,或者使用其他c库一定要勾选上 Use Cross-Module:跨模块优化 使能链接器反馈文件,从而能够更......原创 2022-01-30 20:52:05 · 10058 阅读 · 0 评论 -
【FreeRTOS】初学者从零开始创建stm32工程(包括带着的FreeRTOS实时操作系统快速入门)
这里的芯片我们以stm32f407举例下载地址:https://www.stmicroelectronics.com.cn/content/st_com/zh/products/embedded-software/mcu-mpu-embedded-software/stm32-embedded-software/stm32-standard-peripheral-libraries/stsw-stm32065.html#get-software固件库网址:https://www.stmi原创 2021-08-28 23:13:31 · 1471 阅读 · 0 评论