⑴ 关于UCOSII的文件包含问题。
“ucosii.h中没包含任何功能函数文件比如OS_TIME.C,”头文件怎么能包含源文件呢?相信刚学C语言的时候,你肯定看到过,从源文件到可执行文件,包括预处理、编译、链接的过程。刚开始学C语言的时候,这些东西不必关注,因为那时我们写的程序都只有一个源文件。你问这个问题,就要了解编译、链接是怎么回事了。以最常见的VC里编译普通可执行文件为例,编译是以工程里的源文件为单位编译的。每个源文件,编译后都会生成一个.obj文件,全局变量、全局函数的定义都在这样一个个的.obj文件里。比如你上面说的OSTimeDly函数,它的定义就会在OS_TIME.obj里。main.c包含了“ucosii.h”,而“卜卖ucosii.h”声明了OSTimeDly函数,那么在编译main.c的时候(注意:编译的时候,是以一个个单独的源文件为单位、独立编译的),编译器只需要知道有OSTimeDly这个函数就够了。在链接的时候,链接器会从其他.obj里找OSTimeDly这个函数,找到了就成功了,型轮逗找不到,则会出现链接错误。注意,是链接错误,而不是编译错误。至于后面的那个文件,有可能是工程设置桐岩的结果,比如可以给整个工程设置预处理命令,提前解析下这些公共的数据类型。
⑵ 为什么周立功的开发板ucos只能创建10个任务
那是他把那个在OS_CFG这个系统配置文件里面的OS_LOWEST_PRIO 设置为10这样,总共有0.1.2.3…共11个任务,但是系统空闲任务为优先级11的任务,估计有统计任务,这样,统计任务为第10个任务,这样用户只能用9个了,要是没统计任务用户可以用10个, 总说你去看看那个OS_LOWEST_PRIO 设置的值。要是63那么他肯定能有64个任务的。
⑶ 怎么在ARM 上移植ucos操作系统
1、编译器我建议用IAR FOR ARM (原因有下面几条 1、外面公司大部分用的都是IAR编译搏粗弯器。2、IAR编宜速度快,而且生成的代码质量比keil高,hex比keil小。3、调试功能不逊于keil)2、至于这么下载到ARM板上,这个你要先把UCOS源代码经过编译器编译,最好能做个测试程序(LED),编译之后,0error 0 waring 。如果你用jlink 可以直接下载到ARM板子里面。如果你是ISP下载的也行,不过启动方式你要修改一基闷下(boot 0,boot 1)3、看到凳漏你说你菜鸟,其实不然,任何高手都是从菜鸟蜕变过来的,期间要经过很多的痛苦。不知道你准备好吃苦没。4、下面说一下我的学习过程吧!1、在开始我也想学习UCOS,不过状况和你差不错。一开始我看到UCOS代码那么长,就怕了。但是我把源代码都打印出来了,课上可下我就看源代码(前提是你要对操作系统有一些了解,其次数据结构基本功要强,因为操作系统基本就是数据结构造出来的(说的有些夸张))2、UCOS源代码看的差不多的时候,你可以到UCOS官网下载一个VC++6.0下移植的代码,然后但不调试,观看代码的工作流程(这个很重要,帮助你了解工作原理)。等熟悉差不错了。你可以到网上下载一个在ARM 中移植的代码,单步调试观看工作流程。3、在网上搜索一下UCOS在ARM中的移植步骤(网上移植基本都可以用,我就是从网上下载的移植文档),按着移植文档一步一步移植,等修改完了,接着调试,然后继续调试,直到0 error 0 waring ,接着下载的板子中,看能不能实现预期的效果。如果不行,还是调试。以上就是我的过程。希望能对你有用。视频教程网上的 卢有亮 就不错。你可以去网上找找。最后,我想给你说的是:“一定不要急,基础打牢了,学什么都很快的,COme on!!”纯手工打出来的,望采纳!!
⑷ stm32 ucosII晶振配置
根据STM32芯片芹漏型号在下图中输入正确的宏定义及相应的启动文件。指携嫌逗烂
STM32F10X_LD STM32F101xx/STM32F102xx/STM32F103xx 16 ~ 32 Kbytes FLASH
STM32F10X_MD STM32F101xx/STM32F102xx/STM32F103xx 64 ~ 128 Kbytes FLASH
STM32F10X_HDSTM32F101xx/STM32F103xx 256 ~ 512 KbytesFLASH
STM32F10X_CLSTM32F105xx/STM32F107xx
⑸ ucosii的config和port怎么添加的
Step2:使用STM32CubeMX快速配置1个LED闪烁的例程,板卡有4个LED,系统时钟配置为72MHz,Systick我们用作UCOS的心跳,另外开启一个定时器作为HAL库的时基。详细配置过程查看附件里面的文档;Step3:生成IAR工程,在其根目录创建文件夹UCOSII,在
⑹ ucosii问题,情况如下
Keil4 STM32 ucosii,警告,#223-D: function "OSMboxPost" declared implicitly#223-D: function "OSMboxPend" declared implicitly这个问题很简单,你的os_cfg.h配置文件中,需要把这个开关打开,#define OS_MBOX_EN 1 /* Enable (1) or Disable (0) code generation for MAILBOXES */
⑺ 单相电机的电容大小如何配置
首先电容电压的选择:耐压公式:U(电容)大于或等于1.5*U;如AC220V的电机,通常使用400V或450V的电容器。其次电容量的选择:单相运行电容公式:C=1950×I/U×cosφ(用一个电容,既是启动电容又是者盯运行电容,电风扇、洗衣机等小容量肆蔽电动机常用)启动电容器容量公式 :C=3500*I/U*cosφ(用一个电容只是启动时投入,正常运行时断开,用转换开关或离心开关切换。双值电容运转电容容量公式 :C=1200*I/U*cosφ(用2个电容,一个负责运行,一个负责启动)双值电容起动电容容量公式 :C=(2~3)*C(运转电容)C:电容容量:I:电机额定电流,U:电动机额定电压,cosφ:功率因数0.7。一般不用计算,按每100W配运行电容2~3μF,起动电容是运行电容的2~3倍。电动机的电容选择对电压要求严格,一定要等于或大于于电动机额定电压的1.5倍以上。额定电压220V电源的,电容额定电压不能低于400V。电容值有一定的宽泛性,大点小点都没有关系,特别是启动电容,可以在工作电容的2-6倍选取。电容量也不能太大,虽然电容量大一点能让电机转速提高,扭矩增首雹和大,但如果选择太大的电容会造成电机电流过大,发热严重从而烧毁电机。比如原来4UF的电容可以加大到5UF,但不能加大到10UF,原则是不能超过额定电容的20%。
⑻ 我想在AVR上跑uCOS-ii嵌入式操作系统
你可以直接建一个工程啊,到时把所有文件加进去。只要到时候修改氏闷誉一下UCOS代码里面底层的一些驱动就可以了。。。你可以去OURAVR上找找别人修改好的,跑一下就什么都知道了。 你可以全部放到一起啊,他是歼段分了很多个文件夹,那是为了找起来方便,你放到一起,调用就行了。。只要修改底层的代码就可以了,多去ouravr上罩中看看吧,那里真的有的啊。
⑼ ucos子任务在删除时系统死机咋回事,重要一删除子任务,系统就死机,
1、进入你的另一个操作系统,也就是你不想删的那个操作系统。然后删除另一个操作系统,直接就可以删。 2、去掉多操作系统启动菜单 解决该问题的方法很简单,右键单击“我的电脑”,选择“属性”,打开“系统属性”对话框芦雹岁,在“高级”标签页点击陪睁“启动和故障恢复设置”按钮,取消“显示操作系肆如统列表的时间”前面的“√”,即可取消启动菜单。如果不知道哪个应该是正确的操作系统的话,可以使用记事本来直接编辑启动菜单配置文件,首先打开记事本,选择“文件”菜单,单击“打开”,然后在文件名中写入C:\\boot.ini,打开它,可以看到:[boot loader]timeout=10default=multi(0)disk(0)rdisk(0)partition(1)\\WINDOWS[operating systems]multi(0)disk(0)rdisk(0)partition(1)\\WINDOWS="Microsoft Windows 2000 Professional" /fastdetectmulti(0)disk(0)rdisk(0)partition(2)\\WINNT="Microsoft Windows 2000 Professional" /fastdetectC:\\="Previous Operating System on C:"]其中multi(0)disk(0)rdisk(0)partition(1)就是指的您第一块硬盘第一个分区“partition(1)”就代表第一个分区也就是您的c盘,partition“partition(2)”就代表第二个分区也就是d盘。参照这个文件,找到删除“partition(1)”或“partition(2)”即可使问题得到解决。