C语言 - 天悬星河
欢迎光临:

单片机C程序优化

Post by 天悬星河 2010-7-25 18:41 Sunday

        转者按:本文转自网络,由于经过多方流传,原作者已不可考,如有涉及版权,请联系 http://www.candura.us 注明版权信息。另,转载也要进行很多诸如排版、改错之类的工作,请另外转载尊重原转载者劳动成果。

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

        单片机C程序优化对程序进行优化,通常是指优化程序代码或程序执行速度。优化代码和优化速度实际上是一个予盾的统一,一般是优化了代码的尺寸,就会带来执行时间的增加,如果优化了程序的执行速度,通常会带来代码增加的副作用,很难鱼与熊掌兼得,只能在设计时掌握一个平衡点。

一、程序结构的优化

1、程序的书写结构

        虽然书写格式并不会影响生成的代码质量,但是在实际编写程序时还是应该尊循一定的书写规则,一个书写清晰、明...

阅读全文>>

标签: 编程 程序 C语言

0

电类专业(自动化、电气、电子、电力、通信等)的大学四年怎么过

Post by 天悬星河 2010-7-7 14:20 Wednesday

这篇文章是在人人找到的,目前能追溯到的最原始的源地址是:http://blog.renren.com/blog/281657796/475930811
但是原文最下面包含一个腾迅的图片,不敢确定这个是否最原始地址,请作者看到后联系http://www.candura.us声明版权,谢谢~
另:转载也需要做排版之类的工作很辛苦的,希望大家也一并尊重转载者的劳动成果!

