毕业论文
计算机论文
经济论文
生物论文
数学论文
物理论文
机械论文
新闻传播论文
音乐舞蹈论文
法学论文
文学论文
材料科学
英语论文
日语论文
化学论文
自动化
管理论文
艺术论文
会计论文
土木工程
电子通信
食品科学
教学论文
医学论文
体育论文
论文下载
研究现状
任务书
开题报告
外文文献翻译
文献综述
范文
GPRS家庭防盗报警系统的设计+流程图(9)
OS_CPU_CM3_NVIC_PRIO_ST = OS_CPU_CM3_NVIC_PRIO_MIN;
/* Enable timer. */
OS_CPU_CM3_NVIC_ST_CTRL |= OS_CPU_CM3_NVIC_ST_CTRL_CLK_SRC | OS_CPU_CM3_NVIC_ST_CTRL_ENABLE;
/* Enable timer interrupt. */
OS_CPU_CM3_NVIC_ST_CTRL |= OS_CPU_CM3_NVIC_ST_CTRL_INTEN;
}
#endif
注释掉(前面加#if 0 ,后面加#endif 即可)。
4. 接着修改os_cpu_a.asm。
由于编译器的原因,要将文件中的PUBIC改为图 中的EXPORT。
EXPORT OS_CPU_SR_Save
EXPORT OS_CPU_SR_Restore
EXPORT OSStartHighRdy
EXPORT OSCtxSw
EXPORT OSIntCtxSw
EXPORT OS_CPU_PendSVHandler
下面这个也要进行修改:
原来:
RSEG CODE:CODE:NOROOT(2)
修改后:
AREA |.text|,CODE,READONLY,ALIGN=2
THUMB
REQUIRE8
PRESERVE8
5. 由于编译器的不同,还需要对os_dbg.c进行修改。
将os_dbg.c中
#define OS_COMPILER_OPT __root
修改为:
#define OS_COMPILER_OPT
6. 因为本系统使用了标准外设库CMSIS中startup_stm32f10x_hd.s作为启动文件的,还没有设置 OS_CPU_SysTickHandler。而startup_stm32f10x_hd.s文件中,PendSV 中断向量名为PendSV_Handler,因此需要把所有出现PendSV_Handler的地方替换成OS_CPU_PendSVHandler。
至此,修改uC/OS-II代码结束。接下去就是编写自己的代码。
3.2.3 编写各用户文件中关于操作系统的部分
1. bsp.c文件
首先定义SysTick定时器。在文件中添加如下所示的函数定义,并在bsp.h中声明这个函数。
void SysTick_init(void)
{
SysTick_Config(SystemCoreClock/OS_TICKS_PER_SEC);//初始化并使能SysTick定时器
}
然后编写开发板初始化函数BSP_Init(),用来设置系统时钟,初始化硬件。如下所示。
void BSP_Init(void)
{
//SystemInit(); /* 配置系统时钟为72M */
SysTick_init(); /* 初始化并使能SysTick定时器 */
LED_GPIO_Config(); /* LED 端口初始化 */
}
2. stm32f10x_it.c文件
在该文件中添加SysTick中断的处理代码:
void SysTick_Handler(void)
{
OSIntEnter();
OSTimeTick();
OSIntExit();
}
3. includes.h文件
includes.h文件是保存全部头文件的头文件,方便理清工程函数思路。
共12页:
上一页
1
2
3
4
5
6
7
8
9
10
11
12
下一页
上一篇:
ZigBee物联网网络数据收集平台设计+流程图
下一篇:
Rockwell PLC在电梯自动控制系统中的应用
冷库GPRS的无线数据采集系统设计
STM32F103RBT6单片机的智能家...
STM32蓝牙技术的家庭照明控制器设计+源程序
STC89C52单片机的红外光控防...
STC89C52单片机的家庭火灾报警系统设计+电路图
STC9C52单片机的家庭防盗报...
RFID防盗报警系统设计+电路图
《醉青春》导演作品阐述
浅谈新形势下妇产科护理...
谷度酒庄消费者回访调查问卷表
国内外无刷直流电动机研究现状
高校网球场馆运营管理初探【1805字】
辩护律师的作证义务和保...
拉力采集上位机软件开发任务书
多元化刑事简易程序构建探讨【9365字】
浅谈传统人文精神茬大學...
中国古代秘书擅权的发展和恶变