打印

大家来接蜜: os 大泻蜜...............................................

[复制链接]
楼主: highgear
手机看帖
扫描二维码
随时随地手机跟帖
81
xd54622| | 2011-11-9 11:30 | 只看该作者 回帖奖励 |倒序浏览
顶一个

使用特权

评论回复
82
刘前辈| | 2011-11-9 12:03 | 只看该作者
顶西安民工!挺好的程序,带来的最普遍的精彩问题——内核如何切换任务。
能修改BUG的才是高手!俺已经修改好了。修改过程中能学到很多东西。

如果一个人一生顺利,讲出故事都不好听。
    如果一个程序没有任何问题,看起来都没劲。



、、

使用特权

评论回复
83
andy1wang| | 2011-11-9 14:26 | 只看该作者

使用特权

评论回复
84
Cortex-M0| | 2011-11-9 15:07 | 只看该作者
学习highgear老师编程思路,平时不玩OS的俺,尝试改写了一下程序。
main_os.rar (30.71 KB)
目标:
1.  将任务堆栈从片内256字节RAM内,移到扩充的外部 64K RAM中。
2.  将最大任务数扩展到127个。
3.  沿用highgear老师的编程思路,不用汇编插入PUSH, POP指令保存中断压栈寄存器,完全自动压栈保护各变量。

测试:
在Keil C51模拟环境下,可通过 uart0 窗口观察效果。
输出一行字符,暂停,任意敲入一个字符,回显一行,依次往复循环。

使用特权

评论回复
85
Cortex-M0| | 2011-11-9 15:25 | 只看该作者
目前存在一个问题,当任务指定几十个时,运行没问题,当任务指定上百个时,模拟运行中,程序会飞掉,原因暂时不详,没查出,将任务堆栈设大些也没用,有兴趣的盆友可帮忙看一看。

使用特权

评论回复
86
xudeyi091004| | 2011-11-9 16:49 | 只看该作者
您还在为了想学习单片机而不知道怎么下手发愁吗?

您还在为开发项目找不好合适的方案发愁吗?

您还在为找不到合适单片机开发板而发愁吗?

您还在为想买开发板却没太多钱而发愁吗? 。。。。


唐山市富和天科技欢迎您!
专业制售低价优质各种单片机开发板,承接单片机项目开发。
免费提供:pdf书籍,技术学习资料,开发工具软件,工程实例,各种单片机模块功能驱动源码。

电子单片机工程师实时在线技术指导支持!学好单片机嵌入式找好工作!前程无忧!学习单片机ARM开发100天自通,
购满100元直降9折!火热促销中。。。欢迎联系我们!
淘宝购买网址:http://rpnt.taobao.com  QQ:849982313  手机:13931553382

使用特权

评论回复
87
Cortex-M0| | 2011-11-9 16:49 | 只看该作者
目前存在一个问题,当任务指定几十个时,运行没问题,当任务指定上百个时,模拟运行中,程序会飞掉,原因暂时不详,没查出,将任务堆栈设大些也没用,有兴趣的盆友可帮忙看一看。 ...
Cortex-M0 发表于 2011-11-9 15:25


问题已查出。

由于任务数量增加,OS监控执行时间增加,而原定时器时间未改,使得中断执行未退出又准备响应新的定时器溢出中断,引起杯具。

将这条宏定义
#define CYCLES_PER_MS  2000
改为
#define CYCLES_PER_MS  4000
问题就解决了~~~

使用特权

评论回复
88
Cortex-M0| | 2011-11-10 07:11 | 只看该作者
继续测试,增加了 32个闪灯任务,由P0-P3模拟跑马灯。

可在Keil C51模拟环境下,通过 P0-P3 输出窗口观察效果。

main_os.rar (50.97 KB)

使用特权

评论回复
89
highgear|  楼主 | 2011-11-10 10:13 | 只看该作者
顶 123 姐姐!

上百个任务,这....., 这哪里是小马拉大车,这分明是小马拉火车。

使用特权

评论回复
90
方文山| | 2011-11-10 10:24 | 只看该作者
只是爱好 可还是不懂
尽管注册时 点击是高级工程师

使用特权

评论回复
91
方文山| | 2011-11-10 10:26 | 只看该作者
最擅长 焊接led灯泡

使用特权

评论回复
92
tuzihog| | 2011-11-10 11:39 | 只看该作者
留名一下好好的研究研究!

使用特权

评论回复
93
li923661521| | 2011-11-10 12:35 | 只看该作者
学习!

使用特权

评论回复
94
Cortex-M0| | 2011-11-10 12:50 | 只看该作者
顶 123 姐姐!

上百个任务,这....., 这哪里是小马拉大车,这分明是小马拉火车。
highgear 发表于 2011-11-10 10:13



呵呵!

这个OS的核心还是highgear老师的OS内核,只是将任务堆栈从片内RAM移到扩展SRAM中,最大任务数:128个(ID: 0-127), 将上述 32个闪灯任务,由P0-P3模拟跑马灯。下载到 LS052Ax (注:LS052Ax单片机片内有64K Flash, 16K SRAM)中运行,一次性通过测试。 :victory:

使用特权

评论回复
95
ssggg| | 2011-11-10 15:54 | 只看该作者
看了一会儿,它实现什么功能啊?

使用特权

评论回复
96
渤海三叠浪| | 2011-11-10 16:03 | 只看该作者
89# Cortex-M0


请问 highgear的  源码 在另一个帖子里面么???

https://bbs.21ic.com/viewthread.php?tid=280183&highlight=

使用特权

评论回复
97
DownCloud| | 2011-11-10 16:13 | 只看该作者
123JJ写得好,学习了。
还是有一个问题,不嵌入汇编,中断里要保存所有寄存器,是不是要故意在中断里使用所有寄存器。

使用特权

评论回复
98
xlsbz| | 2011-11-10 16:16 | 只看该作者
找到源码了!!
请问 楼主和 highgerar   代码有bug 么?

comtexM0 好像非常着急于更新程序  我建议你好好找找没有没bug

基础要打好

使用特权

评论回复
99
xlsbz| | 2011-11-10 16:17 | 只看该作者
highgear的程序写的很规范  

comtex-mo写的程序很不规范    属于初学者水平也不到 :victory:

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
Cortex-M0 + 1
100
21IC之星| | 2011-11-10 16:42 | 只看该作者
100楼
哇哈哈哈

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则