历史上的今天
返回首页

历史上的今天

今天是:2024年12月13日(星期五)

正在发生

2018年12月13日 | 串口接收实例——空闲中断

2018-12-13 来源:eefocus

//先看51的

void UARTInterrupt(void) interrupt 4

{

    if(RI)

    {

        RI = 0;

        UsartReceive[UsartReadCnt] = SBUF;

        UsartReadCnt++;

        if(UsartReadCnt > ReadLength-2)//防止溢出

        {

            UsartReadCnt = 0;

        }

    }

}

void Timer0Interrupt(void) interrupt 1

{

    TH0 = (65536 - 5000) / 256;

    TL0 = (65536 - 5000) % 256; //定时5ms


    if(UsartReadCnt != 0)//接收到数据

    {

        if(UsartIdleCnt == UsartReadCnt)

        {

            UsartReadCntCopy = UsartReadCnt;

            UsartReadCnt = 0;

            UsartIdleCnt = 0;

            UsartFlag = 1;

        }

        else

        {

            UsartIdleCnt  = UsartReadCnt;

        }   

    }

}

...

if(UsartFlag == 1)

{

    UsartFlag = 0;

    ...

}


...




//STM32的

void USART1_IQRHandler(void)

{

    if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET)//表示接收到数据

    {

        Usart1ReadBuff[Usart1ReadCnt++] = USART_ReceiveData(USART1);


        if(Usart1ReadCnt > UsartReadLen - 10)

        {

            Usart1ReadCnt = 0;

        }

    }

}

void TIM2_IRQHandler(void)

{

    if(TIM_GetITStatus(TIM2, TIM_IT_Update) == SET)

    {

        TIM_ClearITPendingBit(TIM2, TIM_IT_Update);


        if(Usart1ReadCnt != 0)

        {

            if(Usart1ReadCnt == Usart1IdleCnt)

            {

                Usart1ReadCntCpoy = Usart1ReadCnt;

                Usart1ReadCnt = 0;

                Usart1IdleCnt = 0;

                Usart1ReadFlag = 1;

            }

        }

    }

}

...

if(Usart1ReadFLag == 1)

{

    Usart1ReadFlag = 0;

    ...

}

...


推荐阅读

史海拾趣

AMI Semiconductor公司的发展小趣事

AMI Semiconductor,全称为Analog Mixed-Signal Interface Semiconductor,是一家在模拟、混合信号和接口领域提供集成电路解决方案的公司。以下是关于AMI Semiconductor公司发展的五个相关故事:

  1. 公司成立与初期发展:AMI Semiconductor公司成立于1966年,总部位于美国爱达荷州普克斯。公司最初专注于生产模拟集成电路和混合信号集成电路,为各种应用领域提供解决方案。在成立初期,AMI Semiconductor致力于技术创新和产品质量,赢得了客户的信任和认可。

  2. 技术创新和产品多样化:AMI Semiconductor不断进行技术创新,推出了一系列高性能、高可靠性的集成电路产品。公司的产品涵盖了模拟信号处理、数据转换、传感器接口、通信接口等多个领域,广泛应用于汽车电子、工业自动化、医疗设备等行业。

  3. 公司并购与扩张:为了拓展业务和加强市场竞争力,AMI Semiconductor进行了一系列并购和合并。这些并购使得公司能够快速扩大规模、拓展产品线,并进入新的市场领域。例如,2008年,AMI Semiconductor被ON Semiconductor收购,成为其子公司,加强了在模拟和混合信号领域的领先地位。

  4. 全球布局与市场拓展:AMI Semiconductor在全球范围内建立了广泛的销售网络和生产基地,实现了全球化发展战略。公司在美国、欧洲、亚洲等地设有研发中心、生产基地和销售办事处,为客户提供及时的技术支持和服务。这种全球布局有助于拓展市场份额,满足不同地区客户的需求。

  5. 持续创新与发展:AMI Semiconductor持续致力于技术创新和产品研发,以满足不断变化的市场需求。公司不断投入资金和人力资源,加强与客户的合作,开发定制化的解决方案,提升产品性能和竞争力。AMI Semiconductor不断追求卓越,致力于成为行业领先的模拟和混合信号集成电路供应商。

这些故事展示了AMI Semiconductor公司从成立初期到如今在技术创新、产品多样化、并购与扩张、全球布局和持续发展等方面取得的重要进展。

DURACELL公司的发展小趣事

1920年,一位年轻而聪明的科学家山谬·鲁本(Samuel Ruben)和另一位年轻而富有的钨丝电线制造商菲立普·马洛里(Philip Rogers Mallory)在一次偶然的机会中相遇。鲁本到马洛里公司寻找实验设备,两人在交谈中共同意识到将发明天赋和制造力量结合起来的巨大机会。这个巧合开启了他们的合作之旅,最终导致了金霸电池的诞生。鲁本的发明为当时的电池科技带来了革命性的改变,奠定了DURACELL公司坚实的基础。

Ampex Data Systems Group公司的发展小趣事

