找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7315|回复: 0
打印 上一主题 下一主题
收起左侧

遥控玩具车的制作体会

[复制链接]
跳转到指定楼层
楼主
ID:59583 发表于 2014-4-1 02:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
       经过三个月的努力 终于攻克了 遥控车的主要程序,在这三个月中,不知道失败多少次。报废的电子元器件数不清,但总起来说,汗水没有白流,总算有所收获!
        总结一下自己从中得到的教训,
在硬件制作过程中,有点马虎大意,细微之处总能考虑到,但是大局问题却考虑不周全。一。一次竟然将正负电源接反。致使钽电容(为了提高电路品质,舍弃铝电解,全部用钽电容)当场爆炸,碎片差点伤到我。为了防止发生类似事件,以后的电路虽然都加入二极管防止电源接反。但是问题只是暂时的,在以后的设计中,如果电路要求严谨 要考虑二极管的 压降和电流。如果电路中要用到更大的电流,自然二极管的体积就变得很大,占用了板子的很大的面积,此不是万全之策,多考虑加熔丝或者自恢复式保险电阻。二。在考虑遥控模块的使用过程中,忽略了供电电压的问题,尽管说明书中提到1.5-12V,自己用了5V,结果还是烧掉。总结一下,国产产品不是很牢靠,应该往最小值方向来考虑,比如这次 用3.6V 也许就能避免这个错误。三,要使用第三方产品的时候 一定要注意电源的正负极 和一些关键点的点位,这次LCD12864 中,竟然把 并行口和串行口的控制管脚给短路了,原版在出厂时已经将此控制脚接成 低电平,也就是串行口状态,而我做的电路中要做成并口数据接口,需要将此脚接成高电平。结果短路。幸好电源是自己设计的带自保护功能,否则烧掉一大片元器件。由此可见 在用第三方开发的产品中一定要注意细节问题。比如信号电平的匹配,电源电压,各种控制引脚的电平。自己现在用的是5V的电压及信号,也许将来涉及到3V 或者其他电压信号,注意协调和匹配。
在软件考虑过程中,对C语言还是的学习还是不够深刻,没有语感,代码不够简洁。一,遥控车前后左右四个状态,分别写了四条相同的代码驱动,如果合理使用指针的话,只写一个指针子程序,然后四个状态分别调用就能很好的完成。二,对C特有的库函数了解的太少,在LCD12864显示过程中,送出的时间 年月周日时分秒 用一个数组 然后 用一条SPrentf 皆可扫描成字符串直接送出,结果自己以前还是挨个 把16进制换算成ASIIC码 然后 再挨个调用显示函数,7个数据 调用了13个显示函数,废话太多,造成程序运行缓慢。在单片机中,资源甚少,惜字如金。不像在个人电脑中那样随便写,写多少都可以。三,多多用好仿真软件ISIS, 由于自己没有做成功AVR JTAG仿真器,买一个又嫌弃太贵,不能硬件仿真,这次多亏用了仿真软件 解决了不少问题。 还有就是系统比较庞大的时候,按照部分来试验。比如这次 电子时钟, 分三步, 第一步是单片机控制液晶屏 ,第二步单片机的按键控制 ,第三步 单片机和DS1302的控制。同样制作遥控车的步骤也如此, 先用单片机控制步进电机试验, 然后手控板的  按键与单片机   再是手控板单片机的输出控制信号,今天终于做到手控板与步进电机驱动主板的直线通讯问题,以后需要考虑 遥控信号传输问题。四,多读多考别人写的程序,看了叶大鹏的教学视频后,需要感觉叶大师教会了我AVR单片机,的确哈佛结构的单片机比冯洛伊曼结构(学校学的51)的好用多了,竟然写的代码像他了,应该博众人之多长,创造出一套自己的写作风格。感觉写一套好的代码,跟写一篇号的文章一样。别人读了 就能体会到作者的水平。创造出自己的一套库函数,到用时随用随调出,省的自己重新,浪费时间和精力,比如这次延时函数 宏定义 和 两套液晶屏的函数 都编在头文件里。用时 直接掉用,省事又省力!三。写代码程序要细心,虽然编译器能指出格式书写错误,但是不能指出控制对象的错误, 比如 驱动一个液晶屏, 漏掉使能函数,编译器是不会报错的,但是液晶屏就是不显示,让你很难去排查。五,汇编语言不可弃,汇编是硬件语言,虽说自己写用C语言,但是大师级别的仍然对汇编情有独钟,效率最高,做到会读 就了不起了,做到读汇编写C 就能无敌了。
   硬件和软件协调问题,因为自己对硬件的熟悉程度 远远超越软件,致使早早的焊出了板子,程序一直出不来,最近才慢慢啃出来,以后翻过来 加深自己的软件学习力度,先做软件,然后考虑硬件!电子的最高境界犹如浩瀚的大海,自己只是一页扁舟只能在岸边边缘徘徊,为了儿时的梦想,奋发图强!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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