- 博客(3)
- 收藏
- 关注
原创 程序一直停在延时函数中
可是发现一个问题,temp=200;这明显不对,因为之前用的芯片编译器都没有把变量给优化掉,就没注意这个问题,现在编译器每次判断时,读取的还是之前缓存的值,而不是当前内存的最新值,相当于这个延时永远都不会结束;在SYS_TIME这个变量前加一个关键字volatile ,这样每次用到这个变量时都会再去内存中重新查询这个值;这样这个延时就正常了;SYS_TIME是在定时器中断中累加的一个值,每ms触发一下;
2025-04-25 13:47:15
404
原创 在UCOSII操作系统下,开发bootloader遇到的问题
一开始我觉得是滴答定时器的原因,因为我这个项目中的延时函数是基于滴答定时器实现的,可能在bootloader的时候,定时器已经开启了,跳转到代码区1之后,可能需要重置滴答定时器,于是我滴答定时器重置了。公司有一个固件升级的功能,也就是OTA升级,我已经写好了OTA的功能,只要bootloader在开机的时候将新的程序搬运到代码区1,并跳转到代码区1,这个功能也就实现了,可是遇到了一个问题,就是代码跳进代码区1之后,便卡死了,经过调试之后发现,代码在任务开启调度之后,任务并没有开始调度。
2024-12-24 09:24:25
321
原创 linux系统编程:进程初步
进程是一个运行着的程序,它包含了程序在运行时的各个资源,进程是操作系统进行调度的基本单位,也是 一个程序运行的基本单位。进程是一个程序一次执行的过程,是操作系统动态执行的基本单元。进程的概念主要 有两点:第一,进程是一个实体。每个进程都有自己的虚拟地址空间,这些地址空间包括代码区、数据区、和堆 栈区。文本区域存储处理器执行的代码;数据区存储变量和动态分配的内存;堆栈区存储活动进程动态申请的内 存和局部变量及函数调用时的返回值。
2024-07-19 09:49:47
1791
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