2016年3月1日,DURACELL公司正式成为伯克希尔·哈撒韦集团的一部分。这一重要事件标志着DURACELL公司在电子行业的地位得到了进一步巩固和提升。伯克希尔·哈撒韦集团是全球知名的投资公司之一,其强大的资本实力和市场影响力将为DURACELL公司提供更多的发展机遇和挑战。在伯克希尔·哈撒韦的支持下,DURACELL公司将继续致力于推动电池技术的创新和发展,为全球消费者提供更优质的产品和服务。

ASM公司的发展小趣事

ASM公司的创始人阿瑟·德尔·普拉多(Arthur del Prado)在移居美国后,遇到了半导体产业的蓬勃发展。他敏锐地洞察到了这一行业的巨大潜力,并决定投身其中。起初,他只有有限的资源和500美元的资金,但他凭借着对市场的深刻理解和不懈的努力,成功地在欧洲市场打开了局面。1964年,他在荷兰创立了先进半导体材料公司(ASM),这标志着ASM公司的正式诞生。

Capar Components Corp公司的发展小趣事

随着国内市场的饱和,Capar Components Corp开始将目光投向国际市场。公司积极参加国际电子展会,与海外客户建立联系,拓展销售渠道。同时,公司还根据不同国家和地区的市场需求,调整产品结构和营销策略,逐步打开了国际市场的大门。如今,公司的产品已经远销欧美、东南亚等多个国家和地区,成为了国际电子市场上的一支重要力量。

BJB公司的发展小趣事

在市场竞争日益激烈的环境下,BJB公司注重品牌建设和形象提升。公司加强了品牌宣传和推广力度,通过广告宣传、媒体报道等多种方式提升品牌知名度和美誉度。同时,BJB还积极参与社会公益事业,履行企业社会责任,赢得了社会各界的广泛认可和赞誉。

问答坊 | AI 解惑

[转贴]:气隙位置对电感参数的影响及改进

气隙位置对电感参数的影响及改进除了用铁粉芯作磁芯的电感外,一般电感(Flyback变压器为耦合电感)。气隙的位置对电感参数有较大影响,下面基于有限元计算对此问题进行分析并给出一种新结构之磁芯。 为方便起见,从一EE型的Flyback变压器开始分析 ...…

查看全部问答>

稳压电源的制作

(一) 电容降压式稳压电源       电容降压式稳压电源输出电流较小,但他不用变压器所以体积小,成本低,适用于耗电小的电子设备,原理图见(1-1) 如果桥式整流电路的输入交流电压为Vi输出直流电压为Vo,输出电流为Iz 则降压电容 ...…

查看全部问答>

帮忙分析下这个电路,将将其原理

[ 本帖最后由 tonytong 于 2010-5-20 12:46 编辑 ]…

查看全部问答>

请问一个循环延时问题?

题目:若使蜂鸣器响5次,约0.5秒响.一秒停(p1.0输出1时,三极管截至,蜂鸣器不响,机器周期为去1us) BEEP:MOV R7,#5 BEEPL:CLR P1.0            LCALL DEL5            ...…

查看全部问答>

有谁用过BGB100?

自己用蓝牙无线收发器做了一个板子,想用FPGA控制它通信,但是没通,大家谁用过这个芯片,希望指点一下。…

查看全部问答>

谁能帮忙从 pudn 上下载几个程序发到我的邮箱里,谢谢

一个内存驱动器的源代码 http://www.pudn.com/downloads/sourcecode/windows/vxd/detail1558.html 虚拟串口用VC编译 http://www.pudn.com/downloads170/sourcecode/windows/vxd/detail788464.html 8139网卡驱动源码 http://www.pudn.co ...…

查看全部问答>

用Studio 5.0 Platform Builder编译出来的SDK怎么用?

编译出来的SDK只有5M不到,直接将msi文件运行安装之后,在建立一个简单的工程都编译不过。 一般一个标准SDK都有100M多的样子,为什么我自己编译出来的只有SDK只有几兆呢,哪位知道这个SDK到底是怎么用的,还要什么别的设置么,找MSDN,也没找到。 ...…

查看全部问答>

FPC上贴装SMD几种方案

  根据贴装精度要求以及组件种类和数量的不同,目前常用的方案如下几种:   方案1   单片FPC上的简单贴装   1. 适用范围   A. 组件种类:以电阻电容等片装为主。   B. 组件数量:每片FPC需要贴装的组件数量很少,一般只有几个组件 ...…

查看全部问答>

【讨论】大家的3V、5V逻辑接口都是怎么设计的?

单向的话,我习惯用74HC245做转换。 但比较烦人的就是双向接口了。比如驱动OLED、点阵液晶,模拟并口需要读取和写入双向操作,这就比较复杂。再加上我的这个模拟并口又与USB芯片的并口复用。电路上就出现了问题。 大家在双向逻辑电平转换时都是怎 ...…

查看全部问答>

求全新msp430 Value Line LaunchPad,了解如何购买的也请进

谁那里有多余的全新msp430 Value Line LaunchPad,想求一个,或者有谁了解如果购买。(PS:现在还可以申请吗?)…

查看全部问答>