以下是原文
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

 

        看这篇帖子的,我想都是电子爱好者或电类专业学生。不知道大家都处于什么一个阶段,这篇帖子是写给入门者的,要解决一个问题:初学者应重点掌握什么电子知识,大学阶段如何学习?   先说点貌似题外的东西——3个谬论。  

         谬论一: 高中老师常对我们说,大家现在好好学,考上了大学就轻松了,爱怎么玩怎么玩。这真是狗屁。别的专业我不好说,电气、电子、电力、通信、自动化等电类专业,想要轻松那是不可能地(当然你是天才就另说),专业课上讲的东西对决大多数人来说那是云里雾里,从来都是一知半解,需要你课下大量时间精力地消化。有些东西甚至需要你若干年后在工作中遇着时才回过味:“哦,原来以前学的那东西是干这使的。”你要能想得起,并知道怎么回头去补,就算是上学时专业课学得很扎实了。  

         谬论二: 填志愿时经常有人对我们说:专业不重要,学校最重要,进了个好学校想学什么再学。这亦是狗屁。进了学校,本专业的课程就可能会压得你喘不过气来,还有多少人有时间和毅力选修第二专业?而所学专业几乎就是决定了你今后一生的职业生涯。而学校,说实在话本科阶段我觉得从老师那学到的东西各校间差别不是很大。课上讲的大同小异,课下也不会有什么好老师给你单独指导和点拨,若能遇着,那是你的幸运。越牛的学校的越牛的老师就越忙,不要指望他们会在教学上花多少心思,更不要指望他们对你另眼相看。反倒是一些普通院校的小老师们可能跟学生走得更近,辅导更多些,虽然他们可能水平一般,但对于你大学的学习来说还是足够的。综上所述,我觉得对于一个电子爱好者来说,成为一名普通重点大学的电子系学生比成为北大的哲学系学生更重要。当然看帖的应该大多数都是学电的,那恭喜你,这个专业不错的,虽不是什么“朝阳产业”,但绝对是个“常青行业”。  

         谬论三: 上了大学,可能又有不少人对你说,在大学专业不重要,关键的是学好计算机和英语,这样就不愁找不到好工作了。这也是屁话。你要明确一点:你将来不是纯靠英语吃饭的,也不是做编程、搞软件开发或动画创作的。我是想说:若果你性格偏内向沉稳、肯钻研、爱好电子行业,将来想从事电子设计和研发工作,那你一定要学好专业课。当然英语也很重要,但以后工作中用得多的是你的专业英语,即能读懂英语技术文档,而不是跟别人比你口语多正宗多流利。至于计算机,那就是一工具,不要花太多时间去学photoshop、3dmax、Flash、网页制作等流行软件,这些在你今后的工作中用不着,也会牵扯你大量时间精力。好钢用在刀刃上,多进进实验室多搭搭电路吧。当然,电类学生对电脑也有特殊要求,那就是用熟Protel、Multisim,学好汇编语言、C语言、选学PLD相关软件。任务也是很重的。  

        以上说了3个谬论,下面言归正传吧。那么进了大学,读了电类专业,这4年你该学些什么呢?  

 1. 大一大二(打基础)   

        首先要了解:电类专业可分为强电和弱电两个方向,具体为电力工程及其自动化(电力系统、工厂供变电等)专业属强电,电气工程及其自动化以强电为主弱电为辅,电子、通信、自动化专业以弱电为主。其他更进一步的细分要进入研究生阶段才划分。但无论强电还是弱电,基础都是一样的。  

        首先高数是要学好的,以后的信号处理、电磁场、电力系统、DSP等不同方向的专业课都用得着。  

        专业基础课最重要的就是电路分析、模拟电路、数字电路。这3门课一定要学好。这3门课一般都是大一下学期到大三上学期开设,对大多数对电子知识还了解不多的同学来说,通常是学得一知半解,迷迷糊糊。所以,最好是在开课之前或是开课的同时读一两本通俗浅显的综合介绍电子知识的书籍,对书中的知识你不需要都懂,能有个大致感觉就行。对这这种入门读物的选择很重要,难了看不懂可能兴趣就此丧失或备受打击,反而事与愿违。在此推荐一本《电子设计丛零开始》(杨欣编著,清华大学出版社出版),该书比较系统全面地介绍了电子设计与制作的基础知识,模电、数电、单片机、Multisim电路仿真软件等都有涉及,一册在手基本知识就差不多了,关键是浅显易懂,有一定趣味性。另外科学出版社引进出版的一套小开本(32开)电子系列图书也不错,是日本人写的,科学出版社翻译出版,插图较多,也较浅显,不过这一系列分册较多,内容分得较细。  

         除了看书,还要足够重视动手实践。电路、模电、数电这些课程进行的同时都会同时开设一些课程试验,珍惜这个动手机会好好弄一弄,而不要把它当作一个任务应付了事。跟抄作业一样,拷贝别人的试验结果在高校中也是蔚然成风,特别是几个人一个小组的实验,那就是个别勤奋好学的在那折腾,其他人毫不用心地等着出结果。我只想说,自己动手努力得来的成果才是甜美的,那种成就感会让你充实和满足。游手好闲的,到临近毕业找工作或在单位试用时,心中那种巨大的惶恐会让你悔不当初。这种教训太多了,多少次我们都是蹉跎了岁月才回过头来追悔莫及。除了实验课好好准备好好做之外,许多学校都设有开放性实验室,供学生平时课余自觉来弄弄。珍惜这种资源和条件吧,工作后不会再有谁给你提供这种免费的午餐了。当然有些学校没有这么好的条件,或缺少器件,那同学们就在电脑上模拟一把试验平台吧,就是学好用好Multisim软件。Multisim是一种电路仿真软件,笔者上学时叫做EWB,后来随着版本更新,先后更名为Multisim2001、Multisim7、Multisim8。这个软件可模拟搭建各种模拟电路和数字电路,并可观测、分析电路仿真结果。大伙可以把模电、数电中学习的电路在这软件里面模拟一下,增加感性认识,实验前后也可把试验电路在软件里模拟,看跟实际试验结果有多大差别。可以说,只要你是学电的,这个小软件就是你上学时必须掌握的,对你的学习助益很大。另一个必须掌握的软件那就是protel了。上学时,从小学期的综合设计实验到毕业设计,最后都会要求你用Protel绘出设计的电路原理图和PCB版;工作后,Protel也是你必须掌握的基本技能,部分同学毕业后一两年内的工作,可能就是单纯地用这软件画板子。Protel的版本也走过了Protel98、Protel99、Protel99SE、ProtelDXP、Protel2004的发展道路。Protel99SE、ProtelDXP、Protel2004这三个版本现在用得最多,目前许多学校教学或公司内工程师使用的都还是Protel99SE,当然若作为新的自学者直接从Protel2004学起似乎好一些。综上所叙,作为最基本的EDA(电子设计自动化)软件,Multisim和Protel是所有电类学生在上学时必须掌握的。其他的如Pspice、Orcad、SYstemview、MATLAB、QuartusII等等,需根据不同的专业方向选学,或是在进入研究生阶段或工作后在重点学习使用。那Multisim和Protel好学么?入门应该问题不大,让师兄师姐指导指导,或是找一两本入门书看一看就OK了。这里推荐一本《电路设计与仿真——基于Multisim 8与Protel 2004》(也是杨欣编著,清华社出版),作为这两款软件的入门学习挺不错的,关键是一本书包含了两款软件学习,对穷学生来说比较划算,若是花钱买两本书分别去学这两个软件,就不值了,因为Multisim的入门不是很难。另用Protel画PCB电路板学问挺大的,有必要多看一些技术文档或是买一本高级应用类的图书。  

 2.大三大四(学习专业课,尝试应用)   

        进入大三,就涉及到专业课的学习了,本文只讨论以应用为主的专业课,其他如《电力系统分析》、《电机学》、《自控原理》、《信号与处理》、《高电压》、《电磁场》等等以理论和计算为主的专业课,咱就不多提了。当然这些课对你今后向研究型人才发展很重要,也都很让人头疼,要有建议也只能说是努力学、好好学,懂多少是到少(不过别指望全都懂),以后工作或接着深造用得着时再回过头来接着补接着学,那时有工作经验或接触多了有感性认识,可能学着就容易些了。  

        那以应用为主的专业课又有哪些呢?不同专业方向有不同的课程,很难面面俱到。这里先简单罗列一下,有微机原理与接口技术(也称单片机)、开关电源设计、可编程逻辑器件(PLD)应用、可编程逻辑控制(PLC)应用、变频器应用、通信电路、数字集成电路分析与设计、DSP、嵌入式等等。可能有同学要问:这么多东西,大学阶段要想都学好不容易吧?答案是不仅是不容易,而且是不可能。这些技术每一门展开来都是复杂的一套知识,可以说,你只要精通其中一门,就可以到外边找个不错的工作了。而且在大学阶段,这些课程也不是都要学的,而是针对不同专业方向选修其中几门(具体选哪几门,多研究研究你们各自的专业培养方案,多请教老师),学的时候争取能动基本用法即可,真正的应用和深入是要到工作后的;当然你若很勤奋或有天赋,能熟练掌握某一门达到开发产品的程度,那毕业后找个好工作就轻而易举了。到这里我们需要再明确一点:电子领域知识繁多、浩如烟海,所以一般搞硬件的公司都有较多的员工,一个研发项目是多人细致分工、共同完成的,所以我们经常会听到团队意识这个名词。因为一个人的能力有限,不可能掌握所有的知识。比如一些人专门负责搞驱动,一些人专门从事逻辑设计,一些人专门搞高频无线,一些人专门搞测试,一些人专门设计外壳,一些人专门设计电路板等等。  

 

