历史上的今天
今天是:2025年04月19日(星期六)
2021年04月19日 | MC9S08DZ60移植ucos小记
2021-04-19 来源:eefocus
移植之前一直看了任哲老师的那本书,学习了很多,自我感觉有点基础之后,上手移植,本篇只作为一个新手对ucos在MC9S08DZ60移植的理解。
首先,我的底层是从CSDN网站下载的,百度一下,就会和MC9S12XEP100一起出来。下载之后,由于本人对dz60的内核知识还不是很熟悉,按照自己对ucos的理解,移植之后,出现了很多问题,大致包括两种现象:1、系统在空闲任务里面打转,调度不了;2、系统执行一边我自己建立的任务之后,就无法再进行调度,一直在OSTimeTick()函数里面。
下面主要说一下,我是如何解决这种问题或者说其实是自己理解上的错误。
MC9S08DZ60调度任务,是通过,当中断产生之后,SP指针会指向目前最高优先级任务的起始地址,中断返回后,从最高优先级任务的起始地址开始执行,完成任务调度,这个是通过swi软中断指令实现的,具体调度函数,OSStartHighRdy(),在OS_CPU_A.ASM中通过汇编编写的。中断号为1,中断函数的入口在Project.prm底部设置。
VECTOR 1 OSCtxSw /*swi 软件中断*///
定时任务设置定时器中断,中断时间可以设置位2ms,运行滴答函数OSTickISR()这个中断函数的入口在Project.prm底部设置
VECTOR 11 OSTickISR //定时器中断,重新定义了中断号
如果用的不是定时器中断,中断号应对应的改变;
史海拾趣
|
51读写flash 下面是CYPRESS 68013上的一个读写samsung K9F1G的例子程序, 说明:程序针对mcu:cypress 68013,flash:samsung k9f1g08u,MCU运行于48M,对于其它频率,一些时序常数可能需要修改.程序实现了FLASH的CLEAR,WRITE,READ基本操作. /**** ...… 查看全部问答> |
|
Altera于2008年第二季度推出Stratix® IV和HardCopy® IV器件系列标志着世界上首款40-nm FPGA和业界唯一40-nm ASIC 无风险移植途径的诞生。 Altera 通过三年周密的规划和开发,并与代工线合作伙伴台积电(TSMC)协作,最终获得成功,交付定制 ...… 查看全部问答> |
|
谁给推荐一本wince5.0 bsp开发的书,现在觉得有本书比问人要方便一些;即使很简单的问题问人总也帮不上太多的忙 我现在入门学习wince, 但在怎么编译wince bsp这里遇到了问题. 发了几个帖,也许大家觉得太简单,没有人给个有意义的答案! 那高人们就给推荐一本书吧! 谢谢啊!… 查看全部问答> |
|
各位大哥: 我的全屏输入程序是从定格输入的代码上改的,按理说手写识别之后将识别结果放到焦点的部分应该不受影响,但是现在程序编译可以通过,运行的时候没有焦点注入的效果。 我这儿是在识别线程函数DWORD ThreadProcRecognise( ...… 查看全部问答> |
|
SMART Failure Predicted on Primary Master:IC35L040AVVA07-0 WARNING:Immediately back-up your data and replace your hard disk drive. A failure may be imminent . Press F1 to Continue ,DEL to enter Setup”, 硬盘驱动是怎么重 ...… 查看全部问答> |
|
Public Class ContextMenuHelper#Region \"事件\"Public Event ButtonDbClick(ByVal SubControl As Control, ByVal e As MouseEventArgs)Public Event ButtonClick(ByVal SubControl As Control, ByVal e As MouseEventArgs)#End RegionPublic Sub ...… 查看全部问答> |




