谈谈我自学单片机的经历(看yearn3guns的帖子有感)
ehco2011/12/13电子技术 IP:贵州
看到yearn3guns的帖子,感触颇深啊。原帖在这里
XXXXXXXXXXXXXXXXXXXXXXXX/t/38633

       顺便也谈谈自己学习单片机的经历

    在俺还在初中的时候,就死缠着老爹给俺订了《无线电》和《电子制作》,经历了HIFI和DIY投影仪的热潮,只要是见到旧书摊上的电子书,就必然买回来
不知什么时候起,单片机慢慢登上了电子的舞台,一开始是什么PGOR110等集成自编程控制器,后来,介绍和应用单片机的篇幅在这两本书上越来越多。

    说实话,当时是很讨厌很反感的,因为都是些简单介绍,或是直接上一个电路,根本没有入门级的教程,看不懂。

    偶然一次,从电子制作上看到了LM567单芯片锁相环电路,该电路可以识别某一频率和带宽的信号并转为开关电平输出。于是猛然有一个想法,用俺的小霸王学习机来控制一个小车的自动动作。

    当时,俺对学习机上的Q-BASIC编程已经比较熟练,Q-BASIC中,有个叫SOUND的语句,可以输出一定音阶的频率例如SOUND“C1”就是发出C1的音阶,然后配合一大堆LM567音频解码阵列即可完成程序->开关电平控制。然后俺用一堆INPUT语句 SOUND语句和延时构造了一个小车自动避障的程序,并稳定运行。
    回想起来,这算是俺第一个涉及到程控的作品了。可惜当时没条件照相,现在也没什么保存了。

    从此,对程控技术狂热不可收拾。

    在2000年的时候,俺开始学单片机,这得归功于《无线电》某期的一篇文章,记得叫做[自制AT89C2051]手动编程器。然后俺按照电路做出了作品
就是下面这张图。
自制编程器手动版.jpg

    这个编程器是逐字节逐位地输入单片机机器码并烧写,也就是说如果程序有1KB,那么起码得扳动开关1024X9次。
    这还不算什么,关键是要手工地将汇编语言翻译为机器码,正是因为这样,俺当时觉得俺的汇编学得还算纯熟,为以后的应用打下坚实的基础。

    再后来,忍受不住成千上万次扳动开关,俺又突发奇想回到原始,用两片LM324比较器和红外对管做了一个读卡机,也就类似今天考试用的机读卡。

    俺将一些常用的函数例如延时函数等用特定格式的小方块涂在纸条上,然后纸条在减速电机驱动下逐个被广电探头读取,并烧写到单片机中。

    说实话,俺当时为俺这个复古的折腾兴奋自豪了好一阵子。如下图
自制编程器读纸带版.jpg

    再后来,学习了VB语言,俺干脆就利用PC机的串口输出字节数据,直接代替手动拨开关,这一次,编程效率有了飞速的提升。
在对VB有了更深入的了解后,俺干脆自己做起了编译器,一下子从手工汇编飞跃到了全自动化操作。俺到现在都还沾沾自喜。
下图既是俺的串口编程器和自己写的IDE
3.jpg

自制编程器串口版.jpg   

    2年后,俺接触了网络,才知道世界上其实有个东西叫Keil(很成熟的51单片机开发环境),还有个东西叫TOP851(很成熟的编程器)
俺顿时觉得俺落后太多了,但是并不怎么后悔,因为这些经历,俺学会了许多走捷径学不到的东西。

下面是俺买的第一台成品编程器TOP2K
我的编程器.jpg

    单片机技术发展到今天,俺之前这些编程方式只能说非常落后了,现在的ISP技术已经省略掉了编程器这个环节,对入门者无疑降低
了资金门槛,也方便了调试开发。单片机已经成为我DIY的最大帮手了。

    随便写了这些啰嗦话,只是希望通过这些告诉KC学习爱好电子的朋年轻朋友们,要珍惜现在的大好学习环境和资源,善于利用网络,
