河池学院:msOS系统

广西·河池学院

广西高校重点实验室培训基地

本篇博客来自河池学院:无人机组

2020年8月9日
记录一下本周msOS系统培训内容

msOS系统的显示控件原理及消息机制及推进

事件产生消息(事件驱动编程机制),消息是外设中断或节拍,并且消息只能在大循环中接收。因为中断有优先级,若不能及时获取,有可能会丢失。
消息有16位,高8位,低8位。队列缓存消息,则先进先出。断言是用来判断队列是否满。满了则会报错。处于临界状态时由于中断也有消息,接收消息就会乱。
进程是指正在进行的过程或任务。同一个进程执行两次,是两个进程。进程分为并发和并行。并发只是看起来是同时,其实是单个CPU加上多道技术。并行是同时运行,具有多个CPU。并发可以看做伪并行。

msOSPLC电路乃GPIO口控制(ADC)

使用 GPIO_WriteBit函数(端口号,相应端口的引脚号,Bit_RESET/Bit_SET)
若为参数Bit_RESET,则相应的引脚置0,若为Bit_SET,则相应的引脚置1。
也可以使用BitAction(0/1),(实际上是枚举函数结构)来代替,分别代表置相应的位为0/1。

msOS的存储原理、节拍、串口通讯

ADC的初始化分为两个部分一个是IO初始化,另一个是ADC本身初始化。接着进行DMA设置,进行高速采样。在stm32提高了两到三个ADC端口,对于stm32可以使用DMA做对一个ADC1做高速采样,而ADC2不能使用DMA做高速采样,可以使用节拍或者定时器做低速的采样,这样可以把速度不同的分开,以防止高速的拖累低速的设备,这样两个高低速配合,以调高效率。

DMA把采用过来的数据放到DmaBuffer里面,总共有5路,4路ADC采样和1路温度,深度为8个表示每一路放8个数据。在采用高速的节拍对数据进行处理,在AdcSystick10000Routine函数中是对采用数据进行数据处理,进行了一些滤波操作,这里的滤波是对八个数据做累加求平均值,而对于温度部分在获取到模拟量以后需要进行线性转,映射成温度值。经过节拍滤波后放进寄存器里面。然后把存放在ADC数组中的数据与数据库进行连接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值