4 回复:学习自动化专业主要学习哪些 ?  

        看到这里可能有的同学头都大了:那说来说去大学阶段到底究竟应该学些什么呢?说实话写到这里我的头也大了,电子设计涉及方方面面的东西太多了,实在不是一篇文章甚至一本书能说得清楚的。所以我决定剔除这些生涩的课程名目,大致说一下我所认为的一个电类学生或是想要成为电子工程师的自学者应该掌握的基本的专业技能。  

        我认为:除了最初提到的电路分析、模拟电路、数字电路基础知识外,应了解并掌握电子元器件识别与选用指导、基本仪器仪表的使用、一些常用电路模块的分析与设计、单片机的应用、PLD的应用、仿真软件的应用、电路板设计与制作、电子测量与电路测试。  

        电子元器件的识别与使用就不用说了,这是元素级的基础,不过要想掌握好也并不容易,一些电子系学生毕业了,还认不出二极管、三极管实物、分不清电解电容的正负极等等,也不是没有的事。还是一句话,多进进实验室,多跑跑电子市场,多看看书。  

        仪器仪表的使用,大学的实验课中你至少会用过数字万用表,波形发生器、电源、示波器、小电机、单片机仿真机,至少要把这些东西的接线方法和用法弄懂吧。  

        常用电路模块也是包罗万相,各种放大电路、比较器、AD转换电路、DA转换电路、微分电路、积分电路,还有各种数字逻辑单元电路等等,只能说,大致了解吧,并学会怎么去查资料、查芯片查管脚。最基本的,做实验或课程设计中用到的各种芯片要弄熟。  

        单片机,这是应该掌握的。时下单片机种类繁多,但各大小企业用得最多的还是51系列单片机,而且价格便宜、学习资料也最全,故给自学者推荐。当然各学校开课讲的单片机型号会有所不同,没关系,学好单片机编程,学好了一种,再学别的单片机就容易了。  

        PLD(可编程逻辑器件),一种集成电路芯片,提供用户可编程,实现一定的逻辑功能。对可编程逻辑器件的功能设定(即要它实现什么功能)要有设计者借助开发工具,通过编写程序来实现,这跟单片机类似。开发工具可学习Altera公司的Quartus II软件(这是该公司的第4代PLD开发软件,第3代是MAX+PLUS II软件)。编程语言学习硬件描述语言VHDL或Verilog HDL。  

        仿真软件最基本的就是前面说的Multisim了,另外还可学MATLAB。其他的试专业情况选学或是工作后学。电路板设计与制作主要是用Protel软件辅助进行。这在前面已有介绍,读者应该也比较熟悉。  

        最后建议同学们积极与各类电子竞赛赛事,参加一场比赛一个项目做下来,电子设计的一个流程和各环节的基础知识就能串起来了,对知识的融会贯通及今后走向工作岗位都有莫大裨益。

        以上这些东西我说得笼统,深入下去又是一大堆要学的东西。还是那句话,多啃书本、多实践!清华大学出版社有一套“电子电路循序渐进系列教程”是按照上面我所讲的那个思路出的,可惜好像还没出全,现在好像只有《单片机在电子电路设计中的应用》、《电路设计与制板——Proetl应用教程》、《仿真软件教程——Multisim和MATLAB》、《常用电路模块分析与设计指导》几本。另外听听你们老师的意见、师兄师姐的意见,问问他们应读些什么书,当然也不能尽听尽信,翻开一本书我想你先大致看看他讲得是否通俗,自己琢磨着能看懂几分?我想能有5分懂这本书就值得一看了,示自己现阶段的知识情况,太浅显的书不用看了,太深的书也不要去看,看得迷迷糊糊还打击自信心丧失了兴趣。  

        好了,就此停笔吧。本来是要写个书目推荐,可干瘪瘪的罗列一堆书目有什么意义?还是写下这些字,让同学们自己去思考去选择去深入吧,希望能对你们有所帮助。  

        最后一句老生常谈也是我的切肤之痛:大学四年会一晃而过,要学的东西太多太多,不要虚度光阴。及时当努力,岁月不待人!

