- 博客(4)
- 收藏
- 关注
原创 把程序从ROM中拷贝到RAM中运行模块的设计【ARM指令和Thumb指令的区分】
需要一个升级APP程序功能,但是又不想再Bootloader里面做,因为一开始没有设计BootLoader。 所以只能在APP添加一个Update模块了。 Update的逻辑流程如下: Update程序通过串口读取要升级的APP程序数据。
2012-02-19 21:46:07 5806 1
原创 嵌入式中断通信控制的原子操作
关于通信:通信过程一般是原子的,但是通信时不应该关中断。以防止其他中断的丢失。为了保证通信过程是原子的,可以用mutex锁来确保。mutex锁的操作可以封中断。封中断的操作一定要短,一般只是用来修改全局变量用的。保护的是操作权,而不是操作本身。
2012-02-14 19:06:22 1128
原创 Cortex-M3 Flashupdate程序设计的思考
flashupdate程序的一般设计方法是:程序从ROM搬入到RAM中,然后把新的程序烧入到FLASH中去。唯一需要注意的是:flashupdate程序中不能调用ROM中的程序,防止在运行过程中把自己擦除掉。flashupdate是否可以放到单独ROM BANK中?如果flashupdate不把自己搬运到RAM中去,直接在一块ROM BANK中运行。
2012-02-14 19:04:29 1698
原创 Cortex-M3的PendSV中断以及uCOS系统一点思考
uCOS中OSStart函数 |OSStartHighRdy函数会重新设置PendSV中断的优先级,把该中断优先级设置为最低每次时钟中断时(一般为最高优先级),查看是否要进程切换。如果此时有中断嵌套则不进行进程切换,防止破坏进程的空间有些Moto的处理器支持中断处理函数使用指定的栈。对于Cortex-M3架构来说
2012-02-06 18:52:11 7401
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人