多动手勤思考,才会有所突破。
+1  科创币    jrcsh    2011/12/13 来亲一个
+10  科创币    17620462    2011/12/13 单片机能做很多很多,我也正在努力学习
+52  科创币    sukeytang    2011/12/13 努力学习中。
+100  科创币    乖老汉    2011/12/13 原来神是自学的啊,俺还以为是专业呢。
+53  科创币    delete    2011/12/13 支持下
+20  科创币    hefanghua    2011/12/13 俺是来拜汇编大神的
+12  科创币    科学人    2011/12/13
+100  科创币    delete    2011/12/13 膜拜汇编帝。。。。
+100  科创币    10班陈大葱22号    2011/12/15 我整个人都震惊了...
+100  科创币    delete    2011/12/15 不加分对不起老大
+50  科创币    justinpiggy    2011/12/16 围观大神
+200  科创币    奇侠    2011/12/17 感慨!
+25  科创币    冲压发动机    2012/01/06 膜拜
+1  科创币    leeqingyang    2012/01/10 at 不习惯 stc大爱
+20  科创币    kokming999    2012/02/05 l厉害
+20  科创币    cqb98    2012/02/06 膜拜!新手路过
+25  科创币    vol2088    2012/02/14 膜拜基础帝,手工很强,拨动编程器很有爱
+10  科创币    frival    2012/04/20 看了老大的经历,深感惭愧,我C++书都买了几年还没入门。
来自:电子信息 / 电子技术
20
1
已屏蔽 原因:{{ notice.reason }}已屏蔽
{{notice.noticeContent}}
~~空空如也
ehco 作者
13年1个月前 IP:未同步
344215
引用第4楼虎哥于2011-12-13 20:18发表的  :
当年在旧货市场淘了一个编程器,带键盘的,16进制手工输入,拿来给电台写过频。频率到机器码的换算,发动了十几个同学拿计算器按了一晚上,算出来60多个频道。。

那一次我第一次感觉人与人之间有那么多不同,有个同学半小时后就靠心算了,速度就比其他人快~~话说他们以前都没接触过这类计算。

后来搞了一台国产军用电台,用的最老版本的8031,好像是70年代生产的,程序读出来没有一个软件可以反编译。最后我和另一个师兄跑图书馆去翻出来当年的intel手册(灰有1厘米厚),照着表人工反编译了一遍,然后修改了程序(就是调整频率范围,上下边带),重新人工编译。。。结果没过多久在一家国外技术怀旧网站上又找到了一个可以用的编译器,大晕。
.......

哈哈哈哈,其实原型就是打孔的,就是开孔和修改太不方便了,还有减速电机不好卷动,后来才换的涂黑。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
ehco作者
13年1个月前 IP:未同步
344216
引用第5楼天易于2011-12-13 20:23发表的  :
E局你链接的那些单片机资料,看了半天,俺晕菜了都。[s:274]

哈哈,是得慢慢啃啊。PS2算简单的协议了
USB1.1协议,俺念大学时硬是用了半年才基本摸清,现在搞火箭又差不多忘了。哎~
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论

想参与大家的讨论?现在就 登录 或者 注册

所属专业
上级专业
同级专业
ehco
老干部 学者 机友 笔友
文章
114
回复
1633
学术分
41
2007/07/11注册,1天3时前活动

撸起袖子加油干!

主体类型:个人
所属领域:无
认证方式:手机号
IP归属地:未同步
文件下载
加载中...
{{errorInfo}}
{{downloadWarning}}
你在 {{downloadTime}} 下载过当前文件。
文件名称:{{resource.defaultFile.name}}
下载次数:{{resource.hits}}
上传用户:{{uploader.username}}
所需积分:{{costScores}},{{holdScores}}下载当前附件免费{{description}}
积分不足,去充值
文件已丢失

当前账号的附件下载数量限制如下:
时段 个数
{{f.startingTime}}点 - {{f.endTime}}点 {{f.fileCount}}
视频暂不能访问,请登录试试
仅供内部学术交流或培训使用,请先保存到本地。本内容不代表科创观点,未经原作者同意,请勿转载。
音频暂不能访问,请登录试试
支持的图片格式:jpg, jpeg, png
插入公式
评论控制
加载中...
文号:{{pid}}
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也

加载中...
详情
详情
推送到专栏从专栏移除
设为匿名取消匿名
查看作者
回复
只看作者
加入收藏取消收藏
收藏
取消收藏
折叠回复
置顶取消置顶
评学术分
鼓励
设为精选取消精选
管理提醒
编辑
通过审核
评论控制
退修或删除
历史版本
违规记录
投诉或举报
加入黑名单移除黑名单
查看IP
{{format('YYYY/MM/DD HH:mm:ss', toc)}}