如下图所示温度检测模块以单線方式连接了多个18B20(数字温度传感器)作为温度监测点,它将各点温度定时采集后发送给数据传输模块,然后传输模块将这些数据整合為一帧发送到云端...
如下图所示,温度检测模块以单线方式连接了多个18B20(数字温度传感器)作为温度监测点它将各点温度定时采集后,發送给数据传输模块然后传输模块将这些数据整合为一帧发送到云端。
现就以上需求设计一个采用uC/OS内核的系统模型要求如下:
1)实现萣时采集,可以使用uC/OS的软件定时器激发定时器回调,发送信号量激活温度检测任务;
2)单线挂载多个18B20每个18B20有唯一ID值区分,采集单点数據格式为:ID+温度整数部分+温度小数部分可以使用uC/OS的消息队列,温度检测任务每检测一点数据以固定格式发送消息,消息会激活数据传送模块的数据传送任务这个任务判断接收温度数据的个数,当<N(N为挂载的18B20数量)时保存数据到缓存;当>=N时,从缓存区取出全部N组数据整合成一帧并发送出去;
3)所有驱动函数(如:测温、发送网络等)可以使用伪代码代替;
4)发送信号量和消息皆为同一固定格式,请對OSSemPend()和OSQPend()函数进行重新封装成新的函数留有固定且最简的接口(即传入参数);
现就以上需求设计一个采用uC/OS内核的系统模型要求如下:
1)实现萣时采集,可以使用uC/OS的软件定时器激发定时器回调,发送信号量激活温度检测任务;
2)单线挂载多个18B20每个18B20有唯一ID值区分,采集单点数據格式为:ID+温度整数部分+温度小数部分可以使用uC/OS的消息队列,温度检测任务每检测一点数据以固定格式发送消息,消息会激活数据传送模块的数据传送任务这个任务判断接收温度数据的个数,当<N(N为挂载的18B20数量)时保存数据到缓存;当>=N时,从缓存区取出全部N组数据整合成一帧并发送出去;
3)所有驱动函数(如:测温、发送网络等)可以使用伪代码代替;
4)发送信号量和消息皆为同一固定格式,请對OSSemPend()和OSQPend()函数进行重新封装成新的函数留有固定且最简的接口(即传入参数);
能,我以前用ucos-ii移植到8位机驱动128*64的点阵LCD显示电压电流温度等哆个参数。
你对这个回答的评价是
你对这个回答的评价是?