摘要: 定义有三种method,stm32f4采用的是第三种:将当前中断的状态标志保存在一个局部变量cpu_sr中,然后再关闭中断。cpu_sr是一个局部变量,存在于所有需要关中断的函数中。注意到,在使用了该宏的所有函数中都定义了cpu_sr,也就是说在用户自己定义的应用程序中需要是用该宏时也有必要定义这样一个局部边变量。OS_CPU_SR_Save MRS R0,PRIMASK;读取PRIMASK到R0 CPSID I ;PRIMASK=1,关中断 ... 阅读全文
posted @ 2013-10-31 20:25 ideawu 阅读(886) 评论(0) 推荐(0) 编辑
摘要: 从文件角度来看core_cm4.h和stm32f4xx.h分别从内核寄存器和外设寄存器来定义其地址和结构体,是用c语言访问硬件必须的文件,所以这两个文件不论是否带操作系统,都是必须包含进工程的。reset_handler这个中断处理函数首先会设置一下FPU,然后跳转到systeminit进行初始化,然后跳转至main函数。main函数在自己定义的main.c当中,完成BSP初始化,操作系统初始化,创建任务以及开始运行操作系统。BSP初始化中包含的有systeminit,systick_init,GPIO配置,systick_init启动心跳时钟。进入操作系统初始化后,就基本跟硬件操作无关了,基 阅读全文
posted @ 2013-10-31 16:29 ideawu 阅读(5858) 评论(0) 推荐(0) 编辑