资源简介
AD7616定时采集16通道的数据,并通过串口发送16通道数据

代码片段和文件信息
#include “ad7616.h“
u8 AD_RD = 1;
u16 AD_DATA[2]; //AD CODE
u16 ad_f[18];
/**********************************************************
** 函数名:void ad7616_init()
** 功能描述: AD初始化
** 输入参数: 无
** 输出参数: 无
** 备 注:配置控制端口,并设初值
端口名称 端口号 初值 锁定
RESET PG9 1 0
SEQEN PG8 0 1
SER/PAR PG7 0 1
WR PG6 1 0
RD PG5 1 0
CS PG4 1 0
CHSEL0/1/2 PG3/2/1 0/0/0 1/1/1
CONVST PG0 0 0
十六进制 0x270 0x18E
***********************************************************/
void ad7616_init()
{
/*打开GPIOG的时钟0000 0000 0001 0000 0000 第3位开始为GPIOA*/
RCC->APB2ENR |= 1<<8;
/* 设置GPIOG的为推挽输出 */
GPIOG->CRL &= 0x00000000;
GPIOG->CRH &= 0xFFFFFFF0;
GPIOG->CRL |= 0x22222222;
GPIOG->CRH |= 0x00000002;
/* 初始化为Io口 */
GPIOG->ODR &= 0xF000;
GPIOG->ODR |= 0x0270;
delay_us(2);
/*锁定端口设置*/
GPIOG->LCKR |= 0x018E;
delay_ms(10);
}
/**********************************************************
** 函数名:void RESET_All()
** 功能描述: AD复位函数
** 输入参数: 无
** 输出参数: 无
** 备 注:无
***********************************************************/
void RESET_All()
{
delay_ms(1);
/* PG9置0*/
GPIOG->ODR &= 0xFDFF;
delay_us(4);
/* PG9置1*/
GPIOG->ODR |= 0x0200;
delay_ms(18);
}
void RESET_Por()
{
u8 i=10;
/* PG9置0*/
GPIOG->ODR &= 0xFDFF;
do
{
}while(i--);
/* PG9置1*/
GPIOG->ODR |= 0x0200;
delay_ms(16);
}
/**********************************************************
** 函数名:void AD_Write(u16 CH)
** 功能描述: AD写数据
** 输入参数: 需要写入的数据
** 输出参数: 无
** 备 注:CS (PG4) WR(PG6)置0
***********************************************************/
void AD_Write(u16 CH)
{
GPIOD_Out_Init();
GPIOD->ODR |= CH;
GPIOG->ODR &= ~(1<<4); //CS (PG4)置0
;
GPIOG->ODR &= ~(1<<6); //WR (PG6)置0
;;
GPIOG->ODR |= 1<<6; //WR (PG6)置1
;
GPIOG->ODR |= 1<<4; //CS (PG4)置1
GPIOD->ODR &= 0x0000;
}
/**********************************************************
** 函数名:void AD_Read(void)
** 功能描述: 从AD读取数据
** 输入参数: 无
** 输出参数: 读取的数据写至AD_DATA中
** 备 注:CS (PG4) RD(PG5)置0
***********************************************************/
void AD_Read(void)
{
GPIOG->ODR &= ~(1<<4); //CS (PG4)置0
;
GPIOG->ODR &= ~(1<<5); //RD (PG5)置0 第一次读取
;
AD_DATA[0]=GPIOD->IDR;
GPIOG->ODR |= 1<<5; //RD (PG5)置1
;
GPIOG->ODR |= 1<<4; //CS (PG4)置1
GPIOG->ODR &= ~(1<<4); //CS (PG4)置0 第二次读取
;
GPIOG->ODR &= ~(1<<5); //RD (PG5)置0
;
AD_DATA[1]=GPIOD->IDR;
GPIOG->ODR |= 1<<5; //RD (PG5)置1
;
GPIOG->ODR |= 1<<4; //CS (PG4)置1
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 6270 2018-10-14 23:56 简单数据采集卡\简单数据采集卡\App\ad7616\ad7616.c
文件 154 2018-10-15 00:12 简单数据采集卡\简单数据采集卡\App\ad7616\ad7616.h
文件 1783 2017-07-20 11:03 简单数据采集卡\简单数据采集卡\App\delay\delay.c
文件 215 2017-02-23 11:31 简单数据采集卡\简单数据采集卡\App\delay\delay.h
文件 2357 2018-10-14 21:15 简单数据采集卡\简单数据采集卡\App\DMA\dma.c
文件 761 2018-10-14 21:17 简单数据采集卡\简单数据采集卡\App\DMA\dma.h
文件 1173 2018-10-07 23:20 简单数据采集卡\简单数据采集卡\App\exti\exti.c
文件 123 2018-10-07 21:14 简单数据采集卡\简单数据采集卡\App\exti\exti.h
文件 561 2018-10-08 18:13 简单数据采集卡\简单数据采集卡\App\GPIO\GPIO_Init.c
文件 152 2018-10-08 18:07 简单数据采集卡\简单数据采集卡\App\GPIO\GPIO_Init.h
文件 2294 2018-10-07 23:34 简单数据采集卡\简单数据采集卡\App\nvic\nvic.c
文件 120 2017-07-20 15:52 简单数据采集卡\简单数据采集卡\App\nvic\nvic.h
文件 3156 2017-07-24 11:27 简单数据采集卡\简单数据采集卡\App\pwm\pwm.c
文件 272 2017-07-23 17:15 简单数据采集卡\简单数据采集卡\App\pwm\pwm.h
文件 1516 2016-12-24 13:24 简单数据采集卡\简单数据采集卡\App\sysclk\sysclk.c
文件 116 2016-12-23 22:39 简单数据采集卡\简单数据采集卡\App\sysclk\sysclk.h
文件 670 2018-10-07 23:05 简单数据采集卡\简单数据采集卡\App\TIM\tim.c
文件 116 2018-10-07 22:43 简单数据采集卡\简单数据采集卡\App\TIM\tim.h
文件 6358 2018-10-14 22:43 简单数据采集卡\简单数据采集卡\App\usart\usart.c
文件 438 2017-07-19 16:49 简单数据采集卡\简单数据采集卡\App\usart\usart.h
文件 0 2017-07-20 09:13 简单数据采集卡\简单数据采集卡\Doc\readme.txt
文件 399 2011-05-09 18:17 简单数据采集卡\简单数据采集卡\keilkill.bat
文件 17273 2010-06-07 10:25 简单数据采集卡\简单数据采集卡\Libraries\CMSIS\core_cm3.c
文件 85714 2011-02-09 14:59 简单数据采集卡\简单数据采集卡\Libraries\CMSIS\core_cm3.h
文件 15766 2011-03-10 10:52 简单数据采集卡\简单数据采集卡\Libraries\CMSIS\startup\startup_stm32f10x_cl.s
文件 15503 2011-03-10 10:52 简单数据采集卡\简单数据采集卡\Libraries\CMSIS\startup\startup_stm32f10x_hd.s
文件 15692 2011-03-10 10:52 简单数据采集卡\简单数据采集卡\Libraries\CMSIS\startup\startup_stm32f10x_hd_vl.s
文件 12376 2011-03-10 10:52 简单数据采集卡\简单数据采集卡\Libraries\CMSIS\startup\startup_stm32f10x_ld.s
文件 13656 2011-03-10 10:52 简单数据采集卡\简单数据采集卡\Libraries\CMSIS\startup\startup_stm32f10x_ld_vl.s
文件 12765 2011-03-10 10:52 简单数据采集卡\简单数据采集卡\Libraries\CMSIS\startup\startup_stm32f10x_md.s
............此处省略188个文件信息
相关资源
- I2C读写AT24C02 基于STM32F103 cube116540
- 基于stm32f103ve的程序——跑马灯实验
- STM32f103超声波模块例程
- stm32f103c8t6 4 oled.rar
- STM32F103 串口程序(完整版)
- STM32F103定时器中断程序
- [免费]基于stm32f103ze 的OLED驱动代码
- STM32F103RBT6驱动UC1698控制芯片的160160黑
- STM32F103 DS18B20 V3.5.0固件库驱动程序工
- STM32F103 CC2500完整驱动(模拟SPI)
- SX1280.rar
- STM32F103C8T6+NRF24l01无线通信
- VS1053B编解码器的VDR分布式声音采集卡
- stm32f103.SchDoc
- STM32F103 USART+DMA
- stm32f105-usart-DMA收发demo
- 基于STM32F103C8单片机的晶联讯电子JL
- STM32F103实现OV7670摄像头显示
- STM32F103VCT6TR - High-density performance lin
- stm32f103 虚拟U盘,调试成功的
- 基于stm32F103vct6的SD卡FATFS文件系统移植
- STM32F103启动文件HD;MD
- STM32 自带内部FLASH 读写
- 基于STM32F103的实时时钟程序,采用D
- STM32F103系列PWM输出应用之纸短情长音
- STM32F103移植FreeModbus实现modbus主机.zi
- 基于STM32F103C8T6的循迹避障小车完成
- STM32F1单片机MPU6050加速度计陀螺仪驱动
- STM32F1单片机MS5611高精度气压计驱动工
- 基于STM32+TM1638芯片的共阳极数码管驱
评论
共有 条评论