历史上的今天
返回首页

历史上的今天

今天是:2025年03月15日(星期六)

2020年03月15日 | 51单片机【一】背景 计时器

2020-03-15 来源:eefocus

单片机(Microcontrollers)MCU 是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。


这些是度娘上找到的


简单点说就是微型 廉价的逻辑电路 来控制我们身边许许多多的带电的东西 


单片就是单个硅晶片 嵌入其他系统属于简单 低级的嵌入式系统。嵌入式指的是嵌入产品中 狭义的是嵌入linux系统 如android手机


博主是自动化专业所以单片机很重要 因为现在才大一所以先简单的51之后还会进一步学习arm 以后嵌入式也是很好的方向 所以记录一下自己学习的过程 同时也欢迎大家和我一起学习


首先是安装环境keil c51


链接:https://pan.baidu.com/s/1B-gWsxK2wiFtWQe5I4AUAA 

提取码:8pro 


激活的时候运行要以管理员身份运行然后进行激活 说明在分享的链接里有


(记得要带着耳机去激活有段很性感的音乐)


安装下载工具(将程序下载到单边机中,这个东西要看你用的那个单片机这里的是stc)


链接:https://pan.baidu.com/s/1vELF1DiPe3eykRs8HbWQYA 

提取码:9pe4 


51单片机很久远很久以前开发他的Intel就把内核是开放了 所以任何人都可以看到 


还有就是要安装usb转串口驱动 这个可以驱动大师什么的自动安装


链接:https://pan.baidu.com/s/120E1RS-UD47PJLlO_SMb6A 

提取码:f0ci  

设备管理器能看到这个就是安装好了但是不一定是COM4 是COM几都有可能


单片机定时器


1.意义对cpu类似于闹钟对人


因为cpu同时只能干一件事情,所以要规定时间结束任务和开始任务


2.利用中断机制 软件和硬件的约定 让cpu在一段时间后执行一段特定使程序中断的程序函数之类的


3.可以有多个定时器 ,可以同时工作 51是两个8位 长时间可以16位 短时间可以是8位


4.利用计数器原理 51单片机利用加法计时溢出溢出后中断,类似于数据溢出 也有减法计时器从初值向下减


5.计时初值THn和TLn


单片机小精灵 可以输入时间计算时间初值等很多功能


链接:https://pan.baidu.com/s/1tWZo-ByP8J1TMj07gQ6miw 

提取码:z03r 


具体使用看开发手册


void main(void)

{

    Timer0Init();//计时器初始化

    while (1);//此时CPU主任务为1死循环

}

void Timer0Init(void)

{

TMOD &= 0xf0; // T0设为定时器模式,仅用TR0控制打开

TMOD |= 0x01; // T0选择为工作模式1:16位定时器、TH0 TL0全使用

 

TH0 = 0xd8; // 使用单片机小精灵计算10ms定时的TH0、TL0初值

TL0 = 0xf0;

ET0 = 1; // 打开定时器0中断允许

EA = 1; // 打开总中断

TR0 = 1; // 开始计时

}

void Timer0Isr(void) interrupt 1 //1代表T0计时器

{

TH0 = 0xd8; // 使用单片机小精灵计算10ms定时的TH0、TL0初值

TL0 = 0xf0;

if (gCnt++ >= 50) // 每隔50*10ms = 500ms,则让LED亮灭状态转换一次

{

gCnt = 0; // gCnt置为初值0以开启下一次中断次数计数

gLed1 = !gLed1;     // LED亮灭转换 !为逻辑取反

}

}

tips 每次要给初值


实验现象每隔500ms闪烁一次

怎样让单片机跑你写的程序 需要使用烧录软件进行 选择正确的信号和串口号后 先打开程序文件 点击下载 出现正在检测目标单片机字样后 再去打开单片机开关


这样应该是因为单片机内存在通电时不能去修改的缘故

推荐阅读

史海拾趣

CET Technology公司的发展小趣事

在数字化转型的大背景下,CET Technology积极探索数字孪生技术在园区管理中的应用。公司提供的数字孪生与3D可视化服务,通过创建园区的虚拟实体,模拟、验证、预测和控制园区的运营状态,帮助园区实现智慧化管理、优化服务和提高生产效率。此外,CET的数字孪生服务还能监控园区内人员和车辆的通行情况,提升园区内部的交通效率,为园区的可持续发展提供了有力支持。

Einfochips公司的发展小趣事

为了加强与芯片设计领域的合作,Einfochips公司加入了Tensilica公司的Xtensions设计伙伴计划。作为计划的一部分,Einfochips将为采用Tensilica的Xtensa可配置处理器以及Diamond Standard处理器内核的SoC设计提供服务。这一合作不仅提升了Einfochips在SoC设计领域的技术实力,还为其带来了更多的商业机会。

