• 大小: 3.38MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-09-10
  • 语言: 其他
  • 标签: STM32  

资源简介

STM32 的CAN收发程序,自己的温度项目,本人把CAN配置成功,并可以正常收发,

资源截图

代码片段和文件信息

#include “SysHeader.h“

#define  ADC_NUM   50    //每通道采50次
#define  ADC_M   2    //为2个通道

unsigned short  AD_Value[ADC_NUM ][ADC_M];   //用来存放ADC转换结果,也是DMA的目标地址
unsigned short  AdcFilter[ADC_M];    //用来存放求平均值之后的结果

/*-----------------------------------------------------------
/ 函数名称 : void ADC_GPIO_Configuration(void)
/ 函数功能 : 配置ADC1 GPIO管脚
/ 传    参 : 
/ 返 回 值 : 
/ 调用函数 : 
/ 说    明 : 选用ADC的通道 1  2  分别对应的管脚为 PA1  PA2 
/-----------------------------------------------------------*/
void ADC_GPIO_Configuration(void)
{
GPIO_InitTypeDef  GPIO_InitStructure;

//PA1/2 作为模拟通道输入引脚                         
//RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1 | RCC_APB2Periph_GPIOA | RCC_APB2Periph_AFIO ENABLE);//RCC_Configuration中已经做了初始化
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1 | GPIO_Pin_2;    //VrefVIo
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN; //模拟输入引脚
GPIO_Init(GPIOA &GPIO_InitStructure);
}
/*-----------------------------------------------------------
/ 函数名称 : void ADC1_Configuration(void)
/ 函数功能 : 配置ADC1
/ 传    参 : 
/ 返 回 值 : 
/ 调用函数 : 
/ 说    明 : 
/-----------------------------------------------------------*/
extern void ADC_Cmd(ADC_TypeDef* ADCx FunctionalState NewState) ;

void ADC1_Configuration(void)
{
ADC_InitTypeDef     ADC_InitStructure;

ADC_DeInit(ADC1);  //将外设 ADC1 的全部寄存器重设为缺省值

/* ADC1 configuration ------------------------------------------------------*/
ADC_InitStructure.ADC_Mode = ADC_Mode_Independent; //ADC工作模式:ADC1和ADC2工作在独立模式
ADC_InitStructure.ADC_ScanConvMode = DISABLE; //模数转换工作在扫描模式ENABLE
ADC_InitStructure.ADC_ContinuousConvMode = DISABLE; //模数转换工作在连续转换模式ENABLE
ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None; //外部触发转换关闭
ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right; //ADC数据右对齐
ADC_InitStructure.ADC_NbrOfChannel = ADC_M; //顺序进行规则转换的ADC通道的数目
ADC_Init(ADC1 &ADC_InitStructure); //根据ADC_InitStruct中指定的参数初始化外设ADCx的寄存器

/* ADC1 regular channel11 configuration */
//设置指定ADC的规则组通道,设置它们的转化顺序和采样时间
//ADC1ADC通道x规则采样顺序值为y采样时间为239.5周期
// ADC_RegularChannelConfig(ADC1 ADC_Channel_1 1 ADC_SampleTime_239Cycles5 ); //channel1
// ADC_RegularChannelConfig(ADC1 ADC_Channel_2 2 ADC_SampleTime_239Cycles5 ); //channel2

// 开启ADC的DMA支持(要实现DMA功能,还需独立配置DMA通道等参数)
// ADC_DMACmd(ADC1 ENABLE);

/* Enable ADC1 */
ADC_Cmd(ADC1 ENABLE);    //使能指定的ADC1
/* Enable ADC1 reset calibaration register */   
ADC_ResetCalibration(ADC1);   //复位指定的ADC1的校准寄存器
/* Check the end of ADC1 reset calibration register */
while(ADC_GetResetCalibrationStatus(ADC1)); //获取ADC1复位校准寄存器的状态设置状态则等待

/* Start ADC1 calibaration */
ADC_StartCalibration(ADC1); //开始指定ADC1的校准状态
/* Check the end of ADC1 calibration */
while(ADC_GetCalibrationStatus(ADC1)); //获取指定ADC1的校准程序设置状态则等待

//ADC_Cmd(ADC1 DISABLE );    //禁止指定的ADC1

}