标签: 大学 抉择 迷茫 程序 C语言

0

纠结的RP问题

Post by 天悬星河 2010-3-11 3:55 Thursday

 

  放假前就在网上盯了一款单片机学习板盯了好久,可是因为一直不方便,所以一直推到这个学期开学了才买。结果RP的悲剧就这样开始了。

  前几天拿到的板子,之所以选择这款板子就是它好在可以直接只用一个USB口就能胜任供电、程序下载的功能,比起最原始的51单片机学习版优势很大。刚收到货,我拿出来小心翼翼的照着测试程序一步一步测试各个模块功能是否正常。后来弄着弄着就出现问题了,下载不了程序,这仅仅是纠结的开始。在QQ上联系客服,申请让他远程协助来测试,结果莫名其妙的能下了。然后断开远程,我自己进行程序下载操作,结果还是弹出错误。后来再次让他在网上远程协助,又能下了。这难不成就是传说中的RP差?!后来摆弄了几次才发现,是我之前下载程序按得太快了,应该缓几秒钟才接电的。之所以在网上用远程协助可以正常下载,就是因为有网络延迟,我接点是已经等待过那几秒了,所以一到网上远程协助就能成功下载。后来在客服的指导下,下载了个最新版本的STC_ISP才解决了这个问题。

  解决完那个问题挺高兴的,毕竟可以开始用,结果过了一会儿又下载不了程序了,用了之前的方法还是解决不了。没办法,后来还是找了客服,在宿舍不像以前在机器人工作室,很多需要的工具材料都没有,检测了半天检测不出问题,后来只好让他再发一块板子过来。今天新的板子到货了,测试了一下,AD模块有问题。晚上详细测试了一下,惊奇的发现老的那块板子又能正常使用了。RP啊,白白多送了一块板子过来,仔细回想,可能是之前更换89C52的时候没有正确插入造成了无法下程序,结果因为这点小失误,白白多做了那么多的无用功,杯具。

  如今,RP问题应该算是得以解决了。之前RP掉了那么多,根据“RP守恒定律”,这段时间会来个RP大爆发,不知道会发生什么好事呢,希望是等下曼联的比赛能顺利晋级吧。唉,真不该在这么晚的时候写东西,写到后面脑乱了就不知说啥了~~

