搜索
bottom↓
回复: 49

高手指导 单片机初学者

[复制链接]
头像被屏蔽

出0入0汤圆

发表于 2012-8-11 22:17:40 | 显示全部楼层 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

发表于 2012-8-11 22:19:38 | 显示全部楼层
hi,我是软件出身,软件工程专业,我觉得学软件和硬件一样吧,就是要长时间的泡在里边,慢慢的悟,多看,多想,多实践吧!
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2012-8-11 22:26:52 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2012-8-11 23:21:34 | 显示全部楼层
呵呵 不要好高骛远 相信什么十天 21天,三个月就学通单片机的宣传
基础掌握之后,从一个简单的产品开始做起

出0入0汤圆

发表于 2012-8-11 23:26:20 来自手机 | 显示全部楼层
我是全自学的  以前我也跟你一样    多写代码多看数据手册   写多了就熟悉了      加油

出0入0汤圆

发表于 2012-8-12 15:14:34 | 显示全部楼层
大伟电子 发表于 2012-8-11 22:26
呵呵,咱俩中和中和好了,嗯一点头绪都没有啊。

呵呵,好啊!

出0入0汤圆

发表于 2012-8-12 15:41:58 | 显示全部楼层
= =我和LZ反过来。
我是从软件方面过来的。。。

编程什么的思路都有,代码看上几遍,就基本能写出来。

但= =都是在开发板上。
自己焊的板子就不灵了。电阻选种有时选错啊什么的。。。硬件知识不牢,也是看郭的视频,这段时间就在学protel和仿真软件,从流水灯慢慢画。
LZ,咱们一起加油吧~
画点时间专门练下C吧~
然后再看下数据结构,再学点算法,去北大poj上练些题,我觉得应该就能熟了- -
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2012-8-13 22:39:43 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2012-8-17 19:40:40 | 显示全部楼层
刚开始多看别人的程序,我也是看郭的视频过来的,把他书后面比较综合性的小项目亲自动手做一遍,编程可以看看我发的这个编程模板http://www.amobbs.com/forum.php? ... p;page=1#pid6039445 或许会对你有点帮助

出0入0汤圆

发表于 2012-8-17 22:28:14 | 显示全部楼层
  还是学生嘛!先把电子线路的基础学好吧!

出0入0汤圆

发表于 2012-8-17 23:06:01 | 显示全部楼层
说一下自己的经验吧
1.首先要有模电数电的基础,楼主自称很熟悉硬件了,那么我问一个简单的问题,74hc138想如果输出0x01,那么各个引脚应该是怎么样的。如果你明白,那么我觉得明白595也是一件很简单的事情。
2.要有软件思想,至少要有模块化概念,自行百度林锐博士,然后把他的那几本电子书看看完。。。
3.iic,Uart,串口,spi等等其实都是很简单的,关键是要能够理解时序图,这个的话。。。我是看看看看然后某一天突然有感觉了,建议一开始的时候不要完全自己写这些子程序,因为这些都是非常标准的,比如说iic,你可以去网上找一个,然后对照着时序图看,iic的协议的话,周立功有翻译的。。。。
4.多看程序,多调试程序,还有就是多利用Proteus,之前一直觉得这个软件很麻烦,但是后来发现很好,建议买本书。。。。不要网购,去数电好好找找,不要买那种教你仿真的。。。
4.如果还是觉得很难的话,可以看看金沙滩的板子的视频,感觉还可以。。。

出0入0汤圆

发表于 2012-8-17 23:07:09 | 显示全部楼层
还有就是学会画流程图,建议楼主把看过的所有的程序都画一个流程图。。。。

出0入0汤圆

发表于 2012-8-18 21:55:08 | 显示全部楼层
还有就是推荐一本书,非常经典,建议买一本《8051微控制器》,是图灵出版的。。。。名字应该没错。。。之前在看。。。秒杀国内所有的教材,我说的没错,是秒杀啊~~~~

出0入0汤圆

发表于 2012-8-18 22:13:18 | 显示全部楼层
seazhui 发表于 2012-8-17 23:06
说一下自己的经验吧
1.首先要有模电数电的基础,楼主自称很熟悉硬件了,那么我问一个简单的问题,74hc138想 ...

138不是低电平有效的吗,怎么可能输出0x01,

出0入0汤圆

发表于 2012-8-18 22:18:49 来自手机 | 显示全部楼层
其实51里,有很多东西可学,真的做到精通了,也需要时间的积累。

