点灯大使
码龄5年
关注
提问 私信
  • 博客:28,135
    28,135
    总访问量
  • 24
    原创
  • 1,644,425
    排名
  • 22
    粉丝
  • 0
    铁粉
  • 学习成就

个人简介:还没摸到门的程序员一枚呀~

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:天津市
  • 加入CSDN时间: 2020-03-16
博客简介:

m0_46579704的博客

查看详细资料
  • 原力等级
    成就
    当前等级
    3
    当前总分
    264
    当月
    0
个人成就
  • 获得27次点赞
  • 内容获得5次评论
  • 获得115次收藏
创作历程
  • 1篇
    2024年
  • 8篇
    2023年
  • 15篇
    2022年
成就勋章
兴趣领域 设置
  • 嵌入式
    stm32mcu物联网嵌入式硬件嵌入式实时数据库
  • 硬件开发
    硬件工程fpga开发硬件架构
  • 测试
    集成测试模块测试
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Nordic的NordicSemiconductor.nRF_DeviceFamilyPack PACK包下载路径

内含pack包的所有版本。
原创
发布博客 2024.01.18 ·
693 阅读 ·
9 点赞 ·
2 评论 ·
9 收藏

FreeRTOS--中断管理

异常是指任何打断处理器正常执行,并且迫使处理器进入一个由有特权的特殊指令执行的事件。内部事件(像处理器指令运行产生的事件)引起的异常称为同步异常。异步异常主要是指由于外部异常源产生的异常,是一个由外部硬件装置产生的事件引起的异步异常。
原创
发布博客 2023.02.21 ·
1799 阅读 ·
1 点赞 ·
0 评论 ·
15 收藏

FreeRTOS--内存管理

内存管理的主要工作是动态划分并管理用户分配好的内存区间,主要是在用户需要使用大小不等的内存块的场景中使用,当用户需要分配内存时,可以通过操作系统的内存申请函数索取指定大小内存块,一旦使用完毕,通过动态内存释放函数归还所占用内存,使之可以重复使用(heap_1.c 的内存管理除外)。,Heap_2.c 方案支持释放申请的内存,但是它不能把相邻的两个小的内存块合成一个大的内存块,对于每次申请内存大小都比较固定的,这个方式是没有问题的,而对于每次申请并不是固定内存大小的则。
原创
发布博客 2023.02.20 ·
583 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

FreeRTOS--任务通知

任务通知是属于任务中附带的资源,所以在任务被创建的时候,任务通知也被初始化的,而在分析队列和信号量的章节中,我们知道在使用队列、信号量前,必须先创建队列和信号量,目的是为了创建队列数据结构。任务通知,由于任务通知的数据结构包含在任务控制块中,只要任务存在,任务通知数据结构就已经创建完毕,可以直接使用。任务通知可以在任务中向指定任务发送通知,也可以在中断中向指定任务发送通知FreeRTOS 的每个任务都有一个 32 位的通知值,任务控制块中的成员变量 ulNotifiedValue就是这个通知值。
原创
发布博客 2023.02.19 ·
1140 阅读 ·
1 点赞 ·
0 评论 ·
7 收藏

FreeRTOS--软件定时器

一般系统利用 SysTick 作为软件定时器的基础时钟,软件定时器的回调函数类似硬件的中断服务函数,所以,回调函数也要快进快出,而且回调函数中不能有任何阻塞任务运行的情况(软件定时器回调函数的上下文环境是任务),比如 vTaskDelay()以及 其它能阻 塞任务运 行的函数 ,两次触发 回调函数 的时间间隔 xTimerPeriodInTicks 叫定时器的定时周期。xTimerDelete()用于删除一个已经被创建成功的软件定时器,删除之后就无法使用该定时器,并且定时器相应的资源也会被系统回收释放。
原创
发布博客 2023.02.18 ·
1179 阅读 ·
1 点赞 ·
0 评论 ·
6 收藏

FreeRTOS--事件

可以实现一对多 多对多的同步 一个任务可以等待多个事件发生 可以是任何一个事件发生时唤醒任务进行事件处理 也可以是几个事件都发生后才唤醒任务进行事件处理。通过这个函数任务可以知道事件标志组中的哪些位,有什么事件发生了,然后通过 “逻辑与”、“逻辑或”等操作对感兴趣的事件进行获取,并且这个。事件“逻辑与”则被称为是关联型同步,指的是任务感兴趣的若干事件都发生时才被唤醒,并且事件发生的时间可以不同步。当任务等待事件同步时,可以通过任务感兴趣的事件位和事件信息标记来判断当前接收的事件是否。
原创
发布博客 2023.02.17 ·
1533 阅读 ·
2 点赞 ·
0 评论 ·
5 收藏

