HZJ和WOD编程心得体会1(qzm)
日期:2010-7-24 19:02:41 点击:
来源:本站整理
作者:
点击【 大 中 小 】放大字体.
1)复杂的embedded system 用OS是必然的选择
plcjs.技.术_网
2)WOD和MCU之间的连网用RS422是可行的,但如果价格不敏感的话选用更复杂的CAN甚至以太网更为可行,因为低层的联网软件上的开销在复杂的通信时很大,而CAN和以太网在硬件上处理了复杂的网际通信之间的错误检测和恢复,我们要做的只是和它们的接口连接上就行。
P.L.C.技.术.网——可编程控制器技术门户
3)高速通信一定要用DMA,不然就要降低通信的速度(也可选择那些有FIFO BUF并有BUF满中断或IDLE中断的芯片),因为在多线程编程中,高速的轮询某个“资源”的“PM”(编程模型)是个不好甚至可以说是整个系统的稳定性的一个隐患,因为在系统的功能不断扩展时,越来越多的资源会“要求”占用CPU资源,而高速的POLLING是整个系统的瓶径所在!
WWW_P※LCJS_CO※M-PLC-技-.术_网
4)在具有多个并行运行进程的系统中不要使用EEPROM之类的ms级的存储器,而应使用FMRAM。
——可——编——程——控-制-器-技——术——门——户
5) while(1)的线程在每次LOOP之后都应该自动释放资源一定的时间(特别是高优先级的线程),不然会导致低优先级的线程得不到时间片。如果某线程确实不需要os_dly_wait Fun,比如有的线程在开始时会阻塞并等待特定的条件A才运行,这样的线程可能不需要os_dly_wait,但要非常小心,因为当条件A由于某些原因,一直得到满足,从而使线程一直占用CPU时间,那么也会导致低优先级的线程得不到CPU时间。
P.L.C.技.术.网——可编程控制器技术门户
6)用于定义作为定时计数的Timer的优先级不能太低,不然在Task1中一个函数中调用了基于Timer的超时判断,由于一个比Timer高优先级的中断不断地在发生,使得Timer的中断计数比正常时慢很多,这样就会造成实质上超时了,但由于Timer走得慢,变得函数不超时。(5星,极易忽视!!!!!)
WWW_P※LCJS_CO※M-PLC-技-.术_网
P
L
C
技
术
网
|
可
编
程
控
制
器
技
术
门
户
|
十
万
P
L
C
工
程
师
的
共
同
选
择
!
·最新招聘信息
·最新求职信息
·推荐产品
·推荐厂商
深圳秦合源科技有限公司 | | 深圳市秦合源科技有限公司是国内领先的规模较大品种齐全的称重传感器(Loadce...... |
|
|
深圳联脉电子有限公司 | | 公司自1998年创立以来,一直致力于工业控制产品的研发、制造、销售,目前有机房监...... |
|
|
东莞市友诚自动化 | | 本公司专业代理台湾永宏、台达PLC、HITECH人机、特价供应文本显示器MD20...... |
|
|
·栏目热门排行
·站内热门排行
jhgjgjgjjg,S7,FX,自锁,PLC程序,梯形图,D/A,A/D,串口,USB,RS232,电缆,施耐德,Twido,CPM1A,三菱,触摸屏,印刷,计数器,伺服,PID,西门子,安川,欧姆龙,台达,PLC技术,松下,Rockwell,变频,步进,解密,模拟,数字,仿真,STEP7,SIMITIC,通讯,I/O,定时器,指令,现场总线,供水,培训,组态,WINCC,CAN总线,FANUC,数控