MMF-12D24DS-RN8
2016/7/19 11:52:08
0 人气:4
- 型号:MMF-12D24DS-RN8
- 数量:100
- 制造商:上海曦龙电气设备有限公司
- 有效期:2017/7/19 0:00:00
MMF-12D24DS-RN8
工业风扇代理销售:
联系人:程先生
手机:139188-64473
手机:139188-64473
QQ:937926739
固话:021-6131-6707
固话:021-6131-8625
为确保49.5兆瓦风电场早日建成并投产运营,张家川县有关部门和乡镇积极配合建设单位做好项目建设用地、协调保障等工作,县委、县政府主要领导和分管领导先后多次召开专题会议,及时深入项目一线办公,研究解决项目建设中存在的困难和问题,为项目顺利推进提供了坚强保障。同时,在工程建设中,三峡新能源公司项目部克服各种困难,积极应对施工过程中遇到的各类难题,不断优化施工方案,调整部署每日工作进度,倒排工期、加班加点,全力确保各项施工任务安全优质高效完成。
张家川县委书记刘长江说,“作为天水市首个风能开发利用项目,三峡新能源张家川一期49.5兆瓦风电场项目的建成,将对加快张家川县能源产业发展、改善县域电网结构、提高电网供电质量、缓解电力需求矛盾、促进民族县域经济社会持续健康发展具有重要的现实意义”。
截至目前,风机吊装完成13台,升压站电气设备和场内基电线路全部安装完成,外送输电线路全面贯 通,到位风机塔筒22套、叶片15套、发电机18台,首批两台风电机组并网发电,运行稳定。其余风机组将于本月底全面完工、并网发电。
三峡新能源一期49.5兆瓦风电场项目的建成,将对加快张家川县能源产业发展、改善县域电网结构、提高电网供电质量、缓解电力需求矛盾、促进民族县域经济社会持续健康发展具有重要的现实意义。各有关职能部门及乡镇要切实增强大局意识和服务意识,全力做好项目建设、协调保障等工作,为项目顺利推进提供优质高效的建设环境。
3. 声明一个内存控制块指针,便于以后对这个内存分区的访问;
内存分区建立后,这个二维数组就被构建成了一个单向链表,每个节点就是一个内存块,它由两部分组成:指向下一个内存块的指针(不能用来作为动态内存来使用)、能够作为动态内存来使用的存储空间;
◇ 内存块分配函数OSMemGet()
用户创建的任务要使用内存分区中的内存块,就必须通过调用内存分配函数来申请;一般的处理方法是:先在用户任务中声明一个void类型的指针和一个INTU8 型变量,然后调用OSMemGet()来从指定的内存分区中申请一个内存块,并把内存块的指针赋给预先声明的void类型指针;接着对INTU8 型变量进行判断,看申请内存块是否成功。如果成功,就可以使用这个内存块中可以用动态使用的存储空间。
◇ 内存块释放函数OSMemPut()
用户创建的任务不在使用申请来的内存块的时候,必须及时的调用OSMemPut()来把内存块释放到相应的内存分区中去。需要注意的是,这个内存块从那个内存分区中申请来的就必须释放到那个内存分区中去,否则会造成系统崩溃;这个用户在编写任务的时候注意就可以避免了;
OSMemGet()和OSMemPut()应该成对使用;
◇ 内存分区状态查询函数OSMemQuery()
调用内存分区状态查询函数可以获取一个内存分区的相关信息,它的实现方法就是把内存分区控制块中的信息拷贝到OS_MEM_DATA的数据结构体中供调用查看、使用;那么大家也许会问为什么我们不直接通过访问分区控制块来获取这个分区的使用信息呢?这就涉及到代码的临界区的问题。试想如果我们直接访问内存控制块中的域的话而没有关中断的话,那么如果时钟节拍到来的时候我们的访问肯定被打断(我们只获取了内存分区的部分信息,还有部分信息没来得及获取),这个时候通过调度准备就绪而且优先级高的任务得以运行,那么前面的任务就得等待;试想现在运行的任务如果对这个内存分区进行操作的话,那么上一个任务获取的内存分区的信息就不一致了,这个可能给我们不可预测的后果;为此在访问内存分区控制块前,我们得关中断,之后我们还得开中断,这个给我们的移值带来琐碎的麻烦!这也就是编写这个函数的原因!
下面就内存管理模块来举个例子:
#define BlockNum 100
#define BlockSize 32
OS_MEM *CommRAMA_Ptr;
OS_MEM *CommRAMB_Ptr;
INT8U CommRAMA[BlockNum][BlockSize];
INT8U CommRAMB[BlockNum][BlockSize*4];
… … … …
void main(void)
{
INT8U error;
… … … …
/*用内存分区建立函数OSMemCreate()把这两块RAM存储空间构建成内存 */
/*区,并把管理这两块内存分区的内存分区控制块的地址赋给两个OS_MEM指针*/
CommRAMA_Ptr=OSMemCreate(CommRAMA,BlockNum, BlockSize,error);
CommRAMB_Ptr=OSMemCreate(CommRAMB,BlockNum, BlockSize*2,error);
… … … …
OSStart();
}
void MyTask(void)
{
… … … …
INT8U Error;
OS_MEM_DATA MemInfo;
INT8U BlkA_Ptr,BlkB_Ptr;
- 电话:13918864473
- 传真:021-61318625
- email:937926739@qq.com
手机扫描二维码分享本页
工控宝APP下载安装
工控速派APP下载安装
评价: | 一般 | ||