出0入0汤圆

发表于 2012-8-18 23:53:46 | 显示全部楼层
我感觉还是要多做实践,

出0入0汤圆

发表于 2012-8-19 09:54:58 | 显示全部楼层
同是电子爱好者,自学中,没事就上论坛转转(这里的高手真多)。

出0入0汤圆

发表于 2012-8-19 11:03:30 来自手机 | 显示全部楼层
我认为多做工程,开始改例程,以后熟了就可以自己做了,主要是要有想法…

出0入0汤圆

发表于 2012-8-19 13:17:58 | 显示全部楼层
y574924080 发表于 2012-8-18 22:13
138不是低电平有效的吗,怎么可能输出0x01,

。。。。。。。好久没看了。。。。忘记了。。。。
囧了。。。。

出0入0汤圆

发表于 2012-8-19 13:34:21 | 显示全部楼层
seazhui 发表于 2012-8-19 13:17
。。。。。。。好久没看了。。。。忘记了。。。。
囧了。。。。

哈哈,我最近正在和74系列的在纠缠~~

出0入0汤圆

发表于 2012-8-19 13:36:18 | 显示全部楼层
y574924080 发表于 2012-8-19 13:34
哈哈,我最近正在和74系列的在纠缠~~


这类芯片只要能看得懂真值表就可以了。。。其实是挺简单的,只是每次看的时候都很烦。。。。我记不住。。。然后每次都切来切去。。。好麻烦。。

出0入0汤圆

发表于 2012-8-19 13:40:33 | 显示全部楼层
seazhui 发表于 2012-8-19 13:36
这类芯片只要能看得懂真值表就可以了。。。其实是挺简单的,只是每次看的时候都很烦。。。。我记不住。。 ...

我也是记不住,

每次用的时候,对着数据手册,连接好IO口,取个容易记的名字,就不管具体位置了

出0入0汤圆

发表于 2012-8-19 13:41:17 | 显示全部楼层
慢慢学学

出0入0汤圆

发表于 2012-8-19 13:44:22 | 显示全部楼层
y574924080 发表于 2012-8-19 13:40
我也是记不住,

每次用的时候,对着数据手册,连接好IO口,取个容易记的名字,就不管具体位置了 ...

我现在的解决方法是搞个双屏。。。。。

出0入0汤圆

发表于 2012-8-19 13:46:10 | 显示全部楼层
seazhui 发表于 2012-8-19 13:44
我现在的解决方法是搞个双屏。。。。。

两个液晶屏 ???

出0入0汤圆

发表于 2012-8-19 13:48:02 | 显示全部楼层
y574924080 发表于 2012-8-19 13:46
两个液晶屏 ???

两台显示器啊~~~我的笔记本+台式机的显示器。。。我的笔记本是12.5寸的。。。。

出0入0汤圆

发表于 2012-8-19 13:53:57 | 显示全部楼层
seazhui 发表于 2012-8-19 13:48
两台显示器啊~~~我的笔记本+台式机的显示器。。。我的笔记本是12.5寸的。。。。 ...

好爽啊

两个显示器可以显示 不同内容吧?

出0入0汤圆

发表于 2012-8-19 13:58:25 | 显示全部楼层
y574924080 发表于 2012-8-19 13:53
好爽啊

两个显示器可以显示 不同内容吧?

是的。。。

出0入0汤圆

发表于 2012-8-19 14:00:25 | 显示全部楼层
seazhui 发表于 2012-8-19 13:58
是的。。。

怎么设置的?

还有切换两个显示屏有什么不同?

出0入0汤圆

发表于 2012-8-19 14:02:28 | 显示全部楼层
y574924080 发表于 2012-8-19 14:00
怎么设置的?

还有切换两个显示屏有什么不同?

xp下我不知道,win7下的话,你按win+p就可以了。。。还有一些具体的这只比如说那个屏幕作为主屏幕等等可以去屏幕分辨率里面设置。。。

出0入0汤圆

发表于 2012-8-19 14:03:21 | 显示全部楼层
seazhui 发表于 2012-8-19 14:02
xp下我不知道,win7下的话,你按win+p就可以了。。。还有一些具体的这只比如说那个屏幕作为主屏幕等等可 ...

嗯嗯,到时候看看能不能从同学那里弄一个屏试试

出0入0汤圆

发表于 2012-8-19 14:05:39 | 显示全部楼层
y574924080 发表于 2012-8-19 14:03
嗯嗯,到时候看看能不能从同学那里弄一个屏试试

