abigpad 发表于 2019-12-20 14:38:58

freertos给的例程KEIL4都编译不过,还没入门就要放弃?

本帖最后由 abigpad 于 2019-12-21 09:39 编辑

谢谢大家的建议,我更改一下:
freeos->freertos
ST103->STM32F103
最近想给STM32F103上个操作系统,就选freertos ,找教程9.0版本的资料多,竟然发现带的KEIL 版本,keil4编译不通过,但是你明明用的keil 版本是2。
这个是freertos 的锅,还是KEIL 的锅?

后来发现keil5 能编译通过。
但是我就是不喜欢KEIL5。




下载了FreeRTOSv8.2.2,keil4可以正常编译。先拿这个版本练手了。

fakeCode 发表于 2019-12-20 14:50:24

建议你放弃

dreampet 发表于 2019-12-20 14:57:51

就是把__asm挪个位置的事, 这都弄不明白, 建议你放弃

hyghyg1234 发表于 2019-12-20 15:08:39

ST103 freeos这称呼不知道是从哪来的。

68336016 发表于 2019-12-20 15:56:56

hyghyg1234 发表于 2019-12-20 15:08
ST103 freeos这称呼不知道是从哪来的。

就冲两个名词错的就应该放弃了。

zsmbj 发表于 2019-12-20 16:03:31

直接cube生成代码,自带freertos。完事。

abigpad 发表于 2019-12-20 16:24:25

车停路边被剐蹭,对方逃逸,监控查询到了,怎么处理好?

dreampet 发表于 2019-12-20 14:57
就是把__asm挪个位置的事, 这都弄不明白, 建议你放弃

我只复制了,一部分,我也知道 汇编函数不能内联,但是后面的函数又有汇编,又有c,刚开始用,修改关键代码。

saccapanna 发表于 2019-12-20 16:27:43

CubeMX 可以生成各种开发环境的,稳定性还是非常好的。

abigpad 发表于 2019-12-20 16:28:31

本帖最后由 abigpad 于 2019-12-20 16:33 编辑

hyghyg1234 发表于 2019-12-20 15:08
ST103 freeos这称呼不知道是从哪来的。

ST 103 有多少异议?杠精吗?

ST的103 有错吗?


ST是公司,M 微型电子。

不写M 就 不是 ST 103单片机了吗?

freeos 非得写成 freertos

???

windows7我不可以叫成win7 吗?

abigpad 发表于 2019-12-20 16:31:07

saccapanna 发表于 2019-12-20 16:27
CubeMX 可以生成各种开发环境的,稳定性还是非常好的。

还是不喜欢那个软件,真正的编程序的工程师,都要在代码和工程软件里面可以配置的。改个功能还得用哪个软件生成一次。反而没有省时间,也没省劲。

abigpad 发表于 2019-12-20 16:33:26

hyghyg1234 发表于 2019-12-20 15:08
ST103 freeos这称呼不知道是从哪来的。

那你认识 RTOSDemo.Uv2 这个吗?
这是keil 2的工程文件吧?我专门下载了个KEIL 也编译不过?

abigpad 发表于 2019-12-20 16:39:25

fakeCode 发表于 2019-12-20 14:50
建议你放弃

谢谢,找不到官方KEIL4 能编译的版本,我会放弃freeos的。

abigpad 发表于 2019-12-20 16:41:10

dreampet 发表于 2019-12-20 14:57
就是把__asm挪个位置的事, 这都弄不明白, 建议你放弃

static portFORCE_INLINE BaseType_t xPortIsInsideInterrupt( void )
{
uint32_t ulCurrentInterrupt;
BaseType_t xReturn;

        /* Obtain the number of the currently executing interrupt. */
        __asm
        {
                mrs ulCurrentInterrupt, ipsr
        }

        if( ulCurrentInterrupt == 0 )
        {
                xReturn = pdFALSE;
        }
        else
        {
                xReturn = pdTRUE;
        }

        return xReturn;
}


这个__ASM 挪哪里合适?

abigpad 发表于 2019-12-20 16:43:58

68336016 发表于 2019-12-20 15:56
就冲两个名词错的就应该放弃了。

我从来都是说的st 103 单片机
freertos说freeos。
windows 7 说win7。

hu9977 发表于 2019-12-20 16:55:10

MDK里面可以直接√freetros,然后各种API调用,都不用移植了。

hyghyg1234 发表于 2019-12-20 17:02:01

68336016 发表于 2019-12-20 15:56
就冲两个名词错的就应该放弃了。

他还理直气壮的说出一堆理由,佩服。

矩阵时间 发表于 2019-12-20 17:50:38

同二楼
建议你放弃 +1

fei-lai-fei-qu 发表于 2019-12-20 21:35:50

楼上,各位能不打击吗,我现在单片机也是裸奔,但是系统使用linux,也是来回查找 ,可以做东西吧,这不,单片机也想挂系统,我不明白楼主问题在哪里,可是明年有项目也想把带网络usb的功能加上,那么挂系统就必然了,我做东西都是现做现学,那么问题来了,入门很难吗,或者说非常难吗{:sweat:}