FreeRTOS-互斥信号量

某个临界资源受到一个互斥量保护,如果这个资源正在被一个低优先级任务使用, 那么此时的互斥量是闭锁状态,也代表了没有任务能申请到这个互斥量,如果此时一个高 优先级任务想要对这个资源进行访问,去申请这个互斥量,那么高优先级任务会因为申请 不到互斥量而进入阻塞态,那么系统会将现在持有该互斥量的任务的优先级临时提升到与高优先级任务的优先级相同,这个优先级提升的过程叫做优先级继承。当互斥量被任务持有时,该互斥量处于闭锁状态,这个任务获得该互斥量的所有权。当任务释放这个互斥量时,任务失去该互斥量的所有权。
原创
发布博客 2023.02.14 ·
417 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

stm32 L152 段式LCD显示实时时间

下面就是从RTC的TR寄存器中取实时时间 读取出来 取到时分秒的每一位 其中时分秒都被分成两部分 高位和低位 依次去分钟的低位 分钟的高位 小时的低位 小时的高位 显示出来 就可以啦。首先要给段式LCD要显示的数据进行编码 具体编码根据使用的LCD不同而有所不同。因为本文要显示时间 所以编了所有数字的编码(本文用的LCD是收音机专用LCD)编码完成后 要用数组将所有的编码集中起来 方便后面从数组中取到想要用的数字。在RTC中断中 调用显示时间的函数即可。配置完成这两个后直接生成代码。
原创
发布博客 2023.02.08 ·
1473 阅读 ·
1 点赞 ·
1 评论 ·
4 收藏

LCD显示中英文

如何制作字模:为了方便使用,需要制作所有常用的字符的字模 如果程序只需要显示英文 那就制作包含ASCLL码表中所有字符的字模 如果程序只需要显示一些常用的汉字 可以选择制作GB2312编码中所有的字模 而且希望字模数据和字符编码有固定的映射关系 以便我们在程序中使用字符编码作为索引 查找字模。由于计算机只能识别0和1,文字也只能以0和1的形式存在在计算机中 所以需要对文字进行编码才能让计算机处理 编码的过程是规定特定的01数字串来表示特定的文字 最简单的字符编码例子是ASCLL码。
原创
发布博客 2023.02.02 ·
463 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

FreeRTOS--信号量

信号量是一种实现任务间通信的机制,可以实现任务之间同步或者临界资源的互斥访问,常用于协助一组相互竞争的任务来访问临界资源。信号量是一个非负整数,所以获取它的任务都会将整数减一,当该整数值为零时,所有试图获取他的任务都将处于阻塞态,通常一个信号量的计数值用于对应有效的资源数,表示剩下的可被占用的互斥资源数0:表示没有积累下来的释放信号量的操作,且有可能有在此信号量上阻塞的任务正值:表示有一个或者多个释放信号量的操作。 二值信号量既可以用于临界资源访问也可以用于同步功能。二值信号量和互斥信号量非常相似,但是
原创
发布博客 2022.12.03 ·
2545 阅读 ·
1 点赞 ·
2 评论 ·
8 收藏

FreeRTOS--消息队列

队列又称为消息队列,是一种用于任务间通信的数据结构,是一种异步通信方式,实现接收来自其他任务或者中断的不固定长度的消息,任务能够从队列中读取消息,当队列中消息是空的时,读取消息的任务被阻塞,用户可以指定阻塞任务的时间xTickToWait,当队列中有新消息,被阻塞的任务会被唤醒并处理消息。在中断服务程序或者任务中都可以给消息队列发送消息,如果队列未满,会将消息拷贝到消息队列的队尾,当发送紧急消息时,发送的位置时消息队列的对头而不是队尾,接受者就可以优先接收到紧急信息,从而即使进行消息处理。
原创
发布博客 2022.12.02 ·
2652 阅读 ·
2 点赞 ·
0 评论 ·
12 收藏

FreeRTOS—任务管理

每个FreeRTOS任务都有自己的栈空间,当任务切换时,他的执行环境会被保存在该任务的栈空间中,当这个任务再次运行时,直接从堆栈中正确恢复上下次的运行环境,任务越多,需要的堆栈空间越大,系统能运行多少个任务取决于系统可用的SRAM。就绪态,阻塞态,运行态->挂起态:任务可以通过vTaskSuspend()API函数将处于任何状态的任务挂起,被挂起的任务得不到CPU的使用权,也不会参与调度,除非把他从挂起态中解除。任务设计的几点因素:任务运行的上下文环境,任务执行的时间合理设计。
原创
发布博客 2022.12.01 ·
574 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