在哪里读书啊?

出0入0汤圆

发表于 2012-8-19 14:08:13 | 显示全部楼层
seazhui 发表于 2012-8-19 14:05
在哪里读书啊?

广州花都啊~~~~~~~

出0入0汤圆

发表于 2012-8-19 14:11:08 | 显示全部楼层
y574924080 发表于 2012-8-19 14:08
广州花都啊~~~~~~~

好远啊~~~~

出0入0汤圆

发表于 2012-8-19 14:15:27 | 显示全部楼层
seazhui 发表于 2012-8-19 14:11
好远啊~~~~

那你在哪里的?

出0入0汤圆

发表于 2012-8-19 14:22:05 | 显示全部楼层
上面是永祥?

出0入0汤圆

发表于 2012-8-19 14:27:03 | 显示全部楼层
y574924080 发表于 2012-8-19 14:15
那你在哪里的?

浙江杭州。。。

出0入0汤圆

发表于 2012-8-19 14:28:14 | 显示全部楼层
seazhui 发表于 2012-8-19 14:27
浙江杭州。。。

的确好远啊

出0入0汤圆

发表于 2012-8-19 14:28:42 来自手机 | 显示全部楼层
楼主遇到的问题很正常,当初我也是看着郭的视频学习的,边看边写程序,如此反复三遍,很多还是不懂。你应该多动手实践,像 数字钟、寻迹小车等等。继续往前学,然后在回过头看这些问题

出0入0汤圆

发表于 2012-8-19 14:52:08 | 显示全部楼层
我教你一个很简单的方法,自己焊一个开发板,焊一部分调通一部分,最后焊完开发板也就把这些器件的编程掌握了
我就是这样学过来的,我带的师弟也都是这样学的,效果还行,还有什么问题可以加我

出0入0汤圆

发表于 2012-8-19 15:54:32 | 显示全部楼层
买一数字电路基础看看,在看一本C语言基础,结合视频就可以了

出0入0汤圆

发表于 2012-8-20 11:32:51 | 显示全部楼层
楼上的提议好好呀!

出0入0汤圆

发表于 2012-8-20 11:42:17 | 显示全部楼层
可以买些通俗点书,
像杨欣写的《51单片机应用从零开始 》《51单片机应用实例详解》都比较生动形象,
再结合单片机教材,这样对自学比较好!
还有就是得耐得住寂寞,,,一封耕耘一丰收嘛。。。

出0入0汤圆

发表于 2012-8-20 11:44:05 | 显示全部楼层
单片机就是一个手脑并用的活动,楼主平常也得多动手
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2012-8-20 15:49:30 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
头像被屏蔽

出0入0汤圆

 楼主| 发表于 2012-8-20 15:53:12 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2012-8-20 18:56:19 | 显示全部楼层
大伟电子 发表于 2012-8-20 15:49
最近电脑系统坏了。刚装上,138输出0x01没想出来,控制123脚就行了,595就是移位数据,14脚进,接地的接 ...

当然是不能输出0x01的。。。。。。。。。

出0入0汤圆

发表于 2012-8-20 19:32:51 | 显示全部楼层
写软件还是应该多借鉴别人的,把别人的程序综合在一起就成自己的了

出0入0汤圆

发表于 2012-8-20 20:21:50 | 显示全部楼层
别浮躁,从最简单的开始,一步步的来

出0入0汤圆

发表于 2012-8-21 05:47:34 | 显示全部楼层
像74HC595知道怎么工作,但就是写不出程序,


then you don't understand how it works.

现在就是编程没思路,不知道从何写,


forget about how a mcu will perform a job. think about how YOU will perform the job and then break it down in logical blocks.

Take a hc595 driver for example. read the datasheet, and get a sense how you need to flip pins to send a bit and then send multiple bits in order to send a byte.

this task can be then broken down into three blocks:

1) set / clear a pin;
2) use the above routine to send a bit;
3) use the above routine to send a byte.

in pseudo code, it looks like:

  1. hc595_write(dat):
  2.   do {
  3.     clear clk;
  4.     set/clear mosi;
  5.     set clk;
  6.     move to the next bit;
  7.   } while (still more bits to send)
复制代码
once you have it working, you can reuse it then to build up bigger projects.

the two keys to embedded programming:

1) read the f@#$king datasheet;
2) write good C.
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-23 22:10

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表