能做多大的单片机项目程序开发,就代表了你的敲代码的水平
不一定非要多好,但是至少在对应的时间能达到对应的水平。
新手前期做项目写代码以实现功能为主,特别是51单片机,你代码写好了内存也未必够你用。
在你没接触过大项目程序开发的时候,你根本不知道代码的好坏,在功能上有什么区别,
反正都能实现功能对吧?
///插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我拿就行了免費的,私信我或者看个人简介就可以找到我哦~点我头像黑色字体加我地球呺也能领取哦。最近比较闲,带做毕设,带学生参加省级或以上比赛///
等你真正碰到一些大项目的时候,如果你代码水平不行,肯定是做不出来的。
代码量大了你hold不住,不知道怎么去整合,整合完以后功能之间也有冲突。
最后好不容易整合好了,又发现移植性太差,可扩展性太差,万一项目经理让你增加或者改个功能,你就挂逼了。
这个时候就是你该去思考怎么样把代码写得更好的时候了。
因为你知道痛点在哪里了,在针对这个痛点去找解决的办法。
最好的方法依然是去参考,写程序比你厉害的人。
你再针对性去学习,比如说看我录制的那个程序架构教程。
我那个教程就是我这么多年产品开发当中碰到问题,再学习解决,最终总结出来的精华。
文章字数可能比较多,打开头像关注我,之后翻找会比较容易,有特殊需求可以输入口令“林老师”查看干货。
如何让红外遥控产生38k的载波,实际上就是控制它的亮和灭的时间,低电平低时候亮,亮高电平的时候灭,让它亮灭亮灭就实现38k了,然后再搞循环,让它亮灭亮灭560个微秒,然后再把它关掉,这个时候就产生的是比特0。
如果当前这些位从这里面取出来,当前这位是1,如果说传出的比特为1的话,它产生的还是560个微秒的红外脉冲,也就是说不停的闪烁,产生38k的闪烁560个微秒,然后要把它熄灭,熄灭的时间和我们传输比特0的时间就不一样了,它要熄灭1.685个毫秒,这个大家要注意,这里说的这个传输比特0和传输比特1指的就是通和断的时间控制,通一定要注意是通的不是灯点亮通的,是这个灯的闪烁时间,闪烁的频率是38k,位1无红外光是1.685个毫秒,位0无红外光是0.56个毫秒。
这样的话就可以传输比特0和比特1,然后按照这个方式就可以去发射了,首先产生红外脉冲,也就是产生38k9毫秒,然后不产生4.5毫秒,这个就代表引导码,接着传输的是用户码,然后把这个用户码当中的每比特位都取出来,取出来之后来判断当前这个比特位是0还是1,这样的话就发射出去了,接着发命令码一样的道理,如果命令码当中的当前位置是0,那就是通38k560个微秒。
然后不同也就是断开,不让它产生红外光560个微秒,大家如果说看着代码在参考这个图就很容易理解,nec编码的格式和解码都是按这个来做的,编码格式就是第一步先发引导码,载波发射9毫秒加载波不发射4.5毫秒,载波一发射就是这个管子产生9毫秒的38k的闪烁,这个就是这个载波的含义,然后接着发低八位低用户码和高八位的用户码的反码,然后接着就是八位的数据码和八位数据码的反码,这些位里面的数据都是要取出来,它当前的位是0还是一,然后按照这种方式去传输0和传输1,最后就是结束码,结束码上就是发送比特位0。
下一期会给大家讲解如何来实现38k的载波,以及如何来利用这个协议来编写代码,我们的课程会用软件来介绍如何实现红外遥控的编码功能,有兴趣可以关注一下,大家可以先看一下上面这个图简单介绍一下38k载波如何来实现,实际上38k载波一般是用的是1 : 3的,也就说发射的载波的它的红外占空比一般是1 : 3。
易控智驾与国橡中心达成战略合作
现代Kona电动汽车创登高记录,第一辆登上珠峰大本营的电动汽车
送配电装置系统调试如何计算
微型太阳能逆变器测试技术
苹果手机重磅大消息!iPhone 8/8P/X/iPad官方正式降价
如何让红外遥控产生38K的载波
4G时代的制胜之道:频段、带宽和站点
温补晶振TCXO晶振引脚说明
电感器不同电流纹波比例的影响
高端电流检测简介,试图用LTC2063发现不稳定问题
共享经济是大潮流?北京现共享健身仓?然而真正有钱赚的只有共享单车!
数字加密货币生态系统开源平台阿里巴巴币介绍
中兴通讯交换机产品赋能中国联通构建数据中心网络
一种治疗晕动的方法被发现 或将彻底改变从旅行到VR头显使用的体验
小米6最新消息:史上最难买小米6亮银版发布,限量100台价格3999你去抢购了吗?
OLED电视上半年出货239.02万台,LG排名第一
下一代超精密激光加工解决案例
招募快充领域专职代理商|寻找"价值"共创者
漏水检测控制器安装内容的介绍
基于一个针对点到点和多分支应用的接口标准LVDS介绍