历史上的今天
返回首页

历史上的今天

今天是:2025年04月10日(星期四)

正在发生

2019年04月10日 | STM32串口通信--数据打包发送

2019-04-10 来源:eefocus

串口及其中断初始化


void USART1Init(void)

{

  GPIO_InitTypeDef GPIO_InitStructure;

USART_InitTypeDef USART_InitStructure;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE);

RCC_APB1PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);


GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

GPIO_Init(GPIOA, &GPIO_InitStructure);    


GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;

GPIO_Init(GPIOA, &GPIO_InitStructure);

  


USART_InitStructure.USART_BaudRate = 9600;

USART_InitStructure.USART_WordLength = USART_WordLength_8b;

USART_InitStructure.USART_StopBits = USART_StopBits_1;

USART_InitStructure.USART_Parity = USART_Parity_No ;

USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;

USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;

USART_Init(USART1, &USART_InitStructure); 


USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);

USART_ClearFlag(USART1,USART_FLAG_TC);

USART_Cmd(USART1, ENABLE);


}


void NVIC_USART1_Init(void)

{

  NVIC_InitTypeDef NVIC_InitStructure;

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);

NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQn;  

NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;

NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;

NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;

NVIC_Init(&NVIC_InitStructure);

}

串口发送一个字节函数


void Usart1SendByte(char byte)//发送一个字节 硬件连接选用的为USART1

{

USART1->SR; 

USART_SendData(USART1, (uint8_t) byte);

while( USART_GetFlagStatus(USART1,USART_FLAG_TC)!= SET);

    

}

数据打包发送函数


 void ADC_ConvertSend(float value)

 {

  unsigned char temp[6];

  char CheckStart='~';//数据传输开始

  char CheckEnd='!';//表示一次传输完成

  unsigned short i=0,j=0;  

float floatVariable=value;   

unsigned char *pdata = (unsigned char *)&floatVariable;

 

  temp[0]=CheckStart;//数据包头

 

for(i=0;i<4;i++)  

{  

temp[i+1] = *pdata++;//float转BYTE

}  

temp[5]=CheckEnd;//数据包尾


for( j=0;j<6;j++)

  {

   Usart1SendByte(temp[j]);

  }


 }



推荐阅读

史海拾趣

Ecera Comtek Corp公司的发展小趣事

在快速发展的过程中,Ecera Comtek Corp公司始终关注企业社会责任的践行。公司积极参与各种公益活动,为社会做出积极贡献。例如,在自然灾害发生时,Ecera Comtek Corp公司积极捐赠通信设备,帮助灾区恢复通信联系;在偏远地区,公司还捐建了多所希望小学,为当地的孩子们提供了良好的学习环境。这些公益活动不仅提升了Ecera Comtek Corp公司的品牌形象,也增强了员工的凝聚力和归属感。

Hi-Tron Semiconductor Corp公司的发展小趣事

Ecera Comtek Corp公司成立于XX世纪初,由几位热衷于电子通信技术的工程师共同创立。初创时期,公司面临着资金短缺、技术挑战和市场竞争等多重压力。然而,创始人们凭借对技术的热情和执着,不断研发创新产品,逐渐在行业内树立了口碑。他们经常通宵达旦地工作,试验新的设计方案,努力提升产品的性能和稳定性。经过数年的努力,Ecera Comtek Corp公司终于推出了首款具有竞争力的无线通信设备,为公司的发展奠定了坚实的基础。

Grande Electronics Ltd公司的发展小趣事
用另一个已知正常的遥控器去控制同一台设备,如果控制有效,则说明原遥控器可能存在故障。
GD Rectifiers Ltd公司的发展小趣事

为了进一步扩大市场份额,GD Rectifiers Ltd实施了积极的国际化战略。公司首先在欧洲市场设立了销售分支机构,凭借其优质的产品和服务迅速赢得了当地客户的认可。随后,公司又陆续在北美、亚洲等地区建立了分销网络,逐步构建起覆盖全球的营销体系。在国际化进程中,GD Rectifiers Ltd注重与当地企业的合作与交流,共同推动行业标准的制定和技术进步。通过不断的努力,公司成功地将品牌和产品推向了全球市场,实现了业务规模的快速增长。

DCX-CHOL Enterprises公司的发展小趣事

DCX-CHOL Enterprises成立于一个科技蓬勃发展的时代。公司的创始人是一群热衷于电子技术的年轻人,他们看到市场上对于高性能、低功耗芯片的巨大需求,于是决定自主研发。经过数年的艰苦努力,他们成功开发出了一款具有革命性意义的低功耗芯片,该芯片不仅性能卓越,而且成本远低于同类产品。这一创新成果迅速赢得了市场的认可,DCX-CHOL Enterprises因此获得了第一桶金,为公司后续的发展奠定了坚实的基础。

创基(CBI)公司的发展小趣事

面对日益激烈的国际竞争,CBI公司积极实施全球化战略,通过海外投资、并购等方式,不断扩大市场份额。同时,公司还注重本土化运营,根据不同地区的市场需求和消费者习惯,提供定制化的产品和服务。这一策略使CBI在全球范围内建立了完善的销售网络和售后服务体系,进一步巩固了市场地位。

问答坊 | AI 解惑

基于嵌入式PC的PIII计算机系统设计与实现

目前嵌入式计算机系统应用呈现多样化、小型化、多层次的趋势,在工业现场和军事用途中扮演着越来 越重要的角色。随着各种应用对操作系统和软件要求的日益提高,使得具有广泛适应性的PC构架的嵌入 式计算机系统倍受青睐。尤其是Compact PCI总 ...…

查看全部问答>

一个免费的DSP/FPGA讲座,有感兴趣的坛友么?

现场会有很多DSP/FPGA相关行业工程师参加,欢迎参加交流哈~~~ 内容:1、C6000 DSP软件开发环境CCS介绍)             2、FPGA典型应用领域及解决方案            ...…

查看全部问答>

orcad training PPT 01

orcad training PPT 01…

查看全部问答>

相机存储卡中数据丢失如何恢复

我的相机是DSC-W120数据丢失,是在一次照相中,有可能是相机存储满了,在继续拍照时,以前的数全部丢失,请兄弟姐妹们帮帮忙,出个招能把数据给恢复了,非常感谢。…

查看全部问答>

OK2440开发板上电后进不了系统

求教 什么ok2440开发板上电后进不了系统,触摸屏上只有几种颜色在变化。前阶段开发板还可以用的,放了一段时间后怎么会出现上面的问题?我该怎么做? 谢谢了…

查看全部问答>

高薪诚聘嵌入式开发工程师!

hi,我是一大型国内外包公司的HR,现有嵌入式开发的职位: 要求如下: team leader: 计算机专业本科以上学历; 5年以上嵌入式系统开发经验; 5年以上WinCE上应用程序和服务层程序开发经验; 两年以上软件项目管理经验; 沟通表达能力,团队 ...…

查看全部问答>

STM3210B-MCKIT的代销商

                                 版主,可否提供STM3210B-MCKIT的代销商的联系方式。…

查看全部问答>

USB2.0 学习板原理图(ad文件)

由于我用adobe reader看不了论坛里下的那个电路图,就按照下的说明书上的图画了一个,顺便把原理图库也发上来。有于画的时间比较仓促,有错误的地方请大家多包涵!封装库我有时间再弄!     本人用的是designer6.8版本。…

查看全部问答>

申请430fr5739

使用msp430 1年多了,做低功耗需要整板的配合,如ldo等使用,程序的写法,每个环节都做好才能达到低功耗的目标。准备申请430fr5739做无限传感网络…

查看全部问答>