usedname

    1.                                  本人暂时还没有收入研究 NUC, 不过: 在对比指令执行速度的时候, 最好把执行的反汇编代码也一并给出.
    2.                                  
      2# IJK   哈哈,你都知道我在做什么了。 一说透,就觉得问题好简单啊,哈哈。也就是仿真也只是仿,和真还是有点差距的。还是要以实际电路为准。 ...
      其实在MCU的调试这个方面,“仿真”这个词翻译的不好,仿真对应Simulator,而STLINK这样的调试器是Emulator,两者的区别还是很大的。
    3. STM32F107的USBHOST问题---INtoken发不出去 57/16245 stm32/stm8 2010-12-10
                                       哎 搞出没 呵呵 我的输入通道一打开就收到NAK中断 这是怎么回事?我设置的模式是控制传输 设置成输入
    4.                                  有VDDA啊
    5. 90%人做错的题目,c#赋值语句 27/9374 stm32/stm8 2010-10-18
                                       C#是微软搞出来的东西,也能用来做嵌入式吗?不知道wince上面有没有用c#,LZ还不如来点C语言的题。
    6. 关于STM32中断多进的问题总结 7/10039 stm32/stm8 2010-07-16
                                         你理解错了,进2次,但不影响应用的。第二次你查不到中断标志
    7.                                  STM32F103C8有4个定时器:TIM1,TIM2,TIM3,TIM4,每个定时器可同时捕捉4路信号, 所以用STM32F103C8能实现同时捕捉16路信号。
    8. 小量程电子秤 4/4410 嵌入式系统 2010-07-01
      (对于精度问题的解决,其实只要使用位数高的AD精度就会高) 精度和分辨率不是一回事。
    9. 不懂,顶
    10. 软件工程专业应届生找不到工作 114/33191 嵌入式系统 2010-06-09
      来我们公司吧 我们欢迎你
    11. 用什么芯片可以代替74HC138? 9/7380 嵌入式系统 2010-06-08
      嗯,控制好输入的脉冲,计数器可以实现!
    12. 基于SST89C58型单片机的远程灯控箱系统 7/3762 嵌入式系统 2010-05-18
      你是用无线远程还是232/485等?
    13. 6410睡眠的问题 22/6898 嵌入式系统 2010-04-27
      恩,过段时间不忙了,准备学习睡眠唤醒,帮楼主顶一下
    14. 请问嵌入式到底学什么? 20/9459 嵌入式系统 2010-04-13
      引用 15 楼 bluepei28 的回复: 引用 14 楼 windriver3 的回复: “认为底层驱动比上次应用有难度,更nb的,都是刚入门不久的菜鸟” ps:引用的,不是我说的。 我是菜鸟,但是我觉得做应用程序完全是软件的东西,不是嵌入式啊, 调用API函数就可以了,不用理解硬件和驱动
      转过来的: 哈哈,既然兄弟你问到了,我就说说,反正这也是个水贴 我是被迫转型的,由于项目变动不得不做应用层开发。刚开始很痛苦,完全提不起兴趣。我之前有着国内大多数初出茅庐的技术小青年的通病:觉得做底层很牛B,做应用开发门槛低,没前途。于是我迷茫啊,消极怠工啊,继续钻我感兴趣的底层,转型3个月后我觉得不能忍受了,于是准备跳去做solaris的 kernel(虽然当时sun已经风雨飘渺了)。后来和几个资深的长辈聊了几次,又没去(主要当时大家都不看好solaris,觉得sun一倒它迟早要被干掉)。 后来我接手两个项目,都是做中间件,我白天coding一个项目,晚上coding另一个。这个时候我态度已经端正了,准备老老实实的做应用开发。这个过程中,我才发现原来应用开发的难度远远超出我之前幼稚的想象。由于之前我没有相关经验,很多问题我根本就不知道业界通用的解决方法是什么。之所以说“业界通用”,是因为在面对一个未知的问题时,我会首先去看已有的、成功的开源项目在解决这个问题时是怎么处理的,而不是自己想当然写出难看的Code。于是我花费了很多开源项目的Code,其间读的很痛苦,因为很多库我都不熟悉,比如glib。做底层的经验给我带来的一个坏毛病是:喜欢钻牛角尖。比如当初我在用glib的event loop的时候,搞不清楚它怎么实现的,于是花很多时间去看glib的code,这耽误了我不少功夫。另一麻烦就是应用开发的很多工具不会用,例如 autoconf/automake/libtool这一套,也花了不少时间学习。总之是个非常艰难的转型,远不是当初想象的底层转做应用就是牛刀杀鸡一样,难多了。 现在转型已经两年了,自己有一些经验。 1. Kernel is not difficult, it's just different 这话不是我说的,忘了是哪位大牛说的了。这里借用这句话,kernel泛指底层开发。说实话,要一辈子吃底层饭,绝对比一辈子吃应用开发的饭简单多了。原因在于底层开发是个收敛系统,应用开发是个发散系统。底层受限于硬件,虽然有不断的新feature,但相比应用层技术的革新,那真是慢太多了。在底层开发,时间越久经验越多,可谓一艺通,百艺精,你在一个子系统的经验很容易扩展到其它子系统。应用开发就不一样了,很多需要专业知识,例如你multi- media搞的再精,也扩展不到语意网搞搜索。此外说底层开发收敛,是说在一个code base的基础上,你要的东西都可以找到。例如你在内核中看到一个函数,就可以在内核中找到实现。而应用开发发散,当你看到一个没见过的函数时,很可能就意味着你要学习一个新的库了。 2.国内大多数搞底层的人,涉及不到架构设计,只是修修补补 这个是现状。当然你的patch被kernel接收,那是很牛的,每年能贡献10几个patch,如果在国内是独立开发者的话那肯定是很有名的人了。但即使这样的牛人,我认为他也无法但当起应用开发中architecture的角色。为什么?他缺乏大型项目的经验。搞底层的code量很小,如果是发 patch,上千行那是非常不得了了,基本上是在改写子系统。通常也就几行、百行左右的规模(当然,虽然code量少,但却是涉及的内容广)。但这和应用开发中的架构设计完全不一样。应用开发没有个几万行(对于小项目)、10万行以上编程经验,拿到一个项目,要做架构设计,基本不可能。考虑的东西太多了,这是应用开发的业务复杂决定的。一开始没设计好,随着代码量的增多,后来改就太麻烦,太难了。特别是做中间件,一开始可能你API文档都release出去了,在实现过程中发现不对,要改,这对使用你库的用户来说简直是不可能接受的。这也是为什么我在做项目前要大量调查已有的开源项目如何解决问题的原因。因为我之前的code量少,没有这种设计经验,所以我不得不大量阅读好的项目的代码,从中学习。 3.应用开发涉及太多的专业知识 例如前面举例的multi-media、语意网。很多时候你要花大量时间学习业务,这和底层学习硬件原理类似。不相同的是应用开发的业务很多没相通性,也就是说你无法重用你之前的经验。而硬件的相通性非常大的。 4.应用开发需要更多的技能 做底层把C搞精,再加个汇编,基本就行天下了。应用层就不说了,不是一门语言能解决所有问题的,不然我也不学C++了。 以上几点是我转型中感到底层转应用的难处。下面说几点好处: 1. 自下而上的学习,比自上而下的学习简单多了 抛开业务,仅从technical的角度讲,底层转应用,可能开始要学习的东西很纷杂,但能很快明白它们内在的机理。因为你有操作系统的知识,你知道系统是怎么运行、程序是怎么跑的,所以你知道哪些事情在现有的计算机体系下可以做,哪些不能;哪些事情是编译器的工作、哪些是操作系统的工作,不会问出“假设我有一个打开却忘了关闭的文件描述符,编译器能不能检测到这条语句,在后面加条语句关掉”之类的问题。如果一开始就做应用开发,又没有刨根问底的精神的话,很容易停留在问题的表面,而忽略了技术背后的实质。 2. 你能写出更好的程序 这也是源于你的操作系统知识,在涉及到效率、性能的问题上时,你知道该如何写出好的程序。 3. 对于应用和内核交互的程序,你会得心应手一些 这是很明显的。 说一个应用开发烦人的地方:当你把架构设计好,业务熟悉后,很多工作就是体力coding,久了烦躁 以上就是我的一些经验。从这次转型,我觉得从对技术的认识上成熟了,不会轻视任何一项技术,也不会觉得任何一项技术是高不可攀的。例如我有个朋友,eeworld的web专家,对我说PHP没什么难的,很容学,门槛低,言下之意没什么意思。但我觉得问题本身不在于这个语言的门槛如何,而在于你有长期的 web经验,加上你熟悉这个语言,于是你可以用它快速的解决问题,你的价值在于你知道很多业务在这个背景下业界如何解决,不在于市面上学习这门语言的人有多少。又比如我以前觉得搞算法的很牛B,高不可攀,但我现在认为只是我们从事的工作不同而已,只要不是搞数学研究的,大部分做算法的还是把现成的、经典的算法加以运用而已,这和懂很多硬件知识没有本质区别。 最后要说的是往应用走比往底层走,路宽些,说俗点就是容易发财些 此外对于很多搞应用的朋友,浮躁的缺点要避免,多把自己的项目搞深入点,不要做的多,懂的少。每做一个项目应该得到得收获是,你知道了业界对于这种项目通用的方案是什么,并且知道细节。当你做的项目多了后,你的经验累积那不得了,可以当consultant了 最后举个我老大的例子,当年我还啥都不懂时他带我出道的。我老大现在移民美国,在硅谷发展,走之前是世界最大存储公司的principal engineer。他底层搞得很深,简历里写“A lot of knowledge in system architecture, such as x86/ia64 architecture, MMU, cache, PCI, power management, ACPI, BIOS, RAS, SMP, IOMMU, NIC and VGA etc..”,上次听在美国的朋友说他感叹说自己的知识面太窄了。由此可以见底层的知识面和应用的知识面纯粹是两个范畴。
    15. 《STM32技术参考手册中文翻译第10版》 93/25516 stm32/stm8 2010-03-31
                                       多谢了~
    16. 交流贴-面向状态的嵌入式开发框架 12/5671 嵌入式系统 2010-03-15
      理想一般丰满,现实过于骨感,楼主加油哦!
    17. 程序无法在SDRAM中调试 46/15242 嵌入式系统 2010-02-03
      Veabol: 按照你说的方法我又试了一遍,之前跑飞的原因是因为在IAR下设置通用代码模式为Thumb,系统从复位执行完汇编级的初始化都是在Arm模式,之后跳转到Thumb模式。“setpc 0”之后是在Thumb模式下执行Arm指令,肯定不对。 现在我把模式都设为Arm模式,按照你说的方法:      setpc 0     sreg cpsr 0xd3(这条命令用ADS试的)     go 不管在JLink还是ADS下,怎么执行都没有问题,都能看到钱4K代码的串口输出。 但是直接下载还是不行:
    18. 急需一个批处理程序 7/2989 嵌入式系统 2010-01-27
      不懂,帮顶,
    19. 谢谢回复 , 想问一下这个跟什么有关系,如果我想做一个虚拟的RGB格式的, 应该做些什么工作, 我是指YUV与RGB有驱动中的不同的地方。 还有,应用程序使用的时候,需要考虑这两种不同格式吗?
      引用 1 楼 huabinsir 的回复: 有些直接有RGB格式。 有些直接有YUV格式。
    20. 求助啊 S3C2440 调试出了问题 14/6435 嵌入式系统 2010-01-11
      这只能慢慢查  复位 晶振,虚焊、串口-------

最近访客

< 1/1 >

统计信息

已有110人来访过

  • 芯积分:--
  • 好友:--
  • 主题:9
  • 回复:61

留言

你需要登录后才可以留言 登录 | 注册


现在还没有留言