艾吉芯(Agertech)公司的发展小趣事

随着公司业务的不断扩展,艾吉芯公司积极寻求与行业内其他企业的战略合作。通过与国内外知名电子企业的合作,艾吉芯成功将其产品应用于更广泛的领域,进一步拓宽了市场渠道。这些合作不仅提升了艾吉芯的品牌影响力,还为其带来了更多的商业机会和发展空间。

ETRI公司的发展小趣事

在光通信技术领域,ETRI也取得了显著成果。他们与Eldis公司合作,成功将一种电吸收调制光源(EML)商业化。这种光源能够在30公里内每秒传输250亿比特,且在高温和室温下都能稳定工作。这一技术的成功商业化,对于提高数据传输速度和效率具有重要意义。

雅特力(Artery)公司的发展小趣事

在发展过程中,雅特力积极寻求与其他企业的战略合作,以实现共赢发展。通过与上下游企业建立紧密的合作关系,雅特力不仅确保了供应链的稳定性和高效性,还获得了更多的技术支持和市场资源。同时,雅特力还注重与同行业企业的交流与合作,共同推动电子行业的进步与发展。这些战略合作不仅增强了雅特力的综合实力和市场竞争力,也为整个电子行业的繁荣做出了积极贡献。

综上所述,雅特力公司通过技术创新、全球市场布局、企业社会责任、人才培养和战略合作等多个方面的努力,实现了从初创企业到行业领军者的华丽转身。这些故事不仅展现了雅特力的发展历程和成就,也揭示了其在电子行业中的重要地位和影响力。

CDE [ CORNELL DUBILIER ELECTRONICS ]公司的发展小趣事

随着电子行业的快速发展,客户对电容器的需求日益多样化。CDE公司积极应对市场变化,致力于定制化电容器的研发与应用。公司利用数学建模和定制化的仿真App对电容器的设计进行微调,以满足不同客户的特定需求。这一举措不仅提升了CDE的市场竞争力,也为公司在定制化电容器领域树立了领先地位。

问答坊 | AI 解惑

uboot start.S 搬运代码部看不懂

在start.s中, copy_loop: ldmia r0!, {r3-r10}   stmia r1!, {r3-r10}   cmp r0, r2    ble copy_loop    这里搬运过程,是以8个寄存器为单位的,(也就是8*4字节一次), 我看不懂的是,如果_START ...…

查看全部问答>

WinCE 5.0 startup.s 硬件仿真

首先强调下,我只是刚入门的。 我把PB下的startup.s移到ADS下 自己新建的project。make没有问题了。````之后,我就不知道要怎么验证了,请大家指导下,谢谢…

查看全部问答>

YLP2440核心板内存能扩到256M吗

YLP2440核心板内存能扩到256M吗. YLP2440核心板带有64M RAM, 由于项目需要扩到256M,请问这个好能实现吗,是不是仅添加两根地址线就可以了? 2440的BANK为128M,这样需要2个BANK,硬件上需要那些改动?…

查看全部问答>

单片机设计,嵌入式开发,电子项目设计

郑州单片机设计,嵌入式开发,电子项目设计 郑州智软科技公司 http://www.zhiruancn.com/ 为你提供定制化,个性化的电子产品设计方案。 包含需求定制----产品设计----产品加工等环节。 如有需要请联系 0371-66623272 或者QQ:1242335301 …

查看全部问答>

2440芯片用J-Link调试,在AXD下怎样设置

请问各位高手,2440芯片用J-Link调试,在AXD下怎样设置…

查看全部问答>

寻求合作,基于三星S3C2410的WinCE5设备,解锁、安装中文系统和自己的App,有朋友愿意接这样的项目吗?

基于三星S3C2410的WinCE5设备,解锁、安装中文系统和自己的App,有朋友愿意接这样的项目吗? 谢谢!…

查看全部问答>

msp430用捕获模式能测的最高频率

用msp430f1611的捕获模式来测量方波的频率时发现:能正确测量的最高频率不超过200k。我用的是8M晶振。请问:用什么办法可以测量更高的频率呢,最好能到1M Hz?…

查看全部问答>

Launchpad实现IPv6协议栈

我尽量给大家带来些新东西,一位叫做XPG 的国外网友花了好几周的时间用launchpad做个件大家很难想到的事情,他在G2553上移植了一个Ipv6的协议栈。 他使用了一个 ENC28J60 的网络MAC/PHY 模块,以他的说法是cheap off的打折货。 这位Launchpad的网 ...…

查看全部问答>