以Keil来创建一个TINY工程
1、创建工程文件夹,通过分类管理,方便查找文件,便于管理。
lib:存放库文件,比如RTX51-TINY的配置文件Conf_tny.A51和STC单片机的STC15W4K.H;
listing:存在编译过程中的中间文件,单独放在一个文件中,要不然看着很乱;
ouput:存在输出的.hex文件;
user:存放编程的源文件;
readme:编写的程序说明,以及版本更新记录。
2、选择STC公司的IC的型号;
注意以下配置
XTAL:选择合适的时钟;
Memory Model:选择Small。
Small:变量存储在内部ram里;small模式下,再入函数的堆栈是设在idata中的。
Compact:变量存储在外部ram里,使用页8位间接寻址;compact模式下,再入函数堆栈是设在pdata中的。
Large:变量存储在外部Ram里,使用16位间接寻址。
详见https://blog.csdn.net/chungle2011/article/details/41776611
http://blog.csdn.net/snow416/article/details/6407177
3、加入自己的代码,编译下。没问题的!
#include "rtx51tny.h"
#include "stc15w4k.h"
typedef unsigned char uchar;
typedef unsigned int uint;
sbit LED0 = P6^3;
sbit LED1 = P6^2;
void job0(void) _task_ 0
{
LED0 = 1;
LED1 = 1;
os_create_task(1); //创建任务1
os_create_task(2); //创建任务2
}
void job1(void) _task_ 1
{
while(1){
LED0 = !LED0;
os_wait(K_TMO, 100, 0); //等待(延时)0.7s
}
}
void job2(void) _task_ 2
{
while(1){
LED1 = !LED1;
os_wait(K_TMO, 100, 0); //等待(延时)0.7s
}
}