liwei_jlu 发表于 2019-12-20 22:02:26

abigpad 发表于 2019-12-20 16:43
我从来都是说的st 103 单片机
freertos说freeos。
windows 7 说win7。

你自己说没关系,你要与别人交流,总要让人能懂吧?
谁知道你说的是stm32f103还是stm8S103?
所有开源或免费的os都简称freeos

gongxd 发表于 2019-12-20 23:02:16

freeos{:titter:}{:titter:}{:titter:}{:titter:}{:titter:}

Doding 发表于 2019-12-20 23:14:45

abigpad 发表于 2019-12-20 16:31
还是不喜欢那个软件,真正的编程序的工程师,都要在代码和工程软件里面可以配置的。改个功能还得用哪个软 ...

CubeMX配置很方便,不用自己去找各部分的配置代码,改一点配置重新生成也行,直接改代码也行,有简单的工具不用,不也是抬杠吗?

wajlh 发表于 2019-12-21 00:40:50

abigpad 发表于 2019-12-20 16:31
还是不喜欢那个软件,真正的编程序的工程师,都要在代码和工程软件里面可以配置的。改个功能还得用哪个软 ...

CubeMX用过才知道有多爽,自己配置容易出错,而且比较难检查出来。其次是项目修改配置的时候,通过CubeMX非常方便快捷。比如更改个外部晶振的频率,软件里填个数重新生成一下就好了。你要是自己修改代码的话,一堆时钟参数等你改,保不齐最终的串口波特率还不对。

wajlh 发表于 2019-12-21 00:45:00

还有啊,别抱着库和寄存器不放了。技术总是在更新的。真是牛逼的话,C和汇编也别用,直接用机器指令写代码呗。编译器都省了。

zhuisuoji 发表于 2019-12-21 05:10:43

真诚的建议不要放弃~~~以后必成大器~~~

abigpad 发表于 2019-12-21 08:19:30

谢谢大家的建议,新自动化工具,目的是好的,但是也需要一个过程。就WIN7出来了多少年,win7用了什么方法才让大家放弃了XP。
不是CubeMX不用,而是,你做的程序,你要知道每一行用户代码都是干什么用的。只是CubeMX生成的代码不友好。
一般大家用的单片机种类也不多,好多代码底层代码是可以复制粘贴的。

abigpad 发表于 2019-12-21 08:46:55

liwei_jlu 发表于 2019-12-20 22:02
你自己说没关系,你要与别人交流,总要让人能懂吧?
谁知道你说的是stm32f103还是stm8S103?
所有开源或 ...

接受你建议,因为你说的合理。不是抬杠。

Doding 发表于 2019-12-21 10:08:14

abigpad 发表于 2019-12-21 08:19
谢谢大家的建议,新自动化工具,目的是好的,但是也需要一个过程。就WIN7出来了多少年,win7用了什么方法才 ...

应用开发,拿来库直接用就行,不用管库怎么实现的功能,像上位机写程序一样,装好SDK,直接调用API,谁去管API是怎么实现的,操作了哪些寄存器?
库函数的性能达不到要求可以自己实现底层驱动,但又有多少人是把库函数性能用到极致,而不是用错了影响的性能。

xrb2936 发表于 2019-12-22 14:14:35

abigpad 发表于 2019-12-20 16:28
ST 103 有多少异议?杠精吗?

ST的103 有错吗?


好好学吧,freeRTOS 很好上手的;
我自己这边经常写 ST32 + FRT ,自己明白,周边的人也知道我说的是啥,这样写起来少打好多字

hell-prototypes 发表于 2019-12-22 20:04:02

xrb2936 发表于 2019-12-22 14:14
好好学吧,freeRTOS 很好上手的;
我自己这边经常写 ST32 + FRT ,自己明白,周边的人也知道我说的是啥, ...

我们以前叫M32,现在直接叫 M3

dreampet 发表于 2019-12-22 21:13:50

abigpad 发表于 2019-12-20 16:41
static portFORCE_INLINE BaseType_t xPortIsInsideInterrupt( void )
{
uint32_t ulCurrentInterrupt;


把这一块__ASM摘出来,修改成一个__ASM注释的函数再调用即可

abigpad 发表于 2019-12-23 08:04:01

dreampet 发表于 2019-12-22 21:13
把这一块__ASM摘出来,修改成一个__ASM注释的函数再调用即可

谢谢,移植了8.2版本KEIL4 能编译通过,先练手一下,谢谢

abigpad 发表于 2019-12-23 08:05:14

xrb2936 发表于 2019-12-22 14:14
好好学吧,freeRTOS 很好上手的;
我自己这边经常写 ST32 + FRT ,自己明白,周边的人也知道我说的是啥, ...

谢谢,用8.2 版本正在移植。

abigpad 发表于 2019-12-23 08:05:36

hell-prototypes 发表于 2019-12-22 20:04
我们以前叫M32,现在直接叫 M3

这是高手。
页: [1]
查看完整版本: freertos给的例程KEIL4都编译不过,还没入门就要放弃?