标签: 网络 程序 C语言

0

对大学电科学生的一些忠告

Post by 天悬星河 2010-2-24 16:04 Wednesday

 

  这篇文章是在一个同学的校友里面看到的,里面包含有原文链接,就去看了原文并转了过来。这篇文章原本是写给学自动化的学生的,但是看了它的导读,反倒是对电科最有用。算起来,我好久没更新什么东西,整个寒假就弄了个“挖掘SopCast源地址”的文章,技术含量也不怎么高。高数挂了,今天去医院做胃镜又溃疡,那边她又对我不满,壹号的论坛又被墙……唉,实在没心思写东西了,整个寒假一事无成,就转点文章来冲冲门面吧,另:转载来的文章排版好累的说。

  =-=-=-=-=我是Candura的分隔符=-=-=-=-=

    转载者:Candura(欢迎参观:http://www.candura.us)

    原文链接:http://www.zdh1909.com/html/renwuzhuanfang/539344874860.html

  =-=-=-=-=我是Candura的分隔符=-=-=-=-=

  敬请留意:本忠告对工科的电子类专业(如:电子科学与技术、电子信息科学与技术)、机电类专业(如:自动化、电气工程及其自动化)等专业同样适用。

一、计算机学习:

大一: 
  1、Visual Basic:最适合入门的计算机语言,可功能很强,而且用起来无比方便。对我们测控专业的学生来说也很实用,可以在以后的各种与计算机相连的项目中用来设计界面。但不宜过于深入,掌握基本的东西,能做基本的界面即可。还应注意其在数据库程序设计方面的用法。 
  2、C语言:这个基本不用介绍了,可以说它之于我们测控就如嗓子之于歌唱家。你说你能不好好学学吗?强烈建议精通! 
  3、业余适当学习一些业余软件,费时不多,受益多多,比如:Photoshop、Flash等等。这些东西对以后的工作和生活都有很大帮助,但请记住我们的方向,不要沉迷,不要过于深入。 
  大二: 
  1、MATLAB:理工科学生不可不知的软件,功能实在是无比强大,因此也就很难掌握。但需注意与自己专业相连,因此我们重点学习其在数值计算、信号处理、控制系统设计等方面的应用。(配套课程:《高等数学》、《线性代数》、《信号与系统》、《自动控制原理》等) 
  2、Multisim:主要用于电路仿真,当我们学习数电、模电时如果能用其模拟一下课本或作业中的电路,绝对会对我们的学习有不小的帮助。而且操作简单,结果直观,实乃精品。(配套课程:《电工学》、《数字电子技术基础》、《模拟电子技术基础》等) 
  3、LabVIEW:又一款测控专业所不可不知、不可不学的经典软件,很多电子工程师都在用它来帮助提高自己的工作效率。相信每一个用过该软件的人都能真正体会到软件编程的快乐。(配套课程:《数据采集》、《自动检测系统》等) 
  4、Protel:制作电路板的最经典和最为普及的软件。为了我们以后的发展,为了以后设计系统以及做各种项目的需要,此软件我们必不可少。(配套课程:《电路CAD》) 
  大三: 
  1、单片机:如果我们测控专业需要吃饭,那可以毫不夸张地说这就是我们的饭碗所在!测控专业的核心也正在此,如果你想找一份好工作,想幸福地生活,单片机你不能不精通。当然,此处我们默认是指课程中广泛学习的MCS-51系列单片机。(配套课程:《单片机基础》) 
  2、Keil C:学习单片机除了课本上的汇编语言以外,很明显,我们更重要的还要精通单片机开发的C语言,而学习用于单片机开发的C语言,我们当然离不开Keil C!(配套课程:《单片机基础》) 
  3、Proteus:我们学习单片机最需要的是什么?当然是开发板、编程器,然而这些东西价钱又不是那么便宜,对我们学生来说是一笔不小的负担。很多学生都会被学习单片机的昂贵的开销所吓怕。然而,当你拥有了这款软件,你就会很惊奇的发现那一切都将成为历史;你会发现你所要的、甚至你没有想到的,它都提供给了你。这么一款神奇的软件,我们能够拒绝吗?(配套课程:《单片机基础》) 
  4、AVR、PIC等:单片机种类繁多,而课本只给了我们一种,很显然这是不够的,我们需要了解更多的东西。那么这两类单片机绝对不能错过,它们都是极为经典的并且在工业中得到广泛应用的优秀单片机。 
  大四: 
  1、DSP:和单片机差不多的一类东西,但与单片机的应用方向不尽相同。为把自己打造成一个复合型人才,这些知识当然也就不可缺少了。 
  2、ARM:它占领了32位单片机几乎8成的份额,而且,你能容忍自己直到32位单片机广泛应用时才去学习它吗?我们当然要事先做好准备、迎接挑战! 
  3、SOC、CPLD、FPGA等:作为一个立志要有所作为的学生,这些当前电子应用中的前沿知识你能错过吗?那么还等什么呢,趁着这大学里的最后时光,猛学一段吧! 
  4、综合应用你所学的这些东西,务必要注意动手,可以适当开发一些东西(事实上大三就可以开始了)。当然,这个不是一时的冲动,你完全可以在从大三开始的各种电子设计竞赛中就一展身手了。而且,这当然会为你的工作和学习增加很重的筹码!


二、证书认证:
  大一: 
  全国计算机等级考试二级(鉴于C语言在本专业实际应用中的重要性,所以建议考C语言)。 
  大二: 
  CET4、CET6(我们学校大一不让考,所以你就要拖到大二考了,但要注意一次必过,不能耽误后面的宝贵时间)。 
  大三: 
  1、全国计算机等级考试三级PC技术(这个最好在你大三下期的四月考,因为此时你刚刚学习过微机原理与汇编语言,刚好可以顺手拿个证书)。 
  2、GRE(或者雅思、托福都行,如果你准备出国,或有类似想法,此时来考是最好不过的了)。 
  大四: 
  全国计算机技术与软件专业技术资格(水平)考试(如果你感兴趣,此时可以考这个,而且好像也比较流行和实用)。

 

三、参加竞赛:


  大一大二: 
  比较适合的竞赛好像还都没有,也没有实力去参加,在此只推荐一个:全国大学生英语竞赛(如果英语不错的话可以在大学期间多参加几次,是个不错的锻炼机会,而且如果获得了名次的话还会有一定的奖励,可谓名利双收)。 
  大三: 
  1、全国大学生数学建模竞赛:这个我觉得只要是理工科的学生都应该参加一下,那种经历非亲历所不能述也;既锻炼了解决问题的能力以及自学新知识的能力,还锻炼了你的团队精神(不过可要找个好同学做伙伴啊)。如果学校也举行校级数模竞赛的话,可千万也别错过,绝对物超所值。 
  2、学校里面自己举行的电子设计竞赛,当然你也要留心哦,可不能错过这等好事,这可都是以后学习或工作的资本哦。 
  3、另外,如果你对大学生英语竞赛继续感兴趣的话,推荐你可以继续参加(挣钱哦^_^)。 
  大四: 
  1、全国大学生电子设计竞赛:如果你幸运的话,应该会赶上,它在单年份举行(如2007年9月。不过我好遗憾,错过了这么好的东西,唉。)相信有了你大三的扎实基础以及校级电子设计竞赛的磨练,此时肯定信心十足了吧,羡慕ing。 
  2、全国大学生“挑战者”杯创业大赛:对我们专业的学生来说,当然主要就是用创造发明来进行创业或参加竞赛了。比如你可以充分发挥你的想像力搞个小发明,或者你可以充分利用你所学的知识搞个项目。 
  3、各大电子或半导体企业举行的电子设计竞赛:如Intel的嵌入式设计竞赛、ST-Embest的嵌入式电子设计大赛、ADI的ADI大学生创新设计竞赛等等。这些无不是我们练兵的极佳舞台,而且奖励丰厚,通过参加这样的竞赛,我们一方面能够了解前沿信息,另一方面还能够和前辈们站到一块,相互交流,从而提高我们的水平。你说何乐而不为呢! 

=-=-=-=-=原文至此,下面为个人感想=-=-=-=-=

其实,我觉得,对于我们来说。文章里面的关于大三的单片机学习还有Keil C的应用,完全可以尽早开始,而且结合起来一并学习。尽管在大三之前不一定会学习到汇编、ARM这些东西,但是对于单片机编程实验来说,一块51单片机的学习版成品和一个Keil C就足够了。完全可以尽早学习,顺便巩固C语言在单片机编程中的应用。里面的很多软件应用比如Protel这些,并不需要有很高深的专业技能才能学的,完全可以利用平常使用电脑的时间来入门。可能入门的时候你不会根据专业技能来布线、来设计,但是可以用来熟悉软件的功能应用,比起日后在学能更好的上手。

前两天翻家里电脑的硬盘,找到了好多以前参加比赛的时候写的机器人程序。只不过以前使用图形化的编程环境来写,现在重新直接查看C源码,其实也就是那么回事。说真的,学习编程语言不难,难就难在如何把这些东西应用出来。可以应用到电脑程序,可以应用到网页程序,也可以应用到单片机中。其实,学习这种应用性很强的东西,想象力和实践最重要!

(个人拙见,望指正。http://www.candura.us

标签: 游戏 编程 C语言

0

被C语言杯具掉了!

Post by 天悬星河 2010-1-5 15:54 Tuesday

 

  今天上午我们C语言考试,本来呢,我们班大部分同学都是初次接触C语言编程。所以我以为不会考太难的题目,顶多是从书上的原题做些变化给我们抽来做。于是我复习的时候也就是把所有题目做了一遍,结果今天杯具掉了。。。

  考试的方式是,每个人从老师那里抽一道题,题目有难有易,一切看RP。结果!结果!我抽到这样一道题“以行为单位对行中以空格或标点符号为分隔的所有单词进行倒排。最后把已处理的字符串(应不含标点符号)仍按行重新存入字符串数组xx中”,杯具啊!关键是我们考试不是编一个程序传上去,而是调试好之后把源代码抄到信笺上交上去,光抄就够抄一节课了。

我写出来的源代码,要抄写出来,足足抄了满满的五张纸。

  后来上网查了一下原题,是这样的:“函数ReadDat( )实现从文件IN.DAT中读取一篇英文文章存入到字符串数组xx中; 请编制函数StrOL( ), 其函数的功能是: 以行为单位对行中以空格或标点符号为分隔的所有单词进行倒排,同时去除标点符号,之后把已处理的字符串(应不含标点符号)仍按行重新存入字符串数组xx中。最后main()函数调用函数WriteDat()把结果xx输出到文件OUT6.DAT中。”题目是源自09年计算机三级网络技术上机题库《南开100题》上面的。

  我就郁闷啊,普通的考试而已,竟然用这种题目,太操蛋了。。。

标签: 编程 程序 C语言

0