51单片机学习
单片机介绍
是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。
单片机分类
目前主要有51 和STM32
1.点亮一个LED灯,在51开发版上led灯本身两端都是高电平,只有当其变为低电平 时,才能形成电流,使led灯亮
在51单片机中 高电平记为1,低电平记为0,也就是说想要点亮一个led灯,只需要把led灯对应的接口赋值为0,此时所对应的led灯就会亮,从开发板原理图可知,led模块链接了P2接口,一共有8个led,这时用16进制转为2进制的模式 来控制开发板led灯的亮灭。
#include<REGX52.H> void main() { P2=0xFE; //1111 1110 while(1) { } }
2.控制LED闪烁,原理就是让LED灯亮一下然后停顿一段时间然后灭,停顿一段时间再亮起来,循环往复就可以了。这时候就需要用到一个叫延时函数的东西,延时函数可以在STC上直接生成延时函数,生成时要注意选择好系统频率,间隔时间,8051指令集的适用型号。代码如下
#include <REGX52.H> #include<INTRINS.H> void Delay500ms() //@11.0592MHz { unsigned char i, j, k; _nop_(); i = 4; j = 129; k = 119; do { do { while (--k); } while (--j); } while (--i); } void main() { while(1) { P2=0xFE;
Delay500ms(); P2=0xFF; Delay500ms(); } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!