单片机泛泛谈 [社区观点]
“烃烃烃”通过精心收集,向本站投稿了4篇单片机泛泛谈 [社区观点],下面就是小编整理后的单片机泛泛谈 [社区观点],希望大家喜欢。
篇1:单片机泛泛谈 [社区观点]
单片机泛泛谈 [社区观点]
单片机的抗干扰性能历来为大家所重视,现在市面上的单片机就我所接触过的,就有十家左右了,韩国的三星和现代;日本的三菱,日立,东芝,富士通,NEC;台湾的EMC,松汉,麦肯特,合泰;美国的摩托罗拉,国半的cop8系列,microchip系列,TI的msp430系列,AVR系列,51系列,欧洲意法半导体的ST系列。。。。。。这些单片机的抗干扰性能大多数鄙人亲自测试过,所用机器是上海三基出的两种高频脉冲干扰仪,一种是欧洲采用的标准,一种是日本采用的标准;日本的标准是高频脉冲连续发出,脉冲宽度从50ns到250ns可调,欧洲采用的标准是脉冲间歇(间歇时间和发出时间可调)发出,脉宽也是从50ns到250ns可调;我们国家采用的是欧洲标准。
一般情况下,脉冲干扰这一项能够耐受V以上就算不错了(好像我国家电标准是1200V),有些可以达到3000V,于是很多人为此很得意。
单片机在高频脉冲干扰下程序运行是否正常,或者说抗干扰是否通过,有些人以程序不飞掉,或者说 “死机”为标准,有些人以不复位并且程序正常运行为标准。很多情况下,芯片复位程序是可以继续运行的,表面上看的不是很清楚。我一般就看单片机在干扰下是否复位,复位了我就认为不行了。不复位并且程序正常运行当然比复位来说要好了。
好多人看到自己做的电路抗干扰达到2000V或者3000V就很高兴,实际上芯片的抗干扰并不一定就很好。这里我不能不说一下日本的标准,高频脉冲连续发出的形式。别小看一个连续和一个间歇的区别,实际上,大家如果有机会,用日本的'标准测试一下你的芯片和电路,你就会发现,几乎和欧洲标准差别很大很大,采用日本标准你会很伤心,因为大多数单片机过不了!
日本的标准是1600V。上面我提到的十几家单片机:
意法的也就是ST的≥1800
三菱的≥1800
富士通和日立的≥1600V
nec的≥1500
东芝的≥1300V
摩托罗拉的≥1300
三星的≥1300
现代的≥800
microchip的≥700
国半的cop8≥500
avr和51系列≥500
这里没有给出数据的我没有测试过,但是知道EMC的一款28pin的设计上有缺陷(EMC自己人讲的);合泰的据说欧洲标准可以过3000V。
大家对照一下自己用的单片机,看看在什么档次。不过呢谁要是受了打击也不要太伤心,因为我对照过,也有日本标准在5―600V但是欧洲标准可以达到1500V的电路,同样一块板子;这样的情况我遇到好几次了。大多数情况下,如果过不了欧洲标准日本标准也过不了;过得了日本标准欧洲标准偶尔也会过不了。
需要说明的是,很多单片机在高频干扰脉冲下经常复位,但是程序运行好像没有受到影响,如果打到死机,还可以提高1―200V的,日本标准。欧标还会更高。
大家选单片机的时候仔细看一下资料,凡是复位时间在us级的采用日本标准 “会死的很难看”,这就是cop8系列和avr系列怎么努力也达不到日本标准的1000V,avr最多到700V。
单片机的价格嘛,这里我就不用多罗嗦了,ST的最贵,其次是日本的和美国的,下来是韩国的,韩国之后是台湾的。
ST单片机贵在抗干扰性能上,抗干扰性能极好!而且带内置eeprom。Avr的flash+内置eeprom是很好的卖点。不知道大家知道不知道,其实国半也有很好用的flash,价格比avr稍低一点。但是内置eeprom不知道有没有。Msp430系列的特点是a/d,其实16位a/d的单片机大家如果想用便宜的,推荐台湾松汉的一款和三星的一款,价格比msp430的大多便宜。尤其是三星的,16位a/d+flash,超便宜!但是也有前提的,量!开发系统ST的,三菱的,三星的很贵,都在5―6000RMB以上。其他大多在1000到3000之间。
单片机结构方面,我觉得cisc结构的要比RISC结构的要好。Risc结构的指令少,除此之外我看没多少好处了,由此带来的不方便倒不少,为了一个简单的功能几条指令倒来倒去,倒出几十条指令的程序来;而且有的ram要分页,有的rom也分页。编程序跳来跳去,烦透了!cisc结构的指令多,但是也不是很难记,用多自然就记住了,并且结构比较整齐一些,不用操心分页的事情(就算有分页),程序想编到哪儿就到哪儿。
现在我基本只代理和使用三星和合泰的单片机。性价比好。如果大家要用到液晶驱动,我建议大家用这2家的就行了。合泰的flash不多,但是用特殊办法,一个片子也可以烧几次。三星合泰的单片机这一年半载来卖的很猛!除了带液晶驱动之外,抗干扰性能也不错。
相比较而言,三星的单片机比合泰的稍微要贵一些,而且开发系统死贵(但是你可以不用买,代理公司一般会借用给你――要受押金的,哼哼!)!但是三星的有几款单片机实在很好,9454大家用的人不少了吧?9228呢,也不错吧?但是我告诉你,还有比这2款更好的,flash+4*18液晶驱动+10bit的a/d。另外三星还有一款专门用于遥控器的芯片,64pin,4*32的液晶驱动,也很便宜,就算是用作液晶驱动芯片也划算,价格嘛,和2片液晶驱动芯片ht1621差不多的。
但是三星单片机也有不好用的地方,大多是精简指令,一个小功能要你把几条指令用好几遍。
合泰的单片机性能不错,开发系统也便宜,尤其带液晶驱动的几款不妨考虑考虑。
这里说到的一些技术上的问题,很多只是个人经验,大家可以借鉴,技术做久了,各人有各人的特点和长处,有不确切的地方请批评指正!
篇2:游戏社区思考: 不能用泛社交网络的思路去做
由于工作的关系,最近开始关注游戏社区,社区的含义是指相互有联系、有某些共同特征的人群共同居住的一定的区域。网站打造的可互动的环境可以称为一个社区,而用户在社区中的行为称为社交,一群人聚集在一个环境中交流。一直以来都有个感触,对于互联网产品而言,貌似几乎所有的产品都希望搭上社区的概念,有了社交这层意义后不仅意味着有了UGC,而且产品也就成为了一个可以依靠用户自身创造内容而自行循环的系统。社交可以说是产品的翅膀,特别是对于工具类型的产品,当产品的价值发挥到一定程度上之后就会遇到瓶颈,社交会让产品的发展空间更大。所以也就不难理解为什么各个领域的产品都希望搭上社交了,音乐如此,体育如此,游戏也是一样。对于游戏社区,游戏开发商们的试水从来都没有停止过,例如网易、盛大等,游戏开发商都想搭建自己的游戏社区,只可惜这些产品最后都以失败告终,尤存的也是不温不火,即便社区还在,但也已经是人烟荒芜了。
游戏社区的目标用户群体自然是游戏玩家,分析该群体的特征无论是上网时长还是用户的年龄都应该算是优质的互联网用户了,而且游戏玩家也是非常乐于分享的。除此之外,我们还可以列出游戏玩家的很多心理特性,例如攀比心强、喜欢炫耀等,只可惜并不是用户的一个特性就适用于所有的产品的。理想愿景中,游戏厂商是希望借助社交网络玩家之间能够互推游戏,既加深所玩游戏的深度并且增加玩家接触新游戏的可能性。借用豆瓣CEO阿北的说法,各大厂商建立游戏社区也是想利用玩家价值的外部性。玩家在游戏中的停留时间很长,登录频率也很高,完全算得上是活跃用户了。但仔细观察我们会发现,虽然玩家在游戏上花费了大量时间,彼此之间的互动性也很高。可是玩家交流的内容都跟自己在游戏中所处的位置紧密相关,而且这种互动是实时的,玩家在游戏中的互动是由游戏本身需要的,例如他们需要配合才能完成一个副本。这两个因素可以说是玩家高活跃度的基础。玩家在游戏中的群体的组成也是由游戏决定的,人与人之间的聚和也是由游戏中的派系驱动的,同派系的人才会结识到一起。而这种互动的基础只存在于游戏中,出了游戏这个界限互动的基础便消失了。
如果你曾经上过网易、盛大的游戏社区就会发现他们的产品在产品形态上跟人人网、QQ这种社交网站并无差异,用户亦可以在网站中发表言论,上传相册、日志等,不同的只是瞄准了游戏玩家这个群体,所有的内容都希望围绕游戏这个话题。事实证明,用户在社区中的交流很少。对于社区的塑造,一方面在于 的引导,另一方面则是用户自身的维护(其实就是上传的内容)。其实前者的作用效果远不如后者,如果用户自身没有驱动力,社区引导再多也无用,
这里要提到的一个问题就是社区氛围,对社区而言,用户创造内容对氛围的维护很重要,好的社区氛围一来不会偏离发展的方向,第二也会利于引导其他用户创造好的内容。内容的高数量和高质量对于吸引用户,提高用户的活跃度都是有好处的。如果要想社区有很好的氛围,最重要的还是要在发展初期找准目标用户。因为他们有符合社区要求的内容,加上分享心态,自然就会为社区提供好的内容。反之,如果是非目标用户的话,不但无内容上传,也增加了灌水的可能性。
在人人网这种泛社交网络中用户创造内容的动力在于朋友与朋友间的分享,这样一来用户心中分享内容的范围就会更广泛,可分享的内容很多。人人、QQ空间之所以可行的还有很重要的一个前提就是熟人关系,这可以说是用户分享的主要驱动力。可是在游戏社区中并没有建立起强大的熟人关系,原因很简单,你身边的朋友并没有跟你玩同一款游戏,或者说玩游戏的朋友很少而且还不能将其拉入到同一社区中。所以对于游戏社交来说,用户的分享没有明确的受众,也就缺少了动力。同样是新鲜事、日志和相册的功能,你是希望用户截取自己在游戏中的成就还是希望用户写一下自己玩游戏的想法,这并非不可能,只是对用户来说门槛太高,何况游戏玩家群体的整体素质并不是太高。游戏社区中存在的是陌生人关系,如果根据用户在游戏中的帮派以及游戏合作中的共同点来对用户进行引导聚合,倒是一个可以尝试的思路。
虽说用户在游戏的社交网络中活跃度不高,但是用户在游戏论坛中确是非常活跃。论坛也属于社区,可终究来说论坛相比较社交网络来说还是有差异的。论坛是将不同类别的信息聚合,而在社交网络中信息却是分散的。虽然不管在论坛还是社交网络中信息与用户都是一对多对应的,但是在论坛中用户可以查看论坛中的所有信息,而在社交网络中用户只能查看自己好友的信息。二者都有好友关系,但是论坛相比较社交网络来说,信息的组织形态不同,在论坛中会依据版块来聚合信息,这样一来在同等用户数量、同等时间的情况下论坛版块中信息的数量发挥的效用就会超过社交网络。显然,同样的信息在论坛中受众会更多一些。在论坛中即便信息量少,但也是将有限的信息集中呈现给了用户。你可能会说既然这样,可以把社交网络中的内容提取出来集中推荐给用户,这不失为一个不错的办法, 但是怎么把毫无规矩的用户内容提取出来是很有难度的。如果这样做的话,论坛和社交就会变成同一目的地的两个不同路径,一个是用户主动贡献并分类信息,一个是网站自行提取。既然用户有意愿,为什么不使用前者呢!
上文所说的颇有给游戏社交颇冷水的意思,并不是说游戏无社交而言,只是不能按照人人网那种泛社交网络的思路去做。对于游戏社区,需要给玩家过多的引导,这种引导的目的在于给用户提供一个互动交流的起点。这样一来游戏社区就成为了一个强运营的产品,在整个社区中,很难依赖用户自身的行为达到系统自身循环的目的,而且少了一些社交的味道。或许游戏社区还是无法搭建一个人与人之间直接交流的平台,而需借助内容作为人与人之间交流的桥梁。(文:云瑞)
篇3:多CPU单片机系统设计在社区安防系统中的应用
多CPU单片机系统设计在社区安防系统中的应用
摘要:本文较为详细地介绍基于多CPU的单片机系统设计思想,并给出它在社区安全防范系统中的应用。关键词:多CPU 安全防范 系统设计
概述
随着人们生活水平的提高和科学技术的发展,安全防范的问题引起了越来越多的关注。人们在承受现代文明所带来的高效率、快节奏压力的同时,都希望能拥有一个安全、舒适的家庭环境。因此,越来越多的安防产品应运而生,尤其是蓬勃发展的现代化社区物业管理,通过监控网络把家庭和社区值班室紧密地联系起来,给人们的生活带来了极大的方便。但是,有些社区监控网络并不能完全履行其职责,存在一定的安全隐患。主要原因是目前大多数的监控节点都是采用1个CPU完成所有的功能,包括扫描各传输器模块状态、信息处理、数据显示、报警、与上位机通信等等。这无疑给此CPU带来了很大的压力:一旦出现故障,使得此单片机不能正常工作,则该监控节点将完全瘫痪,报警信息将得不到有效的处理。另外,在一些实时性要求较高的多任务系统中,单CPU结构也将显得力不从心。那么,能否找到一种既简单又经济的解决办法,把目前服务器中较为流行的多CPU并行处理的设计思想融入到社区监控网络中来呢?答案是肯定的。随着单片机技术的发展,单片机的价格在不断下降,其价格甚至比一些常用的接口芯片还要低,这就使多CPU的单片机系统的成本大大降低。此外,由于采用多CPU的设计思想,将使系统在并行处理和实时采集数据方面具有明显的优势,能极大地提高系统的稳定性和可靠性。尤其是对一些功能稍微复杂一点的系统,多CPU系统设计方法将更能显示出它的优越性。那么,如何实现多CPU的单片机系统设计呢?本文将在这方面进行一些有益的探索。
(本网网收集整理)
一、多CPU系统的设计原理
顾名思义,多CPU系统就是在1个系统中含有多个CPU。每个CPU独立地处理1个或少量的事务,然后通信某种方法,控制数据的.合理流动,以完成设计要求的系统。其典型结构如图1所示。
从图1中可以看到,多CPU系统中一个非常重要的问题,是如何解决好各CPU之间数据的合理流动问题,以下是几种常用的方法。
1.利用双口RAM实现CPU之间的通信
双口RAM是一种高速的并行传输芯片,是实现CPU之间通信的一种简便有效的方法。常用的CMOS双口RAM有IDT7132、IDT7142等型号。IDT7132和6116类似,都是CMOS静态RAM,存储容量均为2KB。不同点在于IDT7132有两套I/O口,并有一套竞争裁决电路。因此,IDT7132内部的2KB存储器可以通过左右两边的任一组I/O口进行全异步的存储器读写操作,能方便地实现CPU之间的数据交换。采用双口RAM实现多CPU系统的示意图如图2所示。
利用这种方法可以实现数据的高速传输。CPU对IDT7132的读写时间小于120ns,通常为几十ns。当工作电源为+5V时,其读写的最大功耗为325mW,而在维持工作时最大功耗仅为5mW。另外,由于双口RAM是一种通用芯片,因此,它在选择与CPU接口时具有较大的灵活性。不过这种方法也会增加电路设计的难度和成本。
2.利用共享内存的方法实现CPU之间的通信
这种方法与前面的方法类似。所不同的是,前一种方法是利用双口RAM的一套竞争裁决电路实现对RAM的访问,而这里是利用不同的时序实现共享内存的。LON网络中的Neuron节点芯片设计都是采用这种方法的,其典型结构如图3所示。
在Neuron芯片中,每个CPU最小周期等于3个系统周期;每个系统时钟周期等于2个输入钟周期;3个CPU的最小周期分别间隔1个系统钟周期。这样,每个CPU在1个指令周期内部能访问存储区和ALU一次。系统对3个CPU采用了管道技术,在不影响性能的情况下降低硬件的需求。3个CPU可并行工作,不会造成耗时中断和上下文切换。
利用这种方法也能够实现CPU之间数据的高速传输,但是,它必须制成专用芯片,把CPU和RAM等元件封装在一起。因此,这种方法比较适合于特定的工业场合。
3.利用总线的方法实现CPU之间的通信
随着总线技术的发展,使得多主多从的单片机系统设计变得越来越简单。设计者只须通过接口芯片就可以将CPU挂到总线上去,实现CPU之间的通信,其典型的结构如图4所示。
这种方法具有结构简单、设计灵活、经济实惠的特点。在系统数据量不大,速度要求不是很高的情况下,应该是一种很好的选择方法。值得一提的是,在这种方法中,I2C总线以其结构简单、设计灵活、易于扩展和开发周期短的特点,越来越受到设计者的青睐。尤其目前很多单片机都带有I2C接口,不用接口芯片就中以把CPU直接挂到总线上,使得电路设计更加简单、经济。本文的多CPU系统也是基于I2C总线的一种安防系统。
二、基于多CPU下的社区安防系统的设计方法
1.系统的拓扑结构
系统的拓扑图如图5所示。该系统实际上是一个3级分布式测控系统。第1级由1台安装在社会值班室的PC机组成,是整个系统的核心部分。它主要负责向各家庭数据终端(HDT)发出各种命令,接收返回信息,并进行数据库管理和报表统计等工作。第2级由安装在各家庭的家庭数据终端组成,相当于1个监控节点。它主要负责接收PC机发来的命令和向PC机发送各检测模块的检测信息,并进行显示、报警、存储等信息的处理。第3级由安装在家庭各房间的各种模块组成,包括烟感、红外等报警模块,水表、电表等数字模块和家电控制的控制模块。它主要负责检测和控制各控制对象的状态。
2.家庭数据终端(HDT)的功能
家庭数据终端是安装在家庭内部的1个监控节点,主要执行以下任务:(1)接收PC机发来的命令;(2)信息显示;(3)键盘扫描;(4)声光报警;(5)生成家庭状态字节,并向PC机发送各种状态信息;(6)报警信息储存,即“黑匣子”功能;(7)扫描各传感器模块状态。另外,HDT还应个有可添加扩展模块的功能。这些功能当然可以用1个CPU实现,但将给CPU带来较大的工作量,降低了系统的安全性和可靠性。因此,我们采用多CPU的思想进行系统的设计。
根据HDT的功能特点,将任务分成3个部分,分别由3个CPU来完成。各CPU之间采用I2C总线进行通信,其结构如图6所示。CPU-1专门用于与PC机的通信,包括:(1)接收PC机发来的命令,并传送给其他CPU;(2)生成家庭状态字节,向PC机返回信息;(3)进行声光报警。CPU-2专门用于与第3级各模块的通信,包括:(1)扫描各传感器模块的报警状态,并及时通知其他CPU;(2)接收其他CPU传送过来的命令,对有关控制对象进行操作;(3)向AT24C64中存储报警记录,包括报警类型和报警时间,实现“黑匣子”功能。CPU-3专门用于信息显示和键盘扫描,包括:(1)接收PCF8583的数据,显示时间;(2)接收CPU-2传送来的信息,显示报警类型或故障位置;(3)扫描键盘,并向其他CPU发送命令,完成布防、撤防、修改密码等操作功能。在3个CPU之间,采用I2C总线进行连接;CPU选用Philips公司生产的P87LPC76X芯片。P87LPC76X芯片是一种20脚封装的单片机,适合于许多要求高集成、低成本的场合,具有较高的性能价格比,是Philips小型封装系列中的一员。它在提供很多新特征的同时,提供了I2C总线的通信接口。另外,它还提供了3个寄存器和中断控制位以实现对I2C总线的操作,因此,可以很容易地利用它的I2C接口实现多CPU的设计思想。
结束语
随着单片机技术的迅速发展,封装小、功能强、价格低的单片机越来越多地被开发出来。单片机所执行的功能也会越来越专一,越来越简单。这将为多CPU系统的设计提供一个坚实的基础,也必然会提高系统的安全性和可靠性。
篇4:多CPU单片机系统设计在社区安防系统中的应用
多CPU单片机系统设计在社区安防系统中的应用
摘要:本文较为详细地介绍基于多CPU的单片机系统设计思想,并给出它在社区安全防范系统中的应用。关键词:多CPU 安全防范 系统设计
概述
随着人们生活水平的提高和科学技术的发展,安全防范的问题引起了越来越多的关注。人们在承受现代文明所带来的高效率、快节奏压力的同时,都希望能拥有一个安全、舒适的家庭环境。因此,越来越多的安防产品应运而生,尤其是蓬勃发展的现代化社区物业管理,通过监控网络把家庭和社区值班室紧密地联系起来,给人们的生活带来了极大的方便。但是,有些社区监控网络并不能完全履行其职责,存在一定的安全隐患。主要原因是目前大多数的监控节点都是采用1个CPU完成所有的功能,包括扫描各传输器模块状态、信息处理、数据显示、报警、与上位机通信等等。这无疑给此CPU带来了很大的压力:一旦出现故障,使得此单片机不能正常工作,则该监控节点将完全瘫痪,报警信息将得不到有效的处理。另外,在一些实时性要求较高的多任务系统中,单CPU结构也将显得力不从心。那么,能否找到一种既简单又经济的解决办法,把目前服务器中较为流行的多CPU并行处理的设计思想融入到社区监控网络中来呢?答案是肯定的。随着单片机技术的发展,单片机的价格在不断下降,其价格甚至比一些常用的接口芯片还要低,这就使多CPU的单片机系统的成本大大降低。此外,由于采用多CPU的设计思想,将使系统在并行处理和实时采集数据方面具有明显的优势,能极大地提高系统的稳定性和可靠性。尤其是对一些功能稍微复杂一点的系统,多CPU系统设计方法将更能显示出它的`优越性。那么,如何实现多CPU的单片机系统设计呢?本文将在这方面进行一些有益的探索。
一、多CPU系统的设计原理
顾名思义,多CPU系统就是在1个系统中含有多个CPU。每个CPU独立地处理1个或少量的事务,然后通信某种方法,控制数据的合理流动,以完成设计要求的系统。其典型结构如图1所示。
从图1中可以看到,多CPU系统中一个非常重要的问题,是如何解决好各CPU之间数据的合理流动问题,以下是几种常用的方法。
1.利用双口RAM实现CPU之间的通信
双口RAM是一种高速的并行传输芯片,是实现CPU之间通信的一种简便有效的方法。常用的CMOS双口RAM有IDT7132、IDT7142等型号。IDT7132和6116类似,都是CMOS静态RAM,存储容量均为2KB。不同点在于IDT7132有两套I/O口,并有一套竞争裁决电路。因此,IDT7132内部的2KB存储器可以通过左右两边的任一组I/O口进行全异步的存储器读写操作,能方便地实现CPU之间的数据交换。采用双口RAM实现多CPU系统的示意图如图2所示。
利用这种方法可以实现数据的高速传输。CPU对IDT7132的读写时间小于120ns,通常为几十ns。当工作电源为+5V时,其读写的最大功耗为325mW,而在维持工作时最大功耗仅为5mW。另外,由于双口RAM是一种通用芯片,因此,它在选择与CPU接口时具有较大的灵活性。不过这种方法也会增加电路设计的难度和成本。
[1] [2] [3]
【单片机泛泛谈 [社区观点]】相关文章:
2.单片机实习报告
3.单片机的学习方法
4.单片机知识点总结
6.谈谈“观点新闻”
10.单片机实习报告总结






文档为doc格式