/*-----------------------------------------------------------
/ 函数名称 : void DMA_Configuration(void)
/ 函数功能 : 配置DMA
/ 传    参 : 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        904  2017-06-29 10:27  HeatingRefrigeraPrj-OK\@STM32F103工程模板

     文件        904  2017-06-29 10:27  HeatingRefrigeraPrj-OK\@工程改名方法.txt

     文件      10245  2017-06-29 10:27  HeatingRefrigeraPrj-OK\ADC\ADC.c

     文件        422  2017-06-29 10:27  HeatingRefrigeraPrj-OK\ADC\ADC.h

     文件       3749  2017-06-29 10:27  HeatingRefrigeraPrj-OK\CAN1\CAN1_Init.c

     文件        128  2017-06-29 10:27  HeatingRefrigeraPrj-OK\CAN1\CAN1_Init_Pub.h

     文件       1973  2017-06-29 10:27  HeatingRefrigeraPrj-OK\CAN1\CAN1_Rece.c

     文件        419  2017-06-29 10:27  HeatingRefrigeraPrj-OK\CAN1\CAN1_Rece_Pte.h

     文件        162  2017-06-29 10:27  HeatingRefrigeraPrj-OK\CAN1\CAN1_Rece_Pub.h

     文件       6298  2017-06-29 10:27  HeatingRefrigeraPrj-OK\CAN1\CAN1_Send.c

     文件        222  2017-06-29 10:27  HeatingRefrigeraPrj-OK\CAN1\CAN1_Send_Pte.h

     文件        404  2017-06-29 10:27  HeatingRefrigeraPrj-OK\CAN1\CAN1_Send_Pub.h

     文件      22999  2017-06-29 10:27  HeatingRefrigeraPrj-OK\CmdPro\CmdPro.c

     文件       1306  2017-06-29 10:27  HeatingRefrigeraPrj-OK\CmdPro\CmdPro.h

     文件       1213  2017-06-29 10:27  HeatingRefrigeraPrj-OK\DebugCmd\DebugCmd.c

     文件        485  2017-06-29 10:27  HeatingRefrigeraPrj-OK\DebugCmd\DebugCmd.h

     文件       6956  2017-06-29 10:27  HeatingRefrigeraPrj-OK\DebugConfig\STM32F103C8T6_STM32F103C8.dbgconf

     文件       6956  2017-06-29 10:27  HeatingRefrigeraPrj-OK\DebugConfig\Target_1_STM32F103C8.dbgconf

     文件       1377  2017-06-29 10:27  HeatingRefrigeraPrj-OK\Delay\Delay.c

     文件        346  2017-06-29 10:27  HeatingRefrigeraPrj-OK\Delay\Delay_Pub.h

     文件       3144  2017-06-29 10:27  HeatingRefrigeraPrj-OK\GPIO\GPIO.c

     文件       1928  2017-06-29 10:27  HeatingRefrigeraPrj-OK\GPIO\GPIO.h

     文件       4082  2017-06-29 10:27  HeatingRefrigeraPrj-OK\Heating\Cooling.c

     文件       7280  2017-06-29 10:27  HeatingRefrigeraPrj-OK\Heating\Heating.c

     文件       1274  2017-06-29 10:27  HeatingRefrigeraPrj-OK\Heating\Heating.h

    .......     79126  2017-07-28 16:51  HeatingRefrigeraPrj-OK\HeatingRefrigeraPrj.uvguix.Administrator

     文件     181498  2017-06-29 10:27  HeatingRefrigeraPrj-OK\HeatingRefrigeraPrj.uvguix.ZPF

     文件      33047  2017-07-15 13:24  HeatingRefrigeraPrj-OK\HeatingRefrigeraPrj.uvoptx

     文件      32428  2017-07-15 13:24  HeatingRefrigeraPrj-OK\HeatingRefrigeraPrj.uvprojx

     文件      29872  2017-06-29 10:27  HeatingRefrigeraPrj-OK\JlinkLog.txt

............此处省略144个文件信息

评论

共有 条评论