FreeRTOS的启动流程

在创建任务时,我们需要开启调度器,因为创建任务是把任务添加到系统中,还没真正调度 并且空闲任务(FreeRTOS一旦启动就必须要保证系统中每时每科都有任务执行 并且空闲任务不能被挂起与删除 并且空闲任务的优先级是最低的 以便系统中其他任务能够随时抢占空闲任务的CPU使用权)也没实现 定时器任务也没实现 这些都是在开启任务调度函数vTaskStartSchedule中实现 处理完这些 系统才真正才是启动。在main函数中只需要创建并启动一些任务和硬件初始化。其中Ret_Handle函数的内容。
原创
发布博客 2022.11.30 ·
2020 阅读 ·
0 点赞 ·
0 评论 ·
5 收藏

关于我写完程序我的灯不能闪烁这件事

设置keil5
原创
发布博客 2022.11.29 ·
162 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

FreeRTOS创建动态任务(SRAM动态内存)

/系统所有堆得大小{}else{}其中堆内存的大小为 configTOTAL_HEAP_SIZE ,定义的堆得大小不能超过内部SRAM的总大小。如果是第一次会调用malloc需要将堆栈初始化,设置空闲块列表 方便以后分配内存,初始化完成后会取得堆的地址。LED1_OFF;}}任务必须是一个死循环,我们的AppTaskCreate任务执行一次后就进行删除,不影响系统的运行,所以只执行一次的任务在执行完毕时要记得及时删除。
原创
发布博客 2022.11.26 ·
759 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

差分放大电路及动态分析

甲类:360度导电 甲类功放:不说话时也耗电 不说话时不耗电:将静态工作点降低。加一个镜像的电路可以让两边一起浮动 但是两个Re可以共用一个 于是改成下面的 形式。Re电阻现在的作用变成了原来的两倍 可以将Vbb共用一个。在共模信号的作用下 Re电阻相当于两倍的作用 大大抑制了干扰。在差模信号的作用下 Re电阻相当于消失 进行有效的放大。U0也有两部分:共摸引起的 U0c 差模引起的U0d。对电路中的共模信号和差模信号进行分析。Re电阻过大的时候 VEE就要变大。
原创
发布博客 2022.11.25 ·
3189 阅读 ·
4 点赞 ·
0 评论 ·
26 收藏

多级放大电路的构成与动态分析

T2的基极为0.7 T1的集电极为0.7 T1容易饱和 要提高T1的集电极电位。缺点:调试困难 如果第一个静态工作点发生了漂移 第二个会将这种漂移放大。不能直接将一级电路直接拉出来算 要看前后的联系。优点:静态工作点调试简单 稳定Q点容易。缺点:F低的时候放大效果不好 不易于集成。将放大电路的每一极拆开看 求出Au。耦合方式:直接耦合(模块化看图)优点:低频特性好 易于集成。
原创
发布博客 2022.11.24 ·
248 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

其他CMOS电路(数字电路)

如果输入有如图的变化 那么输出一定会有缓慢的变化 缓慢的原因是因为:前端变化了 CL上面的电压由于电容的存在不能突变 如果原来CL上为低电平 想变为高电平 此时管子已经导通 应该上拉 但是由于电容的存在CL想呈现出高电平 必须要充电 在充电的过程中 电流流过管子的内阻形成的功耗为必然要消耗掉的。如果两个管子断开 会呈现高阻态(高阻态是指虽然在物理连接上是连在一起的但是对外呈现出一种断开的状态)如果两个管子都导通 会出现不高不低的中间电平:一定要避免(在稳定状态时)
原创
发布博客 2022.11.22 ·
157 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

FreeRTOS 创建任务

任务是死循环,但是使用AppTaskCreat任务,执行一次后就进行删除,不影响系统运行。任务中的延时函数必须是FreeRTOS中的延时函数,FreeRTOS 的延时函数会阻塞任务,调度器回切换其他任务,从而实现多任务。内核对象句柄:信号量,消息队列,事件标志组这些都属于内核的对象,要想使用这些内核对象,首先要创建,创建成功后会返回一个响应的句柄,实际上是一个指针,我们后续可以通过这个句柄才操作内核对象。
原创
发布博客 2022.11.21 ·
1200 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

移植FreeRTOS到STM32

FreeRTOS的内核应用如何使用?优先级如何分配以及内部IPC通信是如何使用的?
原创
发布博客 2022.11.21 ·
245 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏
加载更多