如何使用C语言控制硬件
|
C语言的应用编程在单片机的领域占了很大一部分,使用的比较多的51单片机和STM32单片机都可以使用MDK软件编写固件。 单片机烧写了固件后可以点亮LED灯,可以驱动ADC检测电压,也可以驱动蜂鸣器发声,这就是简单地控制硬件。稍微复杂一点的,可以驱动NRF2401进行无线的连接,也可以使用ESP8266这类wifi芯片连接网络。 接下来,简单地讲讲如何使用C语言控制硬件。 1、电路连接 一般而言,单片机的引脚输出电压能够达到3.3v,也是可以点亮红外线LED,但是可能会导致电流不稳定的问题,所以一般会使用一个三极管接在引脚和LED之间放大电流的驱动能力。 ![]() 从原理来说,通过加在LED上的电平不停的变化,并且严格按照一定的时间设置为高电平,然后变更为低电平,如此的反复循环,那就能够发出一段红外线控制码。只要手速够快,时间够精准完全能够控制家里的电视机、空调。 2、单片机控制硬件 好了,到了这会我们的单片机该闪亮登场了。以常用的51单片机而言,频率可以达到12MHZ。翻译成大白话就是,一秒钟可以按下开关12x10的6次方次。这简直是魔鬼手速,不仅快而且精准。关键是价钱也不太贵。比如,diy一个遥控器,电路板上IC的价格不过3块钱。 单片机在这里就替代了手的作用,那么C语言就相当于控制手的大脑。 其实这里只是举例了硬件控制中最常用的IO控制,实际的应用情况中除了IO控制,还有常用的ADC控制,这个就相当于单片机替你把使用万用表测量电压的活给干了。 3、C语言控制单片机 编译器的工作其实就是将我们编写的C原因翻译成了数字0和1存到单片机里面。然后,单片机就按照这个固定的模式去比对,然后去执行。有点像上学时,老师在台上点名的意思。 总的来说,C语言控制单片机,单片